Public APIv1.0.0No Auth Required

Vessel API Documentation

Access real-time dependency tracking data via our public REST API. 100% free, no authentication, no rate limits.

Base URL

Production
https://vessel.nunchi.ai.com/api/v1

Quick Start

GET/api/v1/sources

Get all tracked dependencies with filtering options

curl "https://vessel.nunchi.ai.com/api/v1/sources?type=npm"
GET/api/v1/events

Access releases, deprecations, and EOL events

curl "https://vessel.nunchi.ai.com/api/v1/events?severity=Warning"

Available Endpoints

GET/api/v1

API information and available endpoints

Info
GET/api/v1/sources

List all tracked dependencies with metadata

Sources

Query Parameters

typeFilter by source type (npm, pypi, github_release, etc.)
active_onlyShow only active sources (default: true)
limitResults per page, max 100 (default: 50)
offsetPagination offset (default: 0)

Response Example

{
  "sources": [
    {
      "id": 1,
      "name": "Next.js",
      "type": "npm",
      "target_identifier": "next",
      "official_website": "https://nextjs.org",
      "github_url": "https://github.com/vercel/next.js",
      "docs_url": "https://nextjs.org/docs",
      "importance": "high",
      "is_active": true
    }
  ],
  "pagination": {
    "limit": 50,
    "offset": 0,
    "total": 100
  }
}
GET/api/v1/events

Get all release events with filtering

Events

Query Parameters

source_idFilter by source ID
event_typeRelease, Deprecation, or EOL
severityInfo, Warning, or Danger
start_dateISO datetime filter (e.g., 2024-01-01T00:00:00Z)
end_dateISO datetime filter
limitResults per page, max 100
offsetPagination offset

Response Example

{
  "events": [
    {
      "id": 12345,
      "source_id": 1,
      "version": "15.0.0",
      "release_date": "2024-12-15T00:00:00Z",
      "event_type": "Release",
      "severity": "Warning",
      "description": "Next.js 15 released with breaking changes",
      "release_notes_url": "https://github.com/vercel/next.js/releases/tag/v15.0.0",
      "announcement_url": "https://nextjs.org/blog/next-15",
      "migration_guide_url": "https://nextjs.org/docs/app/building-your-application/upgrading",
      "sources": {
        "id": 1,
        "name": "Next.js",
        "type": "npm",
        "official_website": "https://nextjs.org",
        "github_url": "https://github.com/vercel/next.js",
        "docs_url": "https://nextjs.org/docs"
      }
    }
  ],
  "pagination": {
    "limit": 50,
    "offset": 0,
    "total": 500
  }
}
GET/api/v1/sources/{id}/events

Get events for a specific source

Events

Example

GET /api/v1/sources/1/events?severity=Warning

Code Examples

🐍 Python

import requests

# Get all npm packages
response = requests.get('{baseUrl}/api/v1/sources?type=npm')
data = response.json()

for source in data['sources']:
    print(f"{{source['name']}} - {{source['type']}}")

# Get recent events
response = requests.get('{baseUrl}/api/v1/events?severity=Warning')
events = response.json()

for event in events['events']:
    print(f"{{event['version']}} - {{event['severity']}}")

JavaScript

// Get all sources
const response = await fetch('{baseUrl}/api/v1/sources');
const data = await response.json();

data.sources.forEach(source => {
  console.log(source.name, source.type);
});

// Get events with URLs
const events = await fetch('{baseUrl}/api/v1/events?severity=Warning')
  .then(r => r.json());

events.events.forEach(event => {
  console.log(event.version, event.urls?.release_notes);
});

🔄 cURL

# Get sources
curl "{baseUrl}/api/v1/sources?type=npm"

# Get events
curl "{baseUrl}/api/v1/events?severity=Danger"

# Get specific source events
curl "{baseUrl}/api/v1/sources/1/events"

# Pagination
curl "{baseUrl}/api/v1/events?limit=20&offset=0"

🔵 Go

package main

import (
    "encoding/json"
    "net/http"
)

type Response struct {
    Sources []Source
}

func main() {
    resp, _ := http.Get("https://vessel.nunchi.ai.com/api/v1/sources")
    defer resp.Body.Close()

    var data Response
    json.NewDecoder(resp.Body).Decode(&data)

    println(len(data.Sources))
}

Use Cases

🤖 AI Agent Context

Give your AI agents access to real-time dependency information. Don't rely on outdated training data.

📊 Dependency Monitoring

Track updates across your tech stack and get alerted to breaking changes and security issues.

🔔 Alert Systems

Build custom alerting systems that notify your team when important updates are released.

📈 Analytics

Analyze release patterns, update frequency, and ecosystem trends across different languages.