---
id: get-webhook-payload-content-types
title: "List all webhook content types"
description: "This endpoint lists the payload content types that a webhook can use. Use one of these values in the `contentType` field when you create or update a webhook. The server posts the payload as a JSON body for `application/json`. For `application/x-www-form-urlencoded`, the server makes a string of the payload and posts it as a form under the `payload` key. Note the capital `C` in the `ContentTypes` response field. The order of the values changes between calls."
sidebar_label: "List all webhook content types"
hide_title: true
hide_table_of_contents: true
api: eJztVttu2zgQ/ZUBn1pAlt1s98Uoik3TC9IWbYGk6EMQQGNpLLGhSJak7KiG3/ZL9tP2SxZD0fcUi2Lfin1JZJIzc3jmcrgSFVlHJQaqxHSOylMmKvKlkzZIo8VUXDfSA+nKGqkDKOmDh9AQWOyVwQpKowPpAKG3xDsYAGFJs8aYOyhRQ+cph8+ewGgCM2djT7BA1ZEHqaOzInm57i0VMJekKlg2pKE3HZSOMBAYB52t+GvrP4frhsCTW5ADa46hoQeEt1cfP8DMVD3MjYMCrVWyRL7c+Ks3usjh9fH6/Wi5XI7mxrWjzinSpamoKrLoOwVr8Y7Yuw9O6jpdaxdYVwmODAMKdgadrsgN900nC7ijPocPJlBcL9HKgAqKi2JLzcWOGl+AI2+N9jSQNBBgHPtNGBKxZYO6Jg8zCksiDSUq5XORCWPJxWteVmIqagpfBi4/DYj2o4lMbMJ5MV2Js8mE/6Vc8ecxm7zmy4Za5C/rOFiQg/WB5+nqpMx+sqREJugeW6tITG9OgWTiXzMqbjMhA7UPoDl/EEuMqbv2vwRkP2IqhroR6+0COoe9WK+Z8m+ddNyPN4ec7azN7CuVQaz5+CHwj+9EJhrCihxfiw88nTz5qaztxyfnjLswFfHN+fvlXrQTPNlRxnfW09XmqNSBanL72Xs6mawfcL+zSWTtmYgXWIHUtgtg0WFLgRzTcUrIZ41daIyT36k6oeb3nyzoX4uaSx3IaVSbmRbDHHG0zoSnsnMy9GJ6sxLnVr4j/rxdZyvxgtCRO+9CE1f41lh7ZicNFSaipdCYNGuYB+TTYlwaPZf1OLW1H6eGG6dkjEKaQAM4H6Mf4n9JrUnYRSY6p8RUNCFYPx2PK2rNCK3MZe1Qh1ya8eJMMOZDH1cBax7gP3Djh+0HPN3uiLni+hjSuqFnmx8cFjIhOdrArMiExpZ3z1NpxnoTx/k5/3TJ8gBcwKRDKsth5Mcpvxn5xYGfAoYw0HY+wIzAOprLe6pgKUMDxYARCnikN7ITHEoVabBY0uMMKK/zI7dTSIbPetM5ZmR0R/3zIuchtl8IKzGLv14b12IQU/H2y/Xp3cqSvIdg7kiDRe838AZPCTNr4AEI2DIYm5I5HIKJbcNx6uIclXpuNt2NZexualFyen1nrXHhj21KdymRb3ZLh7WwO3zSSVsjePT3n389BsmSf7WkSvoGKgwIdD8IcnwaLMjJeUpnrDxZcpbMQlbkcrgMLHAePKn5yJsFOZK1BllxEYQ+S/Y4U8Rvo7iMymeAUMk6vh+WqBSFGMwbJfk1UkGgstFGmVqSz4A0zmLOETQtQdGCFBcUT6E4qnAmlQx9dIJdMC0GPl6a1iqJuqQhYfF6jupOxfvEJx3CvFOKK7eSIeJsUWtyLKBKlqR9nHubLrBYNgRn+eSE8+VymWPczo2rx8nWj99fXrz6cPVqxDasoTKog+QB905lyq4lHTbdxWNkyNfZ5Oxp/lv+hG35ndai3sPzXvoAqNTuybH/Hjku5T35+P+t/Iu9ldNICXQfxlah1FwwsUJXScduxKBjIhMbJYsaFxGLTByq2W0mGuMDm61WM/T02an1mpe/deSirGZigS729iCyG81g+btjaYmj07KSRvRRY47eLOt91X3ziqcvptG8k6W7KEvpg71vtnS/5/tYoQYI/Je19EGTZ9x776h/vj0+7PzQYDvTh9PM8u16vf4HJKskgA==
sidebar_class_name: "get api-method"
info_path: docs/consent-management-admin-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"}>List all webhook content types</h1>

<MethodEndpoint method={"get"} path={"/config/webhooks/payload/content-types"}></MethodEndpoint>



This endpoint lists the payload content types that a webhook can use. Use one of these values in the `contentType` field when you create or update a webhook. The server posts the payload as a JSON body for `application/json`. For `application/x-www-form-urlencoded`, the server makes a string of the payload and posts it as a form under the `payload` key. Note the capital `C` in the `ContentTypes` response field. The order of the values changes between calls.

<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><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={"ContentTypes"} required={true} schemaName={"string[]"} qualifierMessage={"**Possible values:** [`application/json`, `application/x-www-form-urlencoded`]"} schema={{"description":"The payload content types that a webhook can use.","example":["application/json","application/x-www-form-urlencoded"],"items":{"description":"A payload content type.","enum":["application/json","application/x-www-form-urlencoded"],"type":"string"},"type":"array"}}></SchemaItem></ul></details></TabItem><TabItem label={"Example (from schema)"} value={"Example (from schema)"}><ResponseSamples responseExample={"{\n  \"ContentTypes\": [\n    \"application/json\",\n    \"application/x-www-form-urlencoded\"\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>
      