Our Human Service Data API (HSDA) service is build in RUST and run on our own servers. Documentation for these APIs is provided via Swagger: Swagger Docs

Using Swagger, you can make API calls, try different parameters, see examples of implementation in multiple programming languages, etc.

As part of onboarding, you will have received a secure link that shares:

  1. Your unique Swagger link
  2. A username
  3. A password
  4. An API key

<aside> <img src="/icons/info-alternate_pink.svg" alt="/icons/info-alternate_pink.svg" width="40px" />

Your username and password are only for accessing Swagger documentation. Your code will only need the API key and an endpoint in order to function. The endpoints you can use are documented in swagger, however.

</aside>

How To Use Swagger

In order to access and use Swagger, you need to authenticate yourself in two steps:

  1. Go to Swagger using the link we sent you and click on “Authorize” in the upper right corner.

    Screenshot 2024-12-24 at 2.09.29 PM.png

  2. Do not fill in the client_secret.

    Screenshot 2024-12-24 at 2.10.56 PM.png

  3. Do click “Authorize”.

    Screenshot 2024-12-24 at 2.11.47 PM.png

  4. You will be redirected to a login screen. Authenticate using the username and password provided.

  5. You will be redirected back to Swagger.

  6. Click “Close” and test the endpoints 🙂 You are done!

Using HSDA for Data Replication

The primary endpoint we support at this time (from among many in the HSDA specification) is organizations. This endpoint, when used in conjunction with the ?full=true parameter, returns an entire data set (paginated). The returned JSON is large but efficient: it contains organizations with every service and location related to that organization nested inside. All additional data that we have in our system including phone numbers, schedule, eligibility criteria, custom taxonomies, etc is nested inside the appropriate core table object tables.

<aside> <img src="/icons/thumbs-up_pink.svg" alt="/icons/thumbs-up_pink.svg" width="40px" />

Use /organization?full=true when you want to fetch a complete data set for replication.

</aside>

As an extension of HSDS, the nested service_at_location object also contains additional information that’s helpful in a publishing context, such as how to format a resource name, which phone number to call first, and more.