Skip to Content

OData limitations

Hello all, I have multiple questions concerning OData limitations :

- I understood that there is no limitation for the length of OData URL, but only in client and server sides. Is that true? Does it concern both requests and batch requests?

- For batchrequests, is there any limits in term of queries number?

- What is the lifetime of a security token (X-CSRF-token) ? There is conflicting information about this subject on forums

- Is there a queue system when sending OData requests to ByDesign ?

- As a last matter, I was wondering if there is a way to use batchrequests with OData for Reporting Analytic ? I specifically need a way to get around the mandatory POST header for the batchrequest

Thanks in advance for you help

Regards,

Ismaïl

Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

2 Answers

  • Best Answer
    Mar 16 at 01:39 PM

    Hi Ismail,

    There is no limitation of the length of OData URLs in ByD, but some clients limit the length to 2k. Therefore the recommendation would be to keep URLs within this limit of 2k.

    There is no limit of the number of batch requests, but every http-request is subject to a timeout of 600 sec.

    The lifetime of security tokens (x-csrf-token) depends on the system settings, typically 3600s. If the system rejects the token, simply refresh it, e.g. using the URL to get the collections https://myXXXXXX.sapbydesign.com/sap/byd/odata/cust/v1/{{your service name}}/ with header parameter x-csrf-token = fetch.

    There is no queuing of incoming OData requests in ByD. Every request is a stateless.

    Best regards,
    Knut

    Add comment
    10|10000 characters needed characters exceeded

  • Mar 14 at 06:17 AM

    Hi,

    Below are my views over the interesting questions you have asked above:

    Q.What is the lifetime of a security token (X-CSRF-token) ?

    Answer:

    -In general, We need only generate this token once for the current session. After initial generation of this token, the value is stored in the session and is utilized for each subsequent request until the session expires.

    -CSRF adds additional information to your requests that lets the server verify the requests comes from an authorized location.

    -It only affects requests where the authorization info is sent automatically by the browser (cookie auth or basic/digest scheme). ---------------------------------------------------------------------------------

    Q.For batchrequests, is there any limits in term of queries number?

    Answers: There is a parameter in OData "Content-Length",

    Content-Length: 1021 (This length must be equal to or greater than the real length of the data passed in a CRUD request)

    Best of luck :-) ,

    Pavan Golesar

    Add comment
    10|10000 characters needed characters exceeded

    • Hi Pavan,

      Thank you for the answers.

      - Your first response is the one I was looking for, thank you.

      - Concerning your second one, I'm aware of the Content-Lenght parameter, my question was if there is a maximum value for this parameter. For example, if my batch request is 100000 characters (Content-Lenght=100000), would it work?

      Also, if my batchrequest contains 10000 CRUD requests, would it work? or there is a maximum number of requests to send in a shot?

      Thanks a lot for your help.

      Ismaïl