Download 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 fetchMetadata.py
    import requests
    import json
    
    # Authenticate yourself with the token
    auth_token = '<your-auth-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('https://app.valohai.com/api/v0/executions/{execution_id}/metadata/', headers=headers)
    
    resp.raise_for_status()
    
    # Print the response you've received back
    print('# API Response:\n')
    print(json.dumps(resp.json(), indent=4))
    
  • 🔥 Save and run python fetchMetadata.py and you’ll see the metadata stream of a single execution.