Integration APIs

GETList Launches

Last updated February 26, 2026

Retrieve active and upcoming Genesis launch listings. Returns a list of launches with their metadata, token info, and social links.

Summary

List all Genesis launches with optional filters for status and spotlight. Returns an array of LaunchData objects sorted by most recent activity.

  • Filter by status (upcoming, live, graduated) and/or spotlight (true, false)
  • Results are sorted by lastActivityAt in descending order
  • Each entry includes launch details, base token metadata, and social links
  • Supports mainnet (default) and devnet via network query parameter

Quick Reference

ItemValue
MethodGET
Path/launches
AuthNone
ResponseLaunchData[]
PaginationNone

Endpoint

GET /launches

Query Parameters

ParameterTypeRequiredDescription
networkstringNoNetwork to query. Default: solana-mainnet. Use solana-devnet for devnet.
statusstringNoFilter by status: upcoming, live, graduated. Default: returns all.
spotlightstringNoFilter by spotlight: true or false. Default: returns all.

Example Request

curl "https://api.metaplex.com/v1/launches?status=live"

Response

Results are sorted by lastActivityAt in descending order.

{
"data": [
{
"launch": {
"launchPage": "https://example.com/launch/mytoken",
"mechanic": "launchpoolV2",
"genesisAddress": "7nE9GvcwsqzYcPUYfm5gxzCKfmPqi68FM7gPaSfG6EQN",
"spotlight": false,
"startTime": "2026-01-15T14:00:00.000Z",
"endTime": "2026-01-15T18:00:00.000Z",
"status": "graduated",
"heroUrl": "launches/abc123/hero.webp",
"graduatedAt": "2026-01-15T18:05:00.000Z",
"lastActivityAt": "2026-01-15T17:45:00.000Z",
"type": "project"
},
"baseToken": {
"address": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"name": "My Token",
"symbol": "MTK",
"image": "https://example.com/token-image.png",
"description": "A community-driven token for the example ecosystem."
},
"website": "https://example.com",
"socials": {
"x": "https://x.com/mytoken",
"telegram": "https://t.me/mytoken",
"discord": "https://discord.gg/mytoken"
}
}
]
}

Response Type

See Shared Types for Launch, BaseToken, and Socials definitions.

TypeScript

interface LaunchData {
launch: Launch;
baseToken: BaseToken;
website: string;
socials: Socials;
}
interface LaunchesResponse {
data: LaunchData[];
}

Rust

#[derive(Debug, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct LaunchData {
pub launch: Launch,
pub base_token: BaseToken,
pub website: String,
pub socials: Socials,
}
#[derive(Debug, Serialize, Deserialize)]
pub struct LaunchesResponse {
pub data: Vec<LaunchData>,
}

Usage Examples

TypeScript

const response = await fetch(
"https://api.metaplex.com/v1/launches?status=live"
);
const { data }: LaunchesResponse = await response.json();
console.log(`${data.length} launches`);
data.forEach((entry) => {
console.log(entry.baseToken.name, entry.launch.status);
});

Rust

let response: LaunchesResponse = reqwest::get(
"https://api.metaplex.com/v1/launches?status=live"
)
.await?
.json()
.await?;
println!("{} launches", response.data.len());

Notes

  • Results are not paginated. The endpoint returns all matching launches in a single response.
  • The status filter accepts upcoming, live, or graduated. Omit to return all statuses.
  • The mechanic field indicates the allocation mechanism (e.g., launchpoolV2, presaleV2). The type field indicates the launch category (project, memecoin, or custom).