Helix Integration

Overview

The helix package in dagger provides integration with the Helix Platform. This includes functionalities like authentication, credential management, and API interactions with Helix services.

Authentication

Authentication is handled through a combination of authentication tokens and credentials stored in the Helix platform. dagger utilizes the helix.auth.Authentication class for handling this process.

Credential Management

Credentials for interacting with the Helix platform are managed through the helix.credentials.CredentialsManager class. This class interacts with the helix.auth.Authentication module to obtain necessary tokens.

API Calls

The helix.api package provides classes for interacting with Helix APIs, including:

  • helix.api.HelixAPI: A base class for interacting with Helix APIs.
  • helix.api.ProjectsAPI: Specific API interactions for projects.
  • helix.api.UsersAPI: Specific API interactions for users.

Examples

Authentication Example:

from helix.auth import Authentication
          from helix.credentials import CredentialsManager
          
          # Obtain authentication credentials from the CredentialsManager
          credentials = CredentialsManager.get_credentials()
          
          # Initialize the Authentication object
          auth = Authentication(credentials)
          
          # Authenticate against Helix
          auth.authenticate()
          

API Call Example:

from helix.api import ProjectsAPI
          
          # Initialize the Projects API
          projects_api = ProjectsAPI(auth)
          
          # Retrieve a project by its ID
          project = projects_api.get_project(project_id="my-project")
          

Key Classes and Methods

  • helix.auth.Authentication: Authentication class for interacting with the Helix platform.
  • helix.credentials.CredentialsManager: Manages credentials for interacting with Helix.
  • helix.api.HelixAPI: Base class for Helix API interactions.
  • helix.api.ProjectsAPI: API interactions for projects.
  • helix.api.UsersAPI: API interactions for users.

Reference