Skip to content

Commit

Permalink
add best practices section and 429 recommendations
Browse files Browse the repository at this point in the history
  • Loading branch information
alex-dzeda committed Apr 3, 2024
1 parent 84c6bba commit 01f86bb
Show file tree
Hide file tree
Showing 3 changed files with 53 additions and 0 deletions.
7 changes: 7 additions & 0 deletions _includes/build/best_practices.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
<div>
<p>
There are many ways to accomplish the same objective within BCDA, and following our list of best practices can ensure optimal performance for all consumers of BCDA.
</p>

</div>

15 changes: 15 additions & 0 deletions _includes/build/best_practices_429.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@

<div>
<p>Occasionally, when interacting with BCDA, you might encounter responses with a status code of <code>429 Too Many Requests</code>. This can happen for two main reasons:</p>

<p>BCDA assigns 429 response codes based on two independent criteria:</p>

<ol>
<li>Making too many HTTP requests in a period of time.</li>
<li>Attempting to create duplicate jobs.</li>
</ol>

<p>Regardless of the reason, BCDA will include a <strong>Retry-After</strong> header in its response. It's considered best practice to wait until the period specified in this header has elapsed before making further requests. This ensures your client can adapt without manual intervention, even if the rate-limiting parameters change.</p>

<p>Concerning duplicate jobs, BCDA defines them as attempts to recreate a job already marked as "In-Progress". For reference, you can view both existing and past jobs by accessing the job history endpoint at <code>/jobs</code>.</p>
</div>
31 changes: 31 additions & 0 deletions build.html
Original file line number Diff line number Diff line change
Expand Up @@ -116,6 +116,20 @@
</li>
</ul>
</li>


<li class="ds-c-vertical-nav__item">
<a class="ds-c-vertical-nav__label ds-c-vertical-nav__label" href="#bulk-best-practices">
Best Practices
</a>
<ul class="ds-c-vertical-nav__subnav">
<li class="ds-c-vertical-nav__subnav">
<a class="ds-c-vertical-nav__label ds-c-vertical-nav__label" href="#handling-429-error">
Handling 429 status codes
</a>
</li>
</ul>
</li>
</ul>
</aside>
<!-- Table of Contents END -->
Expand Down Expand Up @@ -266,6 +280,23 @@ <h2>
</div>
</div>
</div>

<div id="bulk-best-practices" class="guide-content">
<h1>
Best Practices for Utilizing BCDA
</h1>
<div class="ds-u-font-size--base ">
{% include build/best_practices.html %}
</div>
<div id="handling-429-error">
<h2>
Handling 429 status codes
</h2>
<div class="ds-u-font-size--base">
{% include build/best_practices_429.html %}
</div>
</div>
</div>
</main>
</div>
</div>

0 comments on commit 01f86bb

Please sign in to comment.