Skip to main content

Module api

Module api 

Source
Expand description

External API clients (GitLab, Jira, SiServer, kasl-server) and the shared session-management pattern most of them implement.

kasl_server is the exception: it authenticates with a token an administrator issues, so it has no session to manage and does not implement Session.

use kasl::api::{GitLabConfig, JiraConfig, SiConfig};

let jira_module = JiraConfig::module();
let jira_config = JiraConfig::init(&existing_config)?;

Re-exports§

pub use gitlab::GitLabConfig;
pub use jira::JiraConfig;
pub use si::SiConfig;

Modules§

gitlab
GitLab API client for fetching user activity and commit data.
jira
Jira client: completed issues for task discovery, assigned open issues for the inbox poller.
kasl_server
kasl-server client: the team server this agent reports to.
si
SiServer client: daily/monthly report submission and the company rest-date calendar.

Traits§

Session
Session lifecycle shared by every API client: cache the session id on disk, prompt for the password only when needed, retry a bounded number of times.