Thanks to visit codestin.com
Credit goes to lib.rs

9 releases

new 0.2.3 May 20, 2026
0.2.2 Mar 5, 2026
0.1.4 Jun 10, 2019
0.1.3 May 17, 2019
0.1.1 Mar 29, 2019

#52 in Science


Used in papers

MIT license

130KB
3.5K SLoC

ORCID Rust Library

A Rust library for interacting with the ORCID API to fetch researcher information.

Installation

Add this to your Cargo.toml:

[dependencies]
orcid = "0.2"

Usage

Async Client (Default)

use orcid::{Client, Result};

#[tokio::main]
async fn main() -> Result<()> {
    let client = Client::new();
    
    // Get author information
    let author = client.author("0000-0001-5916-0947").await?;
    
    println!("Name: {}", author.full_name().unwrap_or_default());
    println!("ORCID: {}", author.orcid_id().unwrap_or_default());
    
    // Search for researchers
    let results = client.search("climate change").await?;
    println!("Found {} researchers", results.len());
    
    Ok(())
}

Blocking Client

use orcid::{ClientBlocking, Result};

fn main() -> Result<()> {
    let client = ClientBlocking::new();
    
    // Get author information
    let author = client.author("0000-0001-5916-0947")?;
    
    // Access various data
    println!("Works: {:?}", author.works());
    println!("Education: {:?}", author.education());
    println!("Employment: {:?}", author.employment());
    
    Ok(())
}

Search Builder

Build complex search queries easily:

let results = client.search_builder()
    .with_keyword("machine learning")
    .with_affiliation("MIT")
    .limit(50)
    .execute()
    .await?;

Features

  • Fetch complete ORCID profiles including:
    • Personal information (names, biography, keywords)
    • Works and publications
    • Education history
    • Employment records
    • Funding information
    • Peer reviews
    • Memberships
    • Qualifications
  • Search for researchers by keywords, DOI, affiliation, etc.
  • Validate ORCID IDs
  • Both async and blocking API clients

License

MIT License - see LICENSE file for details

Dependencies

~13–22MB
~314K SLoC