{"_id":"57e400518e37b01700eb6cdf","project":"55d2023b3c74062300aee506","initVersion":{"_id":"57dadb72b103490e006dd682","version":"1.3"},"user":{"_id":"55d201fe945e481700afbb19","username":"","name":"Abhik Pramanik"},"__v":1,"createdAt":"2016-09-22T16:01:21.359Z","changelog":[{"_id":"57e400518e37b01700eb6ce1","update":"[Retrieve Rate Limits](doc:retrieve-rate-limits)","type":"added"},{"_id":"57e400518e37b01700eb6ce0","update":"`rate_limit` attribute to JSON body of 429 error response; value is rate limit hit as [Rate Limit Object](doc:the-rate-limit-object)","type":"added"},{"_id":"57e4026082fe992200aaa2e8","update":"","type":"added"}],"body":"[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/9127e73-ezgif-3830625610.gif\",\n        \"ezgif-3830625610.gif\",\n        464,\n        261,\n        \"#536046\"\n      ],\n      \"caption\": \"How rate limits used to feel. (Giphy.com)\",\n      \"sizing\": \"smart\"\n    }\n  ]\n}\n[/block]\n\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/fb866e2-giphy_1.gif\",\n        \"giphy (1).gif\",\n        464,\n        238,\n        \"#40513f\"\n      ],\n      \"caption\": \"How rate limits feel now. (Giphy.com)\"\n    }\n  ]\n}\n[/block]\nIt's officially the first day of fall and football season is a couple games in which means we can use tackling gifs to explain our latest feature in the PlanGrid API: transparent rate limiting. Humor aside, the PlanGrid API has rate limits on the number of requests a client application can perform to ensure quality of service for all other client applications. Without rate limits, a faulty, greedy, or malicious client application could [DDOS](https://en.wikipedia.org/wiki/Denial-of-service_attack) our system and degrade service for all users of the PlanGrid API and apps. However, our rate limits were just defined in documentation (who reads that?) and the feedback we got from developers was it was hard to understand what rate limit you hit and when it would reset. \n\nWith this update we want to give you that and even let you programmatically retry a rate limited request at the exact moment the rate limit resets: \n- [Retrieve Rate Limits](doc:retrieve-rate-limits) lets you see what rate limits are being applied to your API key and how much you've filled them.\n- Every rate limit error now returns a [Rate Limit Object](doc:the-rate-limit-object) that gives you information on when to retry the request.\n\nYou can read more about it in [Rate Limiting](doc:rate-limiting). Let us know how you like it!","slug":"130","title":"1.3.0: Transparent Rate Limiting"}

1.3.0: Transparent Rate Limiting


[block:image] { "images": [ { "image": [ "https://files.readme.io/9127e73-ezgif-3830625610.gif", "ezgif-3830625610.gif", 464, 261, "#536046" ], "caption": "How rate limits used to feel. (Giphy.com)", "sizing": "smart" } ] } [/block] [block:image] { "images": [ { "image": [ "https://files.readme.io/fb866e2-giphy_1.gif", "giphy (1).gif", 464, 238, "#40513f" ], "caption": "How rate limits feel now. (Giphy.com)" } ] } [/block] It's officially the first day of fall and football season is a couple games in which means we can use tackling gifs to explain our latest feature in the PlanGrid API: transparent rate limiting. Humor aside, the PlanGrid API has rate limits on the number of requests a client application can perform to ensure quality of service for all other client applications. Without rate limits, a faulty, greedy, or malicious client application could [DDOS](https://en.wikipedia.org/wiki/Denial-of-service_attack) our system and degrade service for all users of the PlanGrid API and apps. However, our rate limits were just defined in documentation (who reads that?) and the feedback we got from developers was it was hard to understand what rate limit you hit and when it would reset. With this update we want to give you that and even let you programmatically retry a rate limited request at the exact moment the rate limit resets: - [Retrieve Rate Limits](doc:retrieve-rate-limits) lets you see what rate limits are being applied to your API key and how much you've filled them. - Every rate limit error now returns a [Rate Limit Object](doc:the-rate-limit-object) that gives you information on when to retry the request. You can read more about it in [Rate Limiting](doc:rate-limiting). Let us know how you like it!
added
[Retrieve Rate Limits](doc:retrieve-rate-limits)
added
`rate_limit` attribute to JSON body of 429 error response; value is rate limit hit as [Rate Limit Object](doc:the-rate-limit-object)