npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

ramp-ts

v0.1.1

Published

TypeScript SDK for the Ramp Developer API

Readme

ramp-ts

TypeScript SDK for the Ramp Developer API.

Not an official Ramp package. This is an open-source client built from the public API spec. For the full platform story — CLI, MCP, webhooks, guides — start at docs.ramp.com.

Before you start

You'll need a Ramp developer app and an OAuth access token. Ramp's docs walk through this better than we can here:

  1. Quickstart — create a developer app, get a token, make your first API call
  2. Authorization — OAuth 2.0 flows, scopes, and token exchange
  3. Sandbox — test environment with demo data (https://demo-api.ramp.com)

Other useful Ramp resources:

Install

Requires Node.js 22+.

npm install ramp-ts
# or
pnpm add ramp-ts

Quick example

Once you have an access token (see Quickstart):

import {
  createRampClient,
  getTransactionsCanonicalListWithPagination,
} from 'ramp-ts';

createRampClient({
  accessToken: process.env.RAMP_ACCESS_TOKEN!,
  // baseUrl: 'https://demo-api.ramp.com', // use for sandbox
});

const { data, error } = await getTransactionsCanonicalListWithPagination({
  query: { page_size: 50 },
});

if (error) {
  console.error('Request failed:', error);
} else {
  console.log(data);
}

Sandbox

Point at the demo API when testing:

createRampClient({
  accessToken: process.env.RAMP_ACCESS_TOKEN!,
  baseUrl: 'https://demo-api.ramp.com',
});

See Ramp's sandbox guide for access and test data.

Configure the client directly

import { client, getTransactionsCanonicalListWithPagination } from 'ramp-ts';

client.setConfig({
  baseUrl: 'https://api.ramp.com',
  auth: () => process.env.RAMP_ACCESS_TOKEN!,
});

await getTransactionsCanonicalListWithPagination();

Refresh tokens on each request

createRampClient({
  accessToken: async () => getRampAccessToken(), // your token refresh logic
});

Token exchange: POST https://api.ramp.com/developer/v1/token — details in the authorization guide.

What's in the package

All endpoints, types, and the HTTP client are re-exported from the package root:

| Export | Description | |---|---| | SDK functions | Typed, tree-shakeable per-endpoint calls (e.g. getTransactionsCanonicalListWithPagination) | | Types | Request/response TypeScript types for every endpoint | | client | Fetch-based HTTP client singleton | | createRampClient() | Helper to set base URL + Bearer token |

Functions return { data, error } by default. Browse available methods in src/client/sdk.gen.ts or use your editor's autocomplete.

How this fits with Ramp's developer tools

| Tool | Best for | |---|---| | ramp-ts (this package) | Typed SDK in your Node/TS app | | Ramp CLI | Scripts, terminals, agent loops | | Ramp MCP | AI assistants (Claude, Cursor, etc.) | | OpenAPI spec | API contract & reference |

Development

pnpm install
pnpm spec:fetch
pnpm generate
pnpm typecheck && pnpm build

The client stays in sync with Ramp's OpenAPI spec.

License

MIT