evo-python-sdk
Getting started with Evo code samples
For detailed information about creating Evo apps, the authentication setup, available code samples, and step-by-step guides for working with the Jupyter notebooks, please refer to the Quick start guide, or code-samples section of the repository.
This comprehensive guide will walk you through everything required to get started with Evo APIs.
Getting started with the Evo SDK
The evo-python-sdk contains a number of sub-packages. You may choose to install the evo-sdk package, which includes all sub-packages and optional dependencies (e.g. Jupyter notebook support), or choose a specific package to install:
| Package | Version | Description |
|---|---|---|
| evo-sdk | A metapackage that installs all available Seequent Evo SDKs, including Jupyter notebook examples. | |
| evo-sdk-common (discovery and workspaces) | A shared library that provides common functionality for integrating with Seequent's client SDKs. | |
| evo-files | A service client for interacting with the Evo File API. | |
| evo-objects | A geoscience object service client library designed to help get up and running with the Geoscience Object API. | |
| evo-colormaps | A service client to create colour mappings and associate them to geoscience data with the Colormap API. | |
| evo-blockmodels | The Block Model API provides the ability to manage and report on block models in your Evo workspaces. | |
| evo-compute | A service client to send jobs to the Compute Tasks API. |
Getting started
Now that you have installed the Evo SDK, you can get started by configuring your API connector, and performing a basic API call to list the organizations that you have access to:
from evo.aio import AioTransport
from evo.oauth import OAuthConnector, AuthorizationCodeAuthorizer
from evo.discovery import DiscoveryAPIClient
from evo.common import APIConnector
import asyncio
transport = AioTransport(user_agent="Your Application Name")
connector = OAuthConnector(transport=transport, client_id="\<YOUR_CLIENT_ID\>")
authorizer = AuthorizationCodeAuthorizer(oauth_connector=connector, redirect_url="http://localhost:3000/signin-callback")
async def main():
await authorizer.login()
await discovery()
async def discovery():
async with APIConnector("https://discover.api.seequent.com", transport, authorizer) as api_connector:
discovery_client = DiscoveryAPIClient(api_connector)
organizations = await discovery_client.list_organizations()
print("Organizations:", organizations)
asyncio.run(main())
For next steps and more information about using Evo, see:
evo-sdk-common(discoveryandworkspaces): providing the foundation for all Evo SDKs, as well as tools for performing arbitrary Seequent Evo API requestsevo-files: for interacting with the File APIevo-objects: for interacting with the Geoscience Object APIevo-colormaps: for interacting with the Colormap APIevo-blockmodels: for interacting with the Block Model APIevo-compute: for interacting with the Compute Tasks API