Api Endpoint

Saylor Innovations Data Desk

Package download trend - last day, week and 30 days of downloads, daily series and week-over-week change for any npm, PyPI or crates.io package

Open interactive test console

Offering

Provider
saylorinnovations.com
Method
GET
Offering type
Api Endpoint
Transport type
http
Category
Development
Delivery
Not provided
Pricing model
Not provided
x402 version
2

Endpoint context

URL
https://saylorinnovations.com/api/downloads/npm/:ecosystem
MIME type
Not provided
First seen
2026-10-16T01:59:13.392Z
Last seen
Tags
package downloads, npm downloads, pypi downloads, crates downloads, library popularity

Payment pricing

x402 payment terms are the authoritative price for calling this endpoint.

Payment option 1
0.01 USDC
Atomic price: 10000 · Network: eip155:8453 · Asset: USDC · Scheme: exact
Payment option 2
0.01 USDC
Atomic price: 10000 · Network: eip155:137 · Asset: USDC · Scheme: exact
Payment option 3
0.01 USDC
Atomic price: 10000 · Network: eip155:42161 · Asset: USDC · Scheme: exact
Payment option 4
0.01 USDC
Atomic price: 10000 · Network: solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp · Asset: USDC · Scheme: exact
Payment option 5
10000 atomic units
Atomic price: 10000 · Network: solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp · Asset: Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB · Scheme: exact
Payment option 6
90223 atomic units
Atomic price: 90223 · Network: solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp · Asset: So11111111111111111111111111111111111111112 · Scheme: exact
Raw x402 terms
[
  {
    "scheme": "exact",
    "network": "eip155:8453",
    "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "amount": "10000",
    "payTo": "0xA2A8dF0f7CaaBEa4e120a2568118f141569fc8aa"
  },
  {
    "scheme": "exact",
    "network": "eip155:137",
    "asset": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
    "amount": "10000",
    "payTo": "0xA2A8dF0f7CaaBEa4e120a2568118f141569fc8aa"
  },
  {
    "scheme": "exact",
    "network": "eip155:42161",
    "asset": "0xaf88d065e77c8cC2239327C5EDb3A432268e5831",
    "amount": "10000",
    "payTo": "0xA2A8dF0f7CaaBEa4e120a2568118f141569fc8aa"
  },
  {
    "scheme": "exact",
    "network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
    "asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
    "amount": "10000",
    "payTo": "7LSjfrJf8fNsB8VA9u7N3WEn25smQLpob3SvyUvXacy7"
  },
  {
    "scheme": "exact",
    "network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
    "asset": "Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB",
    "amount": "10000",
    "payTo": "7LSjfrJf8fNsB8VA9u7N3WEn25smQLpob3SvyUvXacy7"
  },
  {
    "scheme": "exact",
    "network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
    "asset": "So11111111111111111111111111111111111111112",
    "amount": "90223",
    "payTo": "7LSjfrJf8fNsB8VA9u7N3WEn25smQLpob3SvyUvXacy7"
  }
]

Observed health

Status
Reachable
Latest latency
450 ms
Average latency
685 ms
HTTP status
400
Last checked
Reachability
100% over 12 checks

Latency is measured to the first response headers. A reachable result does not verify response accuracy or merchant identity.

Input schema

{
  "additionalProperties": false,
  "properties": {
    "method": {
      "enum": [
        "GET"
      ],
      "type": "string"
    },
    "pathParams": {
      "properties": {
        "ecosystem": {
          "description": "npm, pypi or crates in the path",
          "type": "string"
        }
      },
      "required": [
        "ecosystem"
      ],
      "type": "object"
    },
    "queryParams": {
      "properties": {
        "name": {
          "description": "Package name in the path (scoped npm names allowed)",
          "type": "string"
        }
      },
      "type": "object"
    },
    "type": {
      "const": "http",
      "type": "string"
    }
  },
  "required": [
    "type",
    "method",
    "pathParams"
  ],
  "type": "object"
}

Output schema

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "properties": {
    "input": {
      "additionalProperties": false,
      "properties": {
        "method": {
          "enum": [
            "GET"
          ],
          "type": "string"
        },
        "pathParams": {
          "properties": {
            "ecosystem": {
              "description": "npm, pypi or crates in the path",
              "type": "string"
            }
          },
          "required": [
            "ecosystem"
          ],
          "type": "object"
        },
        "queryParams": {
          "properties": {
            "name": {
              "description": "Package name in the path (scoped npm names allowed)",
              "type": "string"
            }
          },
          "type": "object"
        },
        "type": {
          "const": "http",
          "type": "string"
        }
      },
      "required": [
        "type",
        "method",
        "pathParams"
      ],
      "type": "object"
    },
    "output": {
      "properties": {
        "example": {
          "properties": {
            "checked_at": {
              "description": "Time the check was run (UTC)",
              "type": [
                "string",
                "null"
              ]
            },
            "daily": {
              "description": "Daily values",
              "items": {
                "properties": {
                  "date": {
                    "description": "Date (YYYY-MM-DD)",
                    "type": "string"
                  },
                  "downloads": {
                    "description": "Download count",
                    "type": [
                      "number",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "type": "array"
            },
            "daily_average_30d": {
              "description": "Daily average 30d",
              "type": [
                "number",
                "null"
              ]
            },
            "ecosystem": {
              "description": "Package ecosystem the record belongs to",
              "type": "string"
            },
            "last_30d": {
              "description": "Last 30d",
              "type": [
                "number",
                "null"
              ]
            },
            "last_7d": {
              "description": "Last 7d",
              "type": [
                "number",
                "null"
              ]
            },
            "last_day": {
              "description": "Last day",
              "type": [
                "number",
                "null"
              ]
            },
            "last_week": {
              "description": "Last week",
              "type": [
                "number",
                "null"
              ]
            },
            "package": {
              "type": "string"
            },
            "peak_day": {
              "description": "Day with the highest value"
            },
            "prior_7d": {
              "description": "Prior 7d",
              "type": [
                "number",
                "null"
              ]
            },
            "source": {
              "description": "Data source the values come from",
              "type": [
                "string",
                "null"
              ]
            },
            "total_downloads": {
              "description": "Total downloads"
            },
            "trend": {
              "description": "Direction of recent change",
              "type": [
                "string",
                "null"
              ]
            },
            "week_over_week_pct": {
              "description": "Week over week, as a percentage",
              "type": [
                "number",
                "null"
              ]
            }
          },
          "required": [
            "ecosystem",
            "package",
            "daily"
          ],
          "type": "object"
        },
        "type": {
          "const": "json",
          "type": "string"
        }
      },
      "required": [
        "type"
      ],
      "type": "object"
    }
  },
  "required": [
    "input"
  ],
  "type": "object"
}