{"componentChunkName":"component---src-templates-simple-markdown-js","path":"/process-intelligence-apis/knowledge-model-api/faq/","matchPath":"","result":{"data":{"markdownRemark":{"html":"<h1 style=\"position:relative;\"><a href=\"#frequently-asked-questions-faq\" aria-label=\"frequently asked questions faq permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a><div class=\"hidden-anchor\" id=\"frequently-asked-questions-faq\"></div>Frequently Asked Questions (FAQ)</h1>\n<h2 style=\"position:relative;\"><a href=\"#requests-to-the-ai-api-are-blocked-by-the-browser-cors-policy-what-do-i-do\" aria-label=\"requests to the ai api are blocked by the browser cors policy what do i do permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a><div class=\"hidden-anchor\" id=\"requests-to-the-ai-api-are-blocked-by-the-browser-cors-policy-what-do-i-do\"></div>Requests to the AI API are blocked by the browser CORS policy. What do I do?</h2>\n<p>When facing this issue, you will see a CORS error like the one below:</p>\n<div class=\"code-wrapper\">\n        <div class=\"gatsby-code-button-container\"\n             data-toaster-id=\"92763242826920170000\"\n             data-toaster-duration=\"1500\"\n             onClick=\"copyCodeToClipboard(`Access to XMLHttpRequest from origin 'http://localhost:4200' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.`, `92763242826920170000`)\"\n        >\n          <div class=\"gatsby-code-button\" title=\"Copy the code snippet\">Copy</div>\n          <div class=\"done-indicator done-indicator-92763242826920170000\">Copied</div>\n        </div>\n        <div class=\"gatsby-highlight\" data-language=\"text\"><pre class=\"language-text\"><code class=\"language-text\">Access to XMLHttpRequest from origin 'http://localhost:4200' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.</code></pre></div>\n      </div>\n<p>This error occurs when the browser is trying to make a request to a different origin (domain) than the one it's hosted\non and the server the request is being sent to is not configured to allow cross-origin requests.\nThe <code class=\"language-text\">Access-Control-Allow-Origin</code> header is used to specify which origins are allowed to access the resource. If this\nheader is not present, the browser will block the request and the error message above will be displayed.</p>\n<p>Unfortunately, for security reasons, we can't add \"localhost\" to the response 'Access-Control-Allow-Origin' HTTP header,\nso this issue must be solved from the API consumer side.</p>\n<p>To solve this problem, we recommend using a REST client instead of a web browser. This would also ease the\nprocess of setting the proper HTTP <a href=\"/process-intelligence-apis/knowledge-model-api/get-started/getting-started/#authentication\">Authorization</a> headers as part of your requests.</p>\n<h2 style=\"position:relative;\"><a href=\"#can-i-retrieve-any-knowledge-model-item-available-in-the-celonis-platform-through-the-knowledge-model-api\" aria-label=\"can i retrieve any knowledge model item available in the celonis platform through the knowledge model api permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a><div class=\"hidden-anchor\" id=\"can-i-retrieve-any-knowledge-model-item-available-in-the-celonis-platform-through-the-knowledge-model-api\"></div>Can I retrieve any Knowledge Model item available in the Celonis Platform through the Knowledge Model API?</h2>\n<p>No, you will not be able to retrieve all the Knowledge Model items available in the Celonis Platform. For reference,\nthe Knowledge Model API currently supports:</p>\n<ul>\n<li>\n<a href=\"https://docs.celonis.com/en/knowledge-model---records.html\">Records</a>\n</li>\n<li>\n<a href=\"https://docs.celonis.com/en/knowledge-model---filters.html\">Filters</a>\n</li>\n<li>\n<a href=\"https://docs.celonis.com/en/knowledge-model---calculated-attributes.html\">Calculated attributes</a>\n</li>\n<li>\n<a href=\"https://docs.celonis.com/en/creating-and-using-augmented-attributes.html\">Record-based Augmented attributes</a>\n</li>\n<li>\n<a href=\"https://docs.celonis.com/en/knowledge-model---flags--legacy-views-only-.html\">Flags</a>\n</li>\n<li>\n<a href=\"https://docs.celonis.com/en/knowledge-model---kpi.html\">KPIs</a>\n</li>\n</ul>\n<h2 style=\"position:relative;\"><a href=\"#how-do-i-retrieve-knowledge-model-kpis-through-the-api\" aria-label=\"how do i retrieve knowledge model kpis through the api permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a><div class=\"hidden-anchor\" id=\"how-do-i-retrieve-knowledge-model-kpis-through-the-api\"></div>How do I retrieve Knowledge Model KPIs through the API?</h2>\n<p>There are two ways to retrieve KPIs via the Knowledge Model API:</p>\n<ol>\n<li>\nUsing the data retrieval endpoint at the KM level (\n<code class=\"language-text\">GET intelligence/api/knowledge-models/{km-id}/data</code>\n) and the \n<code class=\"language-text\">kpis</code>\n parameter.\n</li>\n<li>\nUsing the data retrieval endpoint at the KM record level (\n<code class=\"language-text\">GET intelligence/api/knowledge-models/{km-id}/records/{record-id}/data</code>\n) when one of the record attributes is equal to a KPI and this attribute is selected using \n<code class=\"language-text\">fields</code>\n parameter.\n</li>\n</ol>\n<h2 style=\"position:relative;\"><a href=\"#is-it-possible-to-pull-data-from-multiple-knowledge-model-records-with-a-single-knowledge-model-api-call\" aria-label=\"is it possible to pull data from multiple knowledge model records with a single knowledge model api call permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a><div class=\"hidden-anchor\" id=\"is-it-possible-to-pull-data-from-multiple-knowledge-model-records-with-a-single-knowledge-model-api-call\"></div>Is it possible to pull data from multiple Knowledge Model records with a single Knowledge Model API call?</h2>\n<p>Yes, using the data retrieval endpoint at the KM level (<code class=\"language-text\">GET intelligence/api/knowledge-models/{km-id}/data</code>), you can combine attributes from different records in the <code class=\"language-text\">fields</code> parameter (using the notation <code class=\"language-text\">record-id</code>.<code class=\"language-text\">field-id</code>) along with KPIs in the <code class=\"language-text\">kpis</code> parameter.</p>\n<p>Example:</p>\n<p>Call</p>\n<div class=\"code-wrapper\">\n        <div class=\"gatsby-code-button-container\"\n             data-toaster-id=\"14542339769946655000\"\n             data-toaster-duration=\"1500\"\n             onClick=\"copyCodeToClipboard(`GET intelligence/api/knowledge-models/ocpm-procurement-starter-kit-store.ocpm-procurement-km/data?fields=O_CELONIS_VENDOR.NAME,O_CELONIS_VENDOR.COUNTRY,O_CELONIS_VENDOR.CITY,O_CELONIS_CONTRACT.ID&options=distinct&kpis=KPI_PO_ITEM_CONTRACT_USAGE_VALUE_RATE`, `14542339769946655000`)\"\n        >\n          <div class=\"gatsby-code-button\" title=\"Copy the code snippet\">Copy</div>\n          <div class=\"done-indicator done-indicator-14542339769946655000\">Copied</div>\n        </div>\n        <div class=\"gatsby-highlight\" data-language=\"text\"><pre class=\"language-text\"><code class=\"language-text\">GET intelligence/api/knowledge-models/ocpm-procurement-starter-kit-store.ocpm-procurement-km/data?fields=O_CELONIS_VENDOR.NAME,O_CELONIS_VENDOR.COUNTRY,O_CELONIS_VENDOR.CITY,O_CELONIS_CONTRACT.ID&amp;options=distinct&amp;kpis=KPI_PO_ITEM_CONTRACT_USAGE_VALUE_RATE</code></pre></div>\n      </div>\n<p>Result:</p>\n<div class=\"code-wrapper\">\n        <div class=\"gatsby-code-button-container\"\n             data-toaster-id=\"69276386178485800000\"\n             data-toaster-duration=\"1500\"\n             onClick=\"copyCodeToClipboard(`{\n   &quot;page&quot;: 0,\n   &quot;pageSize&quot;: 20,\n   &quot;total&quot;: 1,\n   &quot;sort&quot;: [],\n   &quot;content&quot;: {\n        &quot;headers&quot;: [\n            {\n                &quot;id&quot;: &quot;O_CELONIS_VENDOR.NAME&quot;,\n                &quot;name&quot;: &quot;Name&quot;,\n                &quot;type&quot;: &quot;string&quot;,\n                &quot;format&quot;: null,\n                &quot;unit&quot;: null,\n                &quot;aggregation&quot;: false,\n                &quot;filterable&quot;: true,\n                &quot;sortable&quot;: true\n            },\n            {\n                &quot;id&quot;: &quot;O_CELONIS_VENDOR.COUNTRY&quot;,\n                &quot;name&quot;: &quot;Country&quot;,\n                &quot;type&quot;: &quot;string&quot;,\n                &quot;format&quot;: null,\n                &quot;unit&quot;: null,\n                &quot;aggregation&quot;: false,\n                &quot;filterable&quot;: true,\n                &quot;sortable&quot;: true\n            },\n            {\n                &quot;id&quot;: &quot;O_CELONIS_VENDOR.CITY&quot;,\n                &quot;name&quot;: &quot;City&quot;,\n                &quot;type&quot;: &quot;string&quot;,\n                &quot;format&quot;: null,\n                &quot;unit&quot;: null,\n                &quot;aggregation&quot;: false,\n                &quot;filterable&quot;: true,\n                &quot;sortable&quot;: true\n            },\n            {\n                &quot;id&quot;: &quot;O_CELONIS_CONTRACT.ID&quot;,\n                &quot;name&quot;: &quot;Id&quot;,\n                &quot;type&quot;: &quot;string&quot;,\n                &quot;format&quot;: null,\n                &quot;unit&quot;: null,\n                &quot;aggregation&quot;: false,\n                &quot;filterable&quot;: true,\n                &quot;sortable&quot;: true\n            },\n            {\n                &quot;id&quot;: &quot;KPI_PO_ITEM_CONTRACT_USAGE_VALUE_RATE&quot;,\n                &quot;name&quot;: &quot;Contract Usage rate [%EUR]&quot;,\n                &quot;type&quot;: &quot;float&quot;,\n                &quot;format&quot;: &quot;,.1%&quot;,\n                &quot;unit&quot;: null,\n                &quot;aggregation&quot;: true,\n                &quot;filterable&quot;: false,\n                &quot;sortable&quot;: true\n            }\n        ],\n        &quot;data&quot;: [\n            {\n                &quot;O_CELONIS_VENDOR.COUNTRY&quot;: &quot;DE&quot;,\n                &quot;O_CELONIS_CONTRACT.ID&quot;: &quot;Contract_8004700114202&quot;,\n                &quot;O_CELONIS_VENDOR.NAME&quot;: &quot;ACDA TYRES&quot;,\n                &quot;KPI_PO_ITEM_CONTRACT_USAGE_VALUE_RATE&quot;: 1.0,\n                &quot;O_CELONIS_VENDOR.CITY&quot;: &quot;Bremen&quot;\n            }\n       ]\n   }\n}`, `69276386178485800000`)\"\n        >\n          <div class=\"gatsby-code-button\" title=\"Copy the code snippet\">Copy</div>\n          <div class=\"done-indicator done-indicator-69276386178485800000\">Copied</div>\n        </div>\n        <div class=\"gatsby-highlight\" data-language=\"text\"><pre class=\"language-text\"><code class=\"language-text\">{\n   \"page\": 0,\n   \"pageSize\": 20,\n   \"total\": 1,\n   \"sort\": [],\n   \"content\": {\n        \"headers\": [\n            {\n                \"id\": \"O_CELONIS_VENDOR.NAME\",\n                \"name\": \"Name\",\n                \"type\": \"string\",\n                \"format\": null,\n                \"unit\": null,\n                \"aggregation\": false,\n                \"filterable\": true,\n                \"sortable\": true\n            },\n            {\n                \"id\": \"O_CELONIS_VENDOR.COUNTRY\",\n                \"name\": \"Country\",\n                \"type\": \"string\",\n                \"format\": null,\n                \"unit\": null,\n                \"aggregation\": false,\n                \"filterable\": true,\n                \"sortable\": true\n            },\n            {\n                \"id\": \"O_CELONIS_VENDOR.CITY\",\n                \"name\": \"City\",\n                \"type\": \"string\",\n                \"format\": null,\n                \"unit\": null,\n                \"aggregation\": false,\n                \"filterable\": true,\n                \"sortable\": true\n            },\n            {\n                \"id\": \"O_CELONIS_CONTRACT.ID\",\n                \"name\": \"Id\",\n                \"type\": \"string\",\n                \"format\": null,\n                \"unit\": null,\n                \"aggregation\": false,\n                \"filterable\": true,\n                \"sortable\": true\n            },\n            {\n                \"id\": \"KPI_PO_ITEM_CONTRACT_USAGE_VALUE_RATE\",\n                \"name\": \"Contract Usage rate [%EUR]\",\n                \"type\": \"float\",\n                \"format\": \",.1%\",\n                \"unit\": null,\n                \"aggregation\": true,\n                \"filterable\": false,\n                \"sortable\": true\n            }\n        ],\n        \"data\": [\n            {\n                \"O_CELONIS_VENDOR.COUNTRY\": \"DE\",\n                \"O_CELONIS_CONTRACT.ID\": \"Contract_8004700114202\",\n                \"O_CELONIS_VENDOR.NAME\": \"ACDA TYRES\",\n                \"KPI_PO_ITEM_CONTRACT_USAGE_VALUE_RATE\": 1.0,\n                \"O_CELONIS_VENDOR.CITY\": \"Bremen\"\n            }\n       ]\n   }\n}</code></pre></div>\n      </div>","headings":[{"value":"Frequently Asked Questions (FAQ)","depth":1},{"value":"Requests to the AI API are blocked by the browser CORS policy. What do I do?","depth":2},{"value":"Can I retrieve any Knowledge Model item available in the Celonis Platform through the Knowledge Model API?","depth":2},{"value":"How do I retrieve Knowledge Model KPIs through the API?","depth":2},{"value":"Is it possible to pull data from multiple Knowledge Model records with a single Knowledge Model API call?","depth":2}]},"contentItem":{"data":{"lastModified":"2025-11-06T18:38:03.000Z","enableToc":null,"disableLastModified":null,"tocMaxDepth":null,"requestLogin":false}},"siteConfig":{"enableToc":false,"disableLastModified":false,"tocMaxDepth":4}},"pageContext":{"matchPath":"","id":"a8dd55bd-83b6-599c-969c-1290d64fcaee__redocly content/process-intelligence-apis/knowledge-model-api/faq/","seo":{"title":"Frequently Asked Questions (FAQ)","description":null,"image":"","keywords":null,"jsonLd":null,"lang":null,"siteUrl":null},"pageId":"process-intelligence-apis/knowledge-model-api/faq.md","pageBaseUrl":"/process-intelligence-apis/knowledge-model-api/faq","type":"markdown","toc":{"enable":true,"maxDepth":4,"headings":[{"depth":1,"value":"Frequently Asked Questions (FAQ)","id":"frequently-asked-questions-faq"},{"depth":2,"value":"Requests to the AI API are blocked by the browser CORS policy. What do I do?","id":"requests-to-the-ai-api-are-blocked-by-the-browser-cors-policy-what-do-i-do"},{"depth":2,"value":"Can I retrieve any Knowledge Model item available in the Celonis Platform through the Knowledge Model API?","id":"can-i-retrieve-any-knowledge-model-item-available-in-the-celonis-platform-through-the-knowledge-model-api"},{"depth":2,"value":"How do I retrieve Knowledge Model KPIs through the API?","id":"how-do-i-retrieve-knowledge-model-kpis-through-the-api"},{"depth":2,"value":"Is it possible to pull data from multiple Knowledge Model records with a single Knowledge Model API call?","id":"is-it-possible-to-pull-data-from-multiple-knowledge-model-records-with-a-single-knowledge-model-api-call"}]},"data":{"title":""},"catalogInfo":null,"link":"/process-intelligence-apis/knowledge-model-api/faq/","sidebarName":"celonis","isLanding":false,"showPrevButton":null,"showNextButton":null,"apiVersions":null,"apiVersionId":null,"isDefaultApiVersion":null}},"staticQueryHashes":["1123603147","1302185487","1344209882","1398840060","1520077861","1975142765","2667623876","2950305614","3240152602","3743992808","561138138"]}