#api-client #rest-client #inflectra

spira

Rust client implementation for Inflectra Spira API

6 releases

0.0.6 Nov 15, 2022
0.0.5 May 19, 2022
0.0.4 Mar 22, 2022

#43 in #rest-client

37 downloads per month
Used in spira_cli

MIT/Apache

29KB
521 lines

spira@0.0.6

Inflectra Spira Rust Client

Usage

use spira::{resources::project::ProjectDto, SpiraClient};

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    let api_key = env::var("SPIRA_API_KEY")?;
    let username = env::var("SPIRA_USERNAME")?;
    let base_url = env::var("SPIRA_API_URL")?;

    let spira_client = SpiraClient::new(&base_url, &api_key, &username)?;
    let projects = spira_client.project.list().await?;

    println!("{:#?}", projects);
    Ok(())
}

Documentation

Crate spira@0.0.6 docs

Task

Getting a task by id

/// ...
let task: TaskDto = spira_client.task.get(100 /* project_id */, task_id /* task_id */).await?;

Requirement

Getting a requirement by id

/// ...
let requirement: RequirementDto = spira_client.requirement.get(100 /* project_id */, 1500 /* requirement_id */).await?;

lib.rs:

SpiraClient Inflectra Spira Rest client implementation in rust

Dependencies

~4–19MB
~256K SLoC