Table of Contents
API Instructions

Command Line API



Acquiring an API Key

In order to query the API, you will need to have an API Key. Currently, API access is private: if you don't have a key, you will have to request one.

These keys are being given out on a very limited basis. If you would like a key, please reach out to our team at UK's Center for Computational Sciences:

James (Jim) Griffioen: griff@netlab.uky.edu
Vikram Gazula: gazula@uky.edu



Using the API

The URL for accessing our API is: https://ara-db.ccs.uky.edu/api=API_0
Currently, it is only possible to query specific software or all of the software on an RP.

The basic syntax for querying the API is as follows:

Query RP:
curl https://ara-db.ccs.uky.edu/api=API_0/{API_KEY}/rp={RP}
Query Software:
curl https://ara-db.ccs.uky.edu/api=API_0/{API_KEY}/software={SOFTWARE_NAME}


Here is a breakdown of this command:

Command Description Required/Optional
curl (Client for URL) is a tool for transferring data through network protocols. Wget and other similar commands will also work. Required
https://ara-db.ccs.uky.edu/api=API_0/ This is the 'Path' to the API. Required
{API_KEY} Once you've obtained an API Key from us, you will need to paste your actual key here each time you query the API.
Without a valid key, your request will be denied.
It is also case-sensitive.
Required
rp={RP} Replace {RP} with the group id(s) of the Resource Provider you are retrieving information for. This should be formatted as: <rp_group_id1>+<rp_gruop_idn>

You can Find the complete list of group ids at this page.

For example, if you want to grab all software on anvil and ookami, your query will be: {url}/rp=anvil.purdue.access-ci.org+ookami.sbu.access-ci.org

You can also use the rp names to query, so the following query would have the same result as above: {url}/rp=anvil+ookami

This is not case sensitive, i.e. 'anvil' and 'ANVIL' will be treated the same.
Required
software={SOFTWARE_NAME} Replace {SOFTWARE_NAME} with the name of the software you are retrieving information for. This should be formatted as: <software_name1>+<software_namen>

For example, if you want to grab information for gaussian and abacas, your query will be: {url}/software=gaussian+abacas

This is not case sensitive, i.e. 'Gaussian' and 'gaussian' will be treated the same.
Required

By default, a software query yields all the information from its row in SDS. However, if you are only interested in certain fields, there are some optional flags you may add to your query.
Include and Exclude are mutually exclusive, thus cannot be used in the same query.

Flag Description Required/Optional
include={COLUMN_NAMES} Include this if you are only interested in certain columns, rather than the entire row of data.
Default is ALL.
Format as: include=<col1>+<coln>

To grab only the RP name and software name for all software on FASTER: {url}/rp=faster,include=rp_name+software_name
Optional
exclude={COLUMN_NAMES} As an alternative, if you are interested in all but a few specific columns, you can exclude them instead.
Default is NONE.
Format as: exclude=<col1>+<coln>

To grab all information except description on FASTER: {url}/rp=faster,exclude=software_description
Optional
format={FORMAT} You may specify the format you would like your results of your query. Current options are JSON, CSV, or HTML (an unstyled table).
Default is JSON.
Optional



API Examples

Example query that will retrieve all the information in our database about 7z (remember to replace {API_KEY} with your personal API Key):

curl https://ara-db.ccs.uky.edu/api=API_0/{API_KEY}/software=7z

Example of a query that will retrieve information on Anvil:

curl https://ara-db.ccs.uky.edu/api=API_0/{API_KEY}/rp=anvil

Example of a query that will retrieve information on DARWIN and KyRIC, excluding some of the AI-generated information:

curl https://ara-db.ccs.uky.edu/api=API_0/{API_KEY}/rp=darwin.udel.access-ci.org+kyric.uky.access-ci.org,exclude=ai_description

Example of a query that will retrieve information on OOKAMI as a CSV file, but only including the RP name, software name, and the AI-generated software description:

curl https://ara-db.ccs.uky.edu/api=API_0/{API_KEY}/rp=ookami,include=rp_name+software_name+ai_description,type=csv




Website API



Acquiring an API Key

Just like the Command Line API, you will need to have an API Key in order to utilize the Website API. Currently, API access is private: if you don't have a key, you will have to request one.

These keys are being given out on a very limited basis. If you would like a key, please reach out to the team at UK's Center for Computational Sciences:

James (Jim) Griffioen: griff@netlab.uky.edu
Vikram Gazula: gazula@uky.edu



Using the API

The Website's API is a mirror of the Command Line API: it is a tool that's been designed to help you build your API queries.

To help you learn how to use our API, the Website is preconfigured with all the options available, through the use of a series of drop-down style menus that allow you to build your query piece by piece. Just like the Command Line API, not every option is required; if you opt not to select any Include or Exclude options, the entire row of information will be called.

Of note: the box labled 'API cURL Script' is dynamically updated as you select options. You do not need to interact with this field: it's purpose is to show you the Command Line equivalent of your query, in case you wish to run it through your terminal instead.