Contact Us

If you still have questions or prefer to get help directly from an agent, please submit a request.
We’ll get back to you as soon as possible.

Please fill out the contact form below and we will reply as soon as possible.

  • Contact Us
  • Home
  • CDMS
  • Castor CDMS Manual
  • Link Castor to another application

Castor EDC/CDMS API Rate Limiting

Contact Us

If you still have questions or prefer to get help directly from an agent, please submit a request.
We’ll get back to you as soon as possible.

Please fill out the contact form below and we will reply as soon as possible.

  • CDMS
    Castor CDMS Manual Castor CDMS Calculations Manual Frequently Asked Questions Articles for Data Managers Castor CDMS Compliance Release Documents
  • eConsent
    Castor eConsent Manual Castor eConsent Compliance Release Documents
  • SMS
    Castor SMS Manual Castor SMS Compliance Release Documents
  • Castor Connect
    Castor Connect Compliance Release Documents Castor Connect Manual Castor Connect - Participant Quick Start Guide
  • Helpdesk
    News Other Resources Castor products knowledge resources
  • Status page
  • Completing a Study
+ More

Table of Contents

A request only returns X results per page. What are my options for retrieving larger datasets if the number of requests are limited?undefined

With the 2022.4 release we set the limits for all of the endpoints to 600 calls per 10 minutes for CDMS API. In the upcoming release (2022.5) we will start to enforce them. 

Questions

What exactly is covered by a data request? We request the entire study per endpoint. Is that 1 request (per endpoint), or is it the number of pages within the request?

It is the number of pages in the request. So when sending a request to an endpoint, that will count as 1 request. When getting the next page, will be another request. So if there are, for example, 10 pages, that will count as 10 requests.

What are the consequences if you go over the rate limit? What response do we get back? For example error message, delayed response?

When the rate limit is exceeded, an error response will be returned, with a 429 status code. The response headers will also contain information about the rate limit, e.g the time until the next request can be made. Every request to the API (even when the rate limit is not exceeded) will contain information about the rate limit, e.g. the number of requests remaining before the limit is reached, the amount of time left before for the current limit etc. So when the rate limit is reached and the error response is shown, the user will just need to wait for the amount of time specified in the response header before continuing with the API calls.

How are the 10 minutes calculated exactly?

It is currently a fixed window policy, which means x amount of api calls within a fixed 10 minute window. If the first request happens at 09:00, then the rate is set until 09:10. So if all the API requests are used up in the first 1 minute, the user must wait 9 minutes for the next request. 

A request only returns X results per page. What are my options for retrieving larger datasets if the number of requests are limited?

page_size can be passed by the client as a parameter to increase the amount of results per page like so
/api/study/{{study_id}}/data-points/study?page_size=1000

A max_page_size is configured for each endpoint, and requesting a page_size larger than it will return an informative error:
Page size is out of range, maximum page size is 5000

How are the rates tracked/grouped? For example per study, per IP address, per user account?

It is per user, per endpoint. For example, if a rate limit is set to 600 requests for /api/study, then every user can send 600 requests in 10 minutes to that specific endpoint. But that limit won't count towards the limit for other endpoints for the same user.

database integration api limiting

Was this article helpful?

Yes
No
Give feedback about this article

Related Articles

  • Using the Castor API R package for data analysis
  • Enable importing EHR data for your study in Castor EDC/CDMS
  • Import data from electronic health records (EHR) in EDC/CDMS
  • Castor EDC/CDMS Application Programming Interface (API)
ISO 27001
FDA - 21 CFR part 11
ICH GCP compliant
HIPAA compliant
CDISC
ISO 9001
gdpr compliant

Products & Industries

  • Electronic Data Capture (EDC)
  • ePRO
  • eConsent
  • Decentralized Clinical Trials (DCT)
  • Clinical Data Management
  • Medical Device & Diagnostics
  • Biotech & Pharma
  • CROs
  • Academic Research

Resources

  • Thought Leadership
  • Blog
  • Castor Academy
  • Knowledge Base

 

Company

  • About Us
  • Careers
  • News
  • Contact Support
  • Contact Us

Legal & Compliance

  • Terms of Use
  • Privacy & Cookie Statement
  • Responsible Disclosure Policy
  • Good Clinical Practice (GCP)
  • ISO Compliance Certificates
  • GDPR & HIPAA Compliance
  • Security Statement

© 2022, Castor. All Rights Reserved.

Follow us on social media


Knowledge Base Software powered by Helpjuice

Definition by Author

0
0
Expand