Downloading your project’s ingredients source code

To download a current list of the ingredients of your project you must:

  1. Download and install the State Tool.
  2. Authenticate your account using the state auth command.
  3. Generate a JSON web token for your project by using the state export jwt command.
  4. Use the GraphQL interface to send a query.
  5. Use the query output to download your project’s ingredient source code into your working directory.

Using graphQL

Example query:

  project(org: "ActiveState", name: "ActivePython-3.8") {
    ... on Project {
      commit {
        sources(limit: 500) {
    ... on NotFound {

After running this query, replacing the project name and org in the example with the information from your project, you will get an output on the right-hand side of the screen similar to what’s shown below.


If you are calling the API directly via cURL or a script, the endpoint is For more information about GraphQL check here.

Downloading the ingredient list

To download any of the tar/zip files from the GraphQL output you can run the following command:

curl -v -L -O --header "Authorization: Bearer <JWT_TOKEN>" <FILE_URL>

Replace the <JWT TOKEN> with the JSON web token generated in step 3. Use the URL of the tar/zip file in the GraphQL output as the <FILE_URL> in the above curl command. This will download the requested file to your current working directory.