Throttling

Some plugins call external providers that embedded API limitations. Because some plugins have trouble handling errors when limits are reached, we may want to reduce plugin calls before reaching those limits.

Using Throttlings, you can limit usage of a given plugin version, in 3 different ways :

  • Rate limit : you can limit the number of calls by second, by using max_qps field.

  • Concurrency : you can limit the number of simultaneous calls, by using max_concurrency field.

  • Timeout : you can define a maximum duration for the calls, by using timeout_qps field.

You have to define at least one of those restrictions.

Throttling can be defined at 4 different levels :

  • GLOBAL

  • CONTAINER

  • ORGANISATION

  • DATAMART

You can define a Throttling using this route :

Create a throttling

POST https://api.mediarithmics.com/v1/plugins/:plugin_id/versions/:version_id/throttlings

Request Body

{
    // Response
}

You can list, delete or update Throttlings by using thoses routes :

Get throttlings for the Plugin Version

GET https://api.mediarithmics.com/v1/plugins/:plugin_id/versions/:version_id/throttlings

{
    // Response
}

Delete a throttling

DELETE https://api.mediarithmics.com/v1/plugins/:plugin_id/versions/:version_id/throttlings/:throttling_id

{
    // Response
}

Update a throttling

PUT https://api.mediarithmics.com/v1/plugins/:plugin_id/versions/:version_id/throttlings/:throttling_id

Request Body

{
    // Response
}

Last updated