Downloading metadata of a single execution

Using the Valohai APIs is rather straightforward, you’ll need to create an API token to authenticate your requests and then write your code to send & receive requests.

  • Go to your profile setting and create an authentication token
    • In our sample we’ll paste this directly to the file but you should consider saving this token in a configuration file or database for secure storage.

  • Consider creating a custom virtual environment for Python before continuing.
    • python3 -m virtualenv .venv

    • source .venv/bin/activate

  • You’ll need the ID of a single execution to fetch its metadata.
    • You can query for it with Valohai APIs or by going to the browser and navigating inside an execution. You’ll see the ID in the url.

  • Create a new folder on your computer and inside it create a new file
    import requests
    import json
    import os
    # Authenticate yourself with the token.
    # Remember to follow your organization's security standards when handling the token.
    auth_token = os.environ['VH_API_TOKEN']
    headers = {'Authorization': 'Token %s' % auth_token}
    # Send a request (with the authentication headers) to fetch all executions in a project
    # You can get the project ID for example
    resp = requests.get('{execution_id}/metadata/', headers=headers)
    # Print the response you've received back
    print('# API Response:\n')
    print(json.dumps(resp.json(), indent=4))
  • 🔥 Save and run python and you’ll see the metadata stream of a single execution.