# API uses a POST call as a GET because the JSON query is too long; how to configure with call template

**URL:** <https://community.novulo.com/t/api-uses-a-post-call-as-a-get-because-the-json-query-is-too-long-how-to-configure-with-call-template/958>\
**Category:** \[Q&A\] General\
**Created:** [July 10, 2026, 9:59am UTC](https://community.novulo.com/t/api-uses-a-post-call-as-a-get-because-the-json-query-is-too-long-how-to-configure-with-call-template/958 "2026-07-10T09:59:47Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![Helen.Cao](https://avatars.discourse-cdn.com/v4/letter/h/ccd318/32.png) [@Helen.Cao](https://community.novulo.com/u/Helen.Cao)\
**Post date:** [July 10, 2026, 9:59am UTC](https://community.novulo.com/t/api-uses-a-post-call-as-a-get-because-the-json-query-is-too-long-how-to-configure-with-call-template/958/1 "2026-07-10T09:59:48Z")

</div>

Hi all,

I am currently trying to configure an API in the shape of a call template as a first test. However, even though the request is a GET, the API developers chose to configure it as a POST because the URL gets too long if the query is written as a GET.

This means the API uses a body to send a query and to return the results.

In this context, what I would like to do is POST the BvDID (the ORBIS equivalent of KvK) to the ‘where’ query to GET the ‘select’ data that gets produced after I send the information. I have read in another post that you can POST data using a data definition, only I do not understand how the {“WHERE”: [“”], “SELECT” [“”] } part of the JSON can be implemented. To me, it seems like I can only POST the contents of the ‘where’ using the data definition.

So my question is: how can I send along the whole query in the JSON using a call template?

---

<div class="post-metadata">

**Author:** ![Joeri](https://yyz2.discourse-cdn.com/flex008/user_avatar/community.novulo.com/joeri/32/428_2.png) [@Joeri](https://community.novulo.com/u/Joeri)\
**Post date:** [July 13, 2026, 7:37am UTC](https://community.novulo.com/t/api-uses-a-post-call-as-a-get-because-the-json-query-is-too-long-how-to-configure-with-call-template/958/2 "2026-07-13T07:37:16Z")

</div>

I don’t quite understand what you mean with send a query in a json

You can use a data definition (incl parameters, which is optional) to build the body of the request. What context are we talking about here? Do you maybe have an example?

---

<div class="post-metadata">

**Author:** ![Helen.Cao](https://avatars.discourse-cdn.com/v4/letter/h/ccd318/32.png) [@Helen.Cao](https://community.novulo.com/u/Helen.Cao)\
**Post date:** [July 13, 2026, 9:02am UTC](https://community.novulo.com/t/api-uses-a-post-call-as-a-get-because-the-json-query-is-too-long-how-to-configure-with-call-template/958/3 "2026-07-13T09:02:23Z")

</div>

Hi Joeri,

Thank you for your reply.

The query that the API developers gave is as follows (redacted):

{

“WHERE”: [

{

“BvDID”: [

“”

]

}

],

“SELECT”: [

{

“NAME”: {

“AS”: “NAME”

}

},

{

“GRID\_MATCH\_INDICATOR”: {

“AS”: “GRID\_MATCH\_INDICATOR”

}

},

{

“GRID\_MATCH\_SANCTIONS\_INDICATOR”: {

“AS”: “GRID\_MATCH\_SANCTIONS\_INDICATOR”

}

},

{

“GRID\_MATCH\_WATCHLIST\_INDICATOR”: {

“AS”: “GRID\_MATCH\_WATCHLIST\_INDICATOR”

}

},

{

“CPYCONTACTS\_HEADER\_FirstNameOriginalLanguagePreferred”: {

“FILTERS”: [redacted]

“AS”: “CPYCONTACTS\_HEADER\_FirstNameOriginalLanguagePreferred”

}

},

{

“CPYCONTACTS\_HEADER\_LastNameOriginalLanguagePreferred”: {

“FILTERS”: [redacted]

“AS”: “CPYCONTACTS\_HEADER\_LastNameOriginalLanguagePreferred”

}

},

{

“CPYCONTACTS\_HEADER\_Gender”: {

“FILTERS”: [redacted]

“AS”: “CPYCONTACTS\_HEADER\_Gender”

}

},

{

“CPYCONTACTS\_HEADER\_Birthdate”: {

“FILTERS”: [redacted]

“AS”: “CPYCONTACTS\_HEADER\_Birthdate”

}

},

{

“CPYCONTACTS\_MEMBERSHIP\_Function”: {

“FILTERS”: [redacted]

“AS”: “CPYCONTACTS\_MEMBERSHIP\_Function”

}

},

{

“CPYCONTACTS\_HEADER\_IdDirector”: {

“FILTERS”: [redacted]

“AS”: “CPYCONTACTS\_HEADER\_IdDirector”

}

},

{

“CPYCONTACTS\_HEADER\_BvdId”: {

“FILTERS”: [redacted]

“AS”: “CPYCONTACTS\_HEADER\_BvdId”

}

},

{

“CPYCONTACTS\_HEADER\_GRID\_MATCH\_INDICATOR”: {

“FILTERS”: [redacted]

“AS”: “CPYCONTACTS\_HEADER\_GRID\_MATCH\_INDICATOR”

}

},

{

“CPYCONTACTS\_HEADER\_GRID\_MATCH\_SANCTIONS\_INDICATOR”: {

“FILTERS”: [redacted]

“AS”: “CPYCONTACTS\_HEADER\_GRID\_MATCH\_SANCTIONS\_INDICATOR”

}

},

{

“CPYCONTACTS\_HEADER\_GRID\_MATCH\_WATCHLIST\_INDICATOR”: {

“FILTERS”: [redacted]

“AS”: “CPYCONTACTS\_HEADER\_GRID\_MATCH\_WATCHLIST\_INDICATOR”

}

},

{

“BO\_NAME”: {

“FILTERS”: [redacted]

“AS”: “BO\_NAME”

}

},

{

“BO\_GRID\_MATCH\_INDICATOR\_FORMATTED”: {

“FILTERS”: [redacted]

“AS”: “BO\_GRID\_MATCH\_INDICATOR\_FORMATTED”

}

},

{

“BO\_GRID\_MATCH\_SANCTIONS\_INDICATOR\_FORMATTED”: {

“FILTERS”: [redacted]

“AS”: “BO\_GRID\_MATCH\_SANCTIONS\_INDICATOR\_FORMATTED”

}

},

{

“BO\_GRID\_MATCH\_WATCHLIST\_INDICATOR\_FORMATTED”: {

“FILTERS”: [redacted]

“AS”: “BO\_GRID\_MATCH\_WATCHLIST\_INDICATOR\_FORMATTED”

}

}

]

}

As you can see, it is already very long even with the actual filters redacted. What I want to show with this is that they use ‘where’, ‘select’ and ‘filter’ queries, and I do not know how to put that into a data definition.
