DEVELOPER RESOURCES

Build on Solana Deads

Render a mint on your own site, or read the marketplace from your own app. Two public SDKs, a versioned API, and documentation with a console you can press Send on.

Public on npmVersioned APIDevnet sandboxMCP server
Explore on-chain programs

Published on npm

npm

@solanadeads/gravemint

Read a drop and mint from it on your own site. Phases, resolved pricing, eligibility, per-wallet limits, and prepare → sign → execute.

npm

@solanadeads/gravemarket

Read the marketplace — collections, items, listings, offers, activity, floors and trait data.

npm

@solanadeads/mcp

An MCP server so an AI coding agent builds against our APIs correctly — it teaches the SDKs rather than replacing them.

Install
npm install @solanadeads/gravemint

Zero runtime dependencies, dual ESM + CJS, fully typed. You bring your own wallet library — we ship no chain SDK, so it cannot collide with what you already use.

From nothing to a working mint page

No sales call in the middle — the only human step is asking for a key.

  1. 1

    Get a key

    Create one in the GraveMint creator dashboard or the GraveMarket developer portal. Partner keys for minting on your own domain are issued by us — tell us the drops and the domains and we scope a key to exactly that, plus a devnet sandbox key to build against.

  2. 2

    Install the SDK

    npm install @solanadeads/gravemint. Zero runtime dependencies, dual ESM + CJS, fully typed. You bring your own wallet library; we ship no chain SDK.

  3. 3

    Read, then mint

    One call returns the whole read model — phases, resolved prices, eligibility, supply. Then prepare, sign with your wallet, and hand the signed bytes back. We broadcast.

What you get

A contract you can pin against, credentials that are safe in a browser, and three different levels of integration.

A versioned HTTP API

  • /gravemint/v1 — additive-only within the major — no field removed, no type changed, no error code renamed
  • The whole read model in one call — phases, resolved pricing, eligibility, per-wallet limits, supply, capabilities and server time
  • A live console in the docs — fill in the parameters, press Send, see the exact request and response
  • Frozen error codes — so a pinned client can branch on them for years

Keys that are safe to publish

  • Origin-bound and collection-scoped — a publishable key ships in your bundle by design; what bounds it is server-side
  • A devnet sandbox class — refused on any production chain, so you can build against a real API without touching a real mint
  • Scoped reads, not just scoped mints — every route that names a collection is confined to the drops your key covers

Ways to embed

  • The SDK — build the page yourself and control every pixel
  • Embed v2 — a loader script and an iframe — no npm, no build step; works on Wix, Squarespace, WordPress and Framer
  • The MCP server — point your AI agent at it and it writes integration code that follows the rules rather than inventing them

You sign. We broadcast.

Your wallet signs the transaction we built, and hands the signed bytes back to us to submit. We check them against what we prepared first — the program, the instruction data, the resolved accounts — so what reaches the chain is what we priced and reserved. Sending a transaction you already broadcast is refused, and that refusal is what lets us stand behind the result.

Questions

Do I need a key to try it?

Not to read the docs — every endpoint has a live console you can run right there. You need a key to call the API from your own site, and those are invite-only.

Which chains can I mint on through the API?

v1 is Solana-only today. That is where the server-side transaction check is strongest, and it covers most live collections. A drop on another chain returns a clear code and a link to mint on GraveMint instead.

Do I have to use the SDK?

No, it is a normal HTTP API. But the SDK carries the typed errors, the retry and backoff, the rate limiter and the version header, so going without means reimplementing all of that.

Can I broadcast the transaction myself?

No, and the API refuses it. You sign; we submit. A transaction we never inspected is one whose recipient, amount and instructions we never verified — so we check the signed bytes against what we built before anything reaches the chain.

What happens when you ship a feature my pinned version does not know about?

The collection response tells you. It reports what the drop needs and whether your surface can render it faithfully — if it cannot, you show a link to GraveMint rather than a panel that is quietly wrong.

What it will not do

It is not open registration

Partner keys are issued by hand. That keeps the support surface bounded, and it is why we can be responsive when something breaks.

Minting is Solana-only today

Reads cover more. A drop on another chain returns a clear code and a link to mint on GraveMint instead of failing obscurely.

You cannot broadcast the transaction

By design, not by omission. We check the signed bytes against what we built before anything reaches the chain, which is only possible if we are the ones submitting.

Some drops fall outside the contract

Packs, gallery selection and generative builders are outside core mint. Those drops say so, and you link out rather than rendering a panel that is quietly wrong.

Start with the docs

Every endpoint has a console you can run against a live devnet drop, so you can see a real request and a real response before you write any code.

We Value Your Privacy

We use cookies to enhance your browsing experience, analyze site traffic, and personalize content. By clicking "Accept All", you consent to our use of cookies. Learn more