NobleID

    Main

    Mint WorkSearchExploreWorksReceipts

    SDKs

    Official SDKs for TypeScript, Python, Go, and Rust with full API coverage.

    TypeScript/JavaScript
    Full-featured SDK with TypeScript definitions
    Docs GitHub

    Installation

    npm install @nobleid/sdk

    Quick Example

    npm install @nobleid/sdk import { NobleID } from '@nobleid/sdk' const client = new NobleID({ apiKey: process.env.NOBLEID_API_KEY, baseUrl: 'https://api.nobleid.org/v1' }) // Mint new work const work = await client.works.create({ title: 'My Research Paper', authors: [{ name: 'Dr. Jane Smith' }], abstract: 'This paper explores...', contentUrl: 'https://example.org/paper.pdf' }) // Resolve ARK const resolved = await client.resolve('ark:/nobleid/20092025/7X9K2Q')

    Features

    • • Full type safety
    • • Promise-based API
    • • Browser & Node.js
    • • Built-in retry logic
    Python
    Pythonic SDK with async support
    Docs GitHub

    Installation

    pip install nobleid-sdk

    Quick Example

    pip install nobleid-sdk from nobleid import NobleIDClient client = NobleIDClient( api_key=os.environ['NOBLEID_API_KEY'], base_url='https://api.nobleid.org/v1' ) # Mint new work work = client.works.create( title='My Research Paper', authors=[{'name': 'Dr. Jane Smith'}], abstract='This paper explores...', content_url='https://example.org/paper.pdf' ) # Resolve ARK resolved = client.resolve('ark:/nobleid/20092025/7X9K2Q')

    Features

    • • Async/await support
    • • Type hints
    • • Pydantic models
    • • Automatic pagination
    Go
    Idiomatic Go SDK with context support
    Docs GitHub

    Installation

    go get github.com/nobleid/go-sdk

    Quick Example

    go get github.com/nobleid/go-sdk package main import ( "github.com/nobleid/go-sdk/nobleid" ) func main() { client := nobleid.NewClient(&nobleid.Config{ APIKey: os.Getenv("NOBLEID_API_KEY"), BaseURL: "https://api.nobleid.org/v1", }) // Mint new work work, err := client.Works.Create(&nobleid.CreateWorkRequest{ Title: "My Research Paper", Authors: []nobleid.Author{{Name: "Dr. Jane Smith"}}, Abstract: "This paper explores...", ContentURL: "https://example.org/paper.pdf", }) // Resolve ARK resolved, err := client.Resolve("ark:/nobleid/20092025/7X9K2Q") }

    Features

    • • Context support
    • • Structured errors
    • • HTTP client reuse
    • • JSON streaming
    Rust
    Memory-safe SDK with async runtime
    Docs GitHub

    Installation

    nobleid-sdk = "0.1.0"

    Quick Example

    [dependencies] nobleid-sdk = "0.1.0" use nobleid_sdk::{NobleIDClient, CreateWorkRequest, Author}; #[tokio::main] async fn main() -> Result<(), Box<dyn std::error::Error>> { let client = NobleIDClient::new( std::env::var("NOBLEID_API_KEY")?, "https://api.nobleid.org/v1" ); // Mint new work let work = client.works().create(CreateWorkRequest { title: "My Research Paper".to_string(), authors: vec![Author { name: "Dr. Jane Smith".to_string() }], abstract_text: Some("This paper explores...".to_string()), content_url: Some("https://example.org/paper.pdf".to_string()), ..Default::default() }).await?; // Resolve ARK let resolved = client.resolve("ark:/nobleid/20092025/7X9K2Q").await?; Ok(()) }

    Features

    • • Zero-cost abstractions
    • • Tokio async
    • • Serde integration
    • • Strong typing
    Community SDKs
    Community-maintained SDKs for other languages

    Don't see your language? The NOBLEID API is a standard REST API that works with any HTTP client. Check out our API reference orPostman collection to get started.

    API ReferencePostman Collection
    NobleID

    info@nobleid.org

    TermsPolicyPersistence & Resolver Service Policy