@messari/sdk
Version:
Messari SDK provides a type-safe, intuitive interface for accessing Messari's suite of crypto data and AI APIs.
1,331 lines • 154 kB
TypeScript
/**
* This file was auto-generated by openapi-typescript.
* Do not make direct changes to the file.
*/
export type paths = {
"/ai-digest/api/v1/exchange-rankings-recap": {
/**
* Get Exchange Rankings Recap
* @description Gets daily recap for the exchange rankings page
*/
get: operations["getExchangeRankingsRecap"];
};
"/ai-digest/api/v1/exchange-recap": {
/**
* Get Exchange Recap
* @description Gets news and performance recap for a given exchange
*/
get: operations["getExchangeRecap"];
};
"/ai-digest/api/v1/recap": {
/**
* Get Recap
* @description Gets a recap of the latest news and intel for a given set of assets
*/
get: operations["getProjectRecap"];
};
"/ai/openai/chat/completions": {
/**
* OpenAI-Compatible Chat Completion
* @description Creates a completion for the chat message in OpenAI-compatible format.
* Supports both streaming and non-streaming responses.
* The last message must be from the user role.
* Response is returned directly without the standard {data: } wrapper.
*/
post: operations["createChatCompletionOpenAI"];
};
"/ai/v1/chat/completions": {
/**
* Chat Completion
* @description Creates a completion for the chat message. Supports both streaming and non-streaming responses.
* The last message must be from the user role.
*/
post: operations["createChatCompletion"];
};
"/ai/v1/classification/extraction": {
/**
* Entity Extraction
* @description Extracts entities from the provided text content using AI models and database lookups.
* Supports various entity types and can return similar entities based on the extracted names.
*/
post: operations["extractEntities"];
};
"/diligence/v1/report/asset/{assetId}": {
/**
* Get Diligence Report
* @description Gets a specific diligence report by asset ID. Requires authentication and appropriate enterprise access.
*/
get: operations["getReportByAssetID"];
};
"/diligence/v1/reports/preview": {
/**
* Get Diligence Previews
* @description Gets a preview of the available diligence reports
*/
get: operations["getPreviews"];
};
"/funding/v1/mergers-and-acquisitions": {
/**
* Get Acquisition Deals
* @description Lookup M&A Deals given a set of filters
*/
get: operations["getAcquisitionDeals"];
};
"/funding/v1/organizations": {
/**
* Get Organizations
* @description Lookup Organizations given a set of filters
*/
get: operations["getOrganizations"];
};
"/funding/v1/projects": {
/**
* Get Projects
* @description Lookup Projects given a set of filters
*/
get: operations["getProjects"];
};
"/funding/v1/rounds": {
/**
* Get Fundraising Rounds
* @description Gets a list of all fundraising rounds
*/
get: operations["getFundingRounds"];
};
"/funding/v1/rounds/investors": {
/**
* Get Fundraising Rounds Investors
* @description Gets a list of all investors for a given fundraising round
*/
get: operations["getFundingRoundsInvestors"];
};
"/intel/v1/assets": {
/**
* Get all assets
* @description Returns a list of assets.
* Supports pagination and filtering by name or symbol.
*/
get: operations["getAllAssets"];
};
"/intel/v1/events": {
/**
* Get all events
* @description Returns a list of events based on the provided filters.
* Supports pagination and filtering by various parameters.
*/
post: operations["getAllEvents"];
};
"/intel/v1/events/{eventId}": {
/**
* Get event and its history
* @description Returns a specific event by ID along with its history.
*/
get: operations["getEventAndHistory"];
};
"/metrics/v1/exchanges": {
/**
* List Exchanges
* @description Get a list of exchanges with metadata and associated metrics snapshot.
*/
get: operations["getExchanges"];
};
"/metrics/v1/exchanges/{entityIdentifier}/metrics/{datasetSlug}/time-series/{granularity}": {
/**
* Get Exchange Timeseries Metrics
* @description Fetch timeseries metrics for a specific exchange.
*/
get: operations["getExchangeTimeseries"];
};
"/metrics/v1/exchanges/{exchangeIdentifier}": {
/**
* Get Exchange Details
* @description Get detailed information for a specific exchange.
*/
get: operations["getExchange"];
};
"/metrics/v1/exchanges/metrics": {
/**
* List Exchange Metrics
* @description Returns a list of timeseries metrics available for exchanges.
*/
get: operations["getExchangeMetrics"];
};
"/metrics/v1/markets": {
/**
* List Markets
* @description Retrieves a list of markets. Results can be filtered by exchange, quote asset, base asset and 24h volume
*/
get: operations["getMarkets"];
};
"/metrics/v1/markets/{entityIdentifier}/metrics/{datasetSlug}/time-series/{granularity}": {
/**
* Get Market Timeseries Metrics
* @description Fetch timeseries metrics for a specific market.
*/
get: operations["getMarketTimeseries"];
};
"/metrics/v1/markets/{marketIdentifier}": {
/**
* Get Market Details
* @description Fetches the data for a single market based on the marketIdentifier provided
*/
get: operations["getMarket"];
};
"/metrics/v1/markets/metrics": {
/**
* List Market Metrics
* @description Returns a list of timeseries metrics available for markets.
*/
get: operations["getMarketMetrics"];
};
"/metrics/v1/networks": {
/**
* List Networks
* @description List of networks, metadata, and associated onchain metrics snapshot.
*/
get: operations["getNetworks"];
};
"/metrics/v1/networks/{entityIdentifier}/metrics/{datasetSlug}/time-series/{granularity}": {
/**
* Get Network Timeseries Metrics
* @description Fetch timeseries metrics for a specific network.
*/
get: operations["getNetworkTimeseries"];
};
"/metrics/v1/networks/{networkIdentifier}": {
/**
* Get Network Details
* @description Returns a single network based on the identifier
*/
get: operations["getNetwork"];
};
"/metrics/v1/networks/metrics": {
/**
* List Network Metrics
* @description Returns a list of timeseries metrics available for networks.
*/
get: operations["getNetworkMetrics"];
};
"/metrics/v2/assets": {
/**
* Get Asset List (V2)
* @description Get a list of assets with extended information and coverage details.
*/
get: operations["getAssetsV2"];
};
"/metrics/v2/assets/{entityIdentifier}/metrics/{datasetSlug}/time-series": {
/**
* Get Asset Timeseries Data
* @description Get timeseries data for a specific asset and dataset.
* This endpoint is only available for enterprise users.
*/
get: operations["getAssetTimeseries"];
};
"/metrics/v2/assets/{entityIdentifier}/metrics/{datasetSlug}/time-series/{granularity}": {
/**
* Get Asset Timeseries Data with Specific Granularity
* @description Get timeseries data for a specific asset and dataset with a specific time granularity.
* This endpoint is only available for enterprise users.
*/
get: operations["getAssetTimeseriesWithGranularity"];
};
"/metrics/v2/assets/ath": {
/**
* Get Assets All-Time High Information
* @description Get all-time high information for assets, with various filtering options.
*/
get: operations["getAssetsV2ATH"];
};
"/metrics/v2/assets/details": {
/**
* Get Asset Details
* @description Get detailed information for specific assets by IDs or slugs.
*/
get: operations["getAssetDetails"];
};
"/metrics/v2/assets/metrics": {
/**
* Get Assets Timeseries Catalog
* @description Get a catalog of available timeseries datasets and metrics for assets.
* This endpoint is only available for enterprise users.
*/
get: operations["getAssetsTimeseriesCatalog"];
};
"/metrics/v2/assets/roi": {
/**
* Get Assets Return on Investment Information
* @description Get return on investment information for assets, with various filtering options.
*/
get: operations["getAssetsV2ROI"];
};
"/news/v1/news/assets": {
/**
* Get assets mentioned in news
* @description Returns a list of assets that are mentioned in news articles.
* Supports pagination and filtering by asset name or symbol.
*/
get: operations["getNewsFeedAssets"];
};
"/news/v1/news/feed": {
/**
* Get news feed
* @description Returns a list of news articles.
* Supports pagination and filtering by various parameters.
*/
get: operations["getNewsFeed"];
};
"/news/v1/news/sources": {
/**
* Get news sources
* @description Returns a list of news sources.
* Supports pagination and filtering by source name.
*/
get: operations["getNewsSources"];
};
"/research/v1/reports": {
/**
* Get Research Reports
* @description Get a paginated list of research reports.
*/
get: operations["getResearchReports"];
};
"/research/v1/reports/{id}": {
/**
* Get Research Report by ID
* @description Get a research report by its ID.
*/
get: operations["getResearchReportById"];
};
"/research/v1/reports/tags": {
/**
* Get Research Report Tags
* @description Get a list of all tags associated with research reports.
*/
get: operations["getResearchReportTags"];
};
"/token-unlocks/v1/allocations": {
/**
* Get token unlock allocations
* @description Returns allocation information given a set of asset IDs
*/
get: operations["getTokenUnlockAllocations"];
};
"/token-unlocks/v1/assets": {
/**
* Get token unlock supported assets
* @description Get all token unlock supported assets
*/
get: operations["getTokenUnlockSupportedAssets"];
};
"/token-unlocks/v1/assets/{assetId}/events": {
/**
* Get token unlock events
* @description Returns unlock events for a given asset ID
*/
get: operations["getTokenUnlockEvents"];
};
"/token-unlocks/v1/assets/{assetId}/unlocks": {
/**
* Get token unlock unlocks
* @description Returns interval-based unlock timeseries data for a given asset and interval
*/
get: operations["getTokenUnlocks"];
};
"/token-unlocks/v1/assets/{assetId}/vesting-schedule": {
/**
* Get token unlock vesting schedule
* @description Returns vesting schedule timeseries data for a given asset
*/
get: operations["getTokenUnlockVestingSchedule"];
};
"/user-management/v1/api/credits/allowance": {
/**
* Get a team's current credit allowance
* @description Get a team's current credit allowance
*/
get: operations["getTeamAllowance"];
};
"/user-management/v1/api/permissions": {
/**
* Get all permissions with active status
* @description Returns all available permissions with flags indicating which ones are granted to the current user
*/
get: operations["getPermissions"];
};
"/user-management/v1/watchlists": {
/**
* List user's watchlists
* @description Get all watchlists for the authenticated user
*/
get: operations["listWatchlists"];
/**
* Create a new watchlist
* @description Create a new watchlist for the authenticated user
*/
post: operations["createWatchlist"];
};
"/user-management/v1/watchlists/{id}": {
/**
* Get a watchlist
* @description Get a specific watchlist by ID for the authenticated user
*/
get: operations["getWatchlist"];
/**
* Delete a watchlist
* @description Delete a specific watchlist by ID for the authenticated user
*/
delete: operations["deleteWatchlist"];
/**
* Update a watchlist
* @description Update a specific watchlist by ID for the authenticated user
*/
patch: operations["updateWatchlist"];
};
"/user-management/v1/watchlists/{id}/assets": {
/**
* Modify watchlist assets
* @description Modify the assets in a specific watchlist by ID for the authenticated user
*/
patch: operations["modifyWatchlistAssets"];
};
};
export type webhooks = Record<string, never>;
export type components = {
schemas: {
AcquisitionDeal: {
/** @description Entity that is being acquired */
acquiredEntity?: components["schemas"]["FundingEntity"];
/** @description Entity that is acquiring */
acquiringEntity?: components["schemas"]["FundingEntity"];
/**
* Format: date-time
* @description Date when the acquisition deal was announced
*/
announcementDate?: string;
/** @description List of announcements related to the acquisition deal */
announcements?: components["schemas"]["Announcement"][];
/** @description Unique identifier for the acquisition deal */
id?: string;
/** @description Status of the acquisition deal */
status?: components["schemas"]["AcquisitionDealStatus"];
/**
* Format: double
* @description Transaction amount in USD
*/
transactionAmountUSD?: number | null;
};
/**
* @description Status of the acquisition deal
* @enum {string}
*/
AcquisitionDealStatus: "Announced" | "Completed" | "Canceled";
AllowanceInfo: {
creditsAllocated: number;
endDate: string;
id: string;
isActive: boolean;
remainingCredits: number;
startDate: string;
teamId: number;
};
/** @description Announcement details (to be defined) */
Announcement: Record<string, never>;
APIError: {
/**
* @description Error message when something goes wrong
* @example Internal server error, please try again
*/
error: string;
};
/** @description Standard response wrapper. */
APIResponse: {
/** @description Response payload */
data: Record<string, never> | string[];
/** @description Error message if request failed */
error?: string;
};
/**
* @description Standard response wrapper with additional metadata.
* This type should be treated as generic in TypeScript: APIResponseWithMetadata<T, M>.
* T represents the data type, M represents the metadata type.
*/
APIResponseWithMetadata: {
/** @description Response payload */
data: Record<string, never>;
/** @description Error message if request failed */
error?: string;
/** @description Additional metadata about the response */
metadata?: Record<string, never>;
};
Asset: {
/** @description Unique identifier for the asset */
id: string;
/** @description Name of the asset */
name: string;
/** @description Slug of the asset */
slug: string;
/** @description Symbol of the asset */
symbol: string;
};
/** @description List of assets */
AssetList: components["schemas"]["NewsAsset"][];
AssetReport: components["schemas"]["ReportResponse"] & {
/**
* @default asset
* @enum {string}
*/
lookupType?: "asset";
};
AssetV2Link: {
/** @description Name of the link */
name?: string;
/** @description Type of the link */
type: string;
/** @description URL of the link */
url: string;
};
AssetV2MarketData: {
marketcap?: {
/** Format: float */
circulatingUsd?: number;
/** Format: float */
dominance?: number;
/** Format: float */
fullyDilutedUsd?: number;
};
/**
* Format: float
* @description Market capitalization of the asset
*/
marketCap?: number;
ohlcv1HourUsd?: {
/** Format: float */
close?: number;
/** Format: float */
high?: number;
/** Format: float */
low?: number;
/** Format: float */
open?: number;
/** Format: float */
volume?: number;
};
ohlcv24HourUsd?: {
/** Format: float */
close?: number;
/** Format: float */
high?: number;
/** Format: float */
low?: number;
/** Format: float */
open?: number;
/** Format: float */
volume?: number;
};
/**
* Format: float
* @description Current price of the asset
*/
price?: number;
/**
* Format: float
* @description Current price of the asset in BTC
*/
priceBtc?: number;
/**
* Format: float
* @description Current price of the asset in ETH
*/
priceEth?: number;
/**
* Format: float
* @description Current price of the asset in USD
*/
priceUsd?: number;
supply?: {
/** Format: float */
circulating?: number;
/** Format: float */
max?: number;
/** Format: float */
total?: number;
};
/**
* Format: float
* @description 24-hour trading volume of the asset
*/
volume24h?: number;
/**
* Format: float
* @description 24-hour trading volume of the asset
*/
volume24Hour?: number;
};
/** @description Attribution information (placeholder - add specific properties as needed) */
Attribution: Record<string, never>;
Author: {
/** @description Unique identifier for the author */
id: string;
/** @description Image URL of the author */
image: string;
/** @description LinkedIn URL of the author */
linkedinUrl: string;
/** @description Name of the author */
name: string;
};
ChartSource: {
/** @description Unique identifier for the citation */
citationId?: number;
} & components["schemas"]["ChartWidgetSpecification"];
ChartWidgetEntity: {
/** @description Identifier of the entity */
entityId: string;
/** @description Type of the entity */
entityType: string;
};
ChartWidgetSpecification: {
/** @description Dataset identifier */
dataset?: string;
/**
* Format: date-time
* @description End time for the chart data
*/
end?: string;
/** @description Array of entities for the chart */
entities?: components["schemas"]["ChartWidgetEntity"][];
/** @description Data granularity */
granularity?: string;
/** @description The ID for the widget */
id?: number;
/** @description Metric identifier */
metric?: string;
metricTimeseries?: components["schemas"]["TimeseriesResult"];
/**
* Format: date-time
* @description Start time for the chart data
*/
start?: string;
/** @description Tier information */
tier?: string;
};
ChatCompletionMessage: {
/** @description The message content */
content: string;
/**
* @description The role of the message sender
* @enum {string}
*/
role: "system" | "user" | "assistant";
};
ChatCompletionRequest: {
/**
* @description Whether to include inline citations in the response
* @default false
*/
inline_citations?: boolean;
/** @description Array of messages in the conversation */
messages: components["schemas"]["ChatCompletionMessage"][];
/**
* @description Desired format of the response
* @enum {string}
*/
response_format?: "markdown" | "plaintext";
/**
* @description Whether to stream the response
* @default false
*/
stream?: boolean;
/**
* @description Controls how verbose the response should be
* @enum {string}
*/
verbosity?: "succinct" | "balanced" | "verbose";
};
ChatCompletionResponse: {
/** @description Array of response messages */
messages: components["schemas"]["ChatCompletionMessage"][];
};
ChatCompletionResponseChoiceOpenAI: {
delta?: {
/** @description The content of the message */
content?: string;
};
/** @description Reason the completion finished */
finish_reason: string;
/** @description Index of the choice in the array */
index: number;
message: components["schemas"]["ChatCompletionResponseMessageOpenAI"];
};
ChatCompletionResponseMessageOpenAI: {
/** @description The message content */
content: string;
/**
* @description The role of the message sender
* @enum {string}
*/
role: "system" | "user" | "assistant";
};
ChatCompletionResponseMetadata: {
/** @description Current status of the chat completion */
status: string;
};
ChatCompletionResponseMetadataV2: {
/** @description Array of charts referenced in the response */
charts?: components["schemas"]["ChartSource"][];
/** @description Array of sources cited in the response */
cited_sources?: components["schemas"]["StandardSource"][];
/** @description Current status of the chat completion */
status: string;
/**
* Format: uuid
* @description Unique trace ID for the request
*/
trace_id: string;
};
ChatCompletionResponseOpenAI: {
/** @description Array of completion choices */
choices: components["schemas"]["ChatCompletionResponseChoiceOpenAI"][];
/**
* Format: int64
* @description Unix timestamp of when the completion was created
*/
created: number;
/** @description Unique identifier for the completion */
id: string;
metadata?: components["schemas"]["ChatCompletionResponseMetadataV2"];
/** @description The model used for completion */
model: string;
/** @description Object type, always "chat.completion" */
object: string;
};
CreateWatchlistRequest: {
assetIds: string[];
title: string;
};
Document: {
/** @description Assets mentioned in the document */
assets?: components["schemas"]["NewsAsset"][];
/** @description Content of the document */
content?: string;
/**
* Format: uuid
* @description Unique identifier for the document
*/
id: string;
/**
* Format: int64
* @description Published timestamp in milliseconds UTC
*/
publishTimeMillis: number;
/** @description Source of the document */
source?: components["schemas"]["Source"];
/** @description Title of the document */
title: string;
/**
* Format: uri
* @description URL of the document
*/
url?: string;
};
/** @description List of news documents */
DocumentList: components["schemas"]["Document"][];
/** @description Domain information (placeholder - add specific properties as needed) */
Domain: Record<string, never>;
Entity: {
/**
* Format: float
* @description Confidence score of the entity match
*/
confidence?: number;
/** @description Unique identifier for the entity */
id?: string;
/** @description Name of the entity */
name?: string;
type?: components["schemas"]["EntityType"];
};
/**
* @description Type of entity being extracted or referenced
* @enum {string}
*/
EntityType: "acquired_entity" | "acquiring_entity" | "asset" | "x_user" | "funded_entity" | "investor" | "network" | "person" | "exchange" | "organization" | "project" | "protocol" | "nft_collection";
Event: {
/** @description Block number when the event activates */
activationBlock?: number | null;
/** @description Category of the event */
category: string;
/** @description Date when the event occurred or will occur */
eventDate?: string | null;
/** @description Detailed description of the event */
eventDetails: string;
/** @description Name of the event */
eventName: string;
/** @description Whether the event is global */
globalEvent: boolean;
/** @description Unique identifier for the event */
id: string;
/** @description Importance level of the event */
importance: string;
/** @description Primary assets related to the event */
primaryAssets: components["schemas"]["Asset"][];
/** @description Resources related to the event */
resources?: components["schemas"]["Resource"][];
/** @description Secondary assets related to the event */
secondaryAssets?: components["schemas"]["Asset"][];
/** @description Current status of the event */
status: string;
/** @description Subcategory of the event */
subcategory: string;
/**
* Format: date-time
* @description Date when the event was submitted
*/
submissionDate: string;
/** @description Tag associated with the event */
tag: string;
/** @description Details about the latest update to the event */
updateDetails?: string | null;
};
EventHistory: {
/** @description Importance level at this point in history */
importance: string;
/** @description Status at this point in history */
status: string;
/**
* Format: date-time
* @description Date when the history entry was submitted
*/
submissionDate: string;
/** @description Details about the update */
updateDetails?: string | null;
};
Exchange: {
country?: string;
globalRank30D?: number;
/** Format: uuid */
id: string;
metrics: {
assetsCount?: number;
marketsCount?: number;
trades24Hour?: number;
/** Format: float */
volume24Hour?: number;
};
name: string;
region?: string;
relatedExchangeIDs?: string[];
slug: string;
type: string;
typeRank30D?: number;
yearEstablished?: number;
};
/** @description News recap for exchanges */
ExchangeNewsRecap: {
id?: string;
news?: {
id?: string;
publishDate?: string;
sourceId?: string;
sourceName?: string;
title?: string;
url?: string;
}[];
summaries?: {
_category?: number;
references?: {
id?: string;
publishDate?: string;
sourceId?: string;
sourceName?: string;
title?: string;
url?: string;
}[];
summary?: string;
}[];
};
/** @description Performance recap for exchanges */
ExchangePerformanceRecap: {
data?: {
exchangeId?: string;
exchangeName?: string;
exchangeType?: string;
last30DaysVolume?: number;
percentChangeVolume?: number;
previous30DaysVolume?: number;
region?: string;
total30DVolumePercentChangeForAllExchanges?: number;
total30DVolumePercentChangeForExchangeType?: number;
};
id?: string;
summary?: string;
};
/** @description News recap for exchange rankings */
ExchangeRankingsNewsRecap: {
id?: string;
news?: {
id?: string;
publishDate?: string;
sourceId?: string;
sourceName?: string;
title?: string;
url?: string;
}[];
summaries?: {
_category?: number;
references?: {
id?: string;
publishDate?: string;
sourceId?: string;
sourceName?: string;
title?: string;
url?: string;
}[];
summary?: string;
}[];
summary?: string;
};
/** @description Performance recap for exchange rankings */
ExchangeRankingsPerformanceRecap: {
data?: {
/** @description List of top exchanges */
topExchanges?: {
id?: string;
name?: string;
project_id?: string;
slug?: string;
type?: string;
}[];
/** @description List of top listed tokens */
topListedTokens?: {
assetId?: string;
listedCount?: number;
name?: string;
symbol?: string;
}[];
/** @description Volume of top listed tokens */
topListedTokenVolume?: number;
/** @description Total spot trading volumes */
totalSpotVolumes?: number;
};
id?: string;
summary?: string;
};
ExchangeRankingsRecap: {
/**
* Format: uuid
* @description Unique identifier for the recap
*/
id?: string;
/** @description News recap information */
newsRecap?: components["schemas"]["ExchangeRankingsNewsRecap"];
/** @description Performance recap information */
performanceRecap?: components["schemas"]["ExchangeRankingsPerformanceRecap"];
/** @description Brief recap points */
recapBrief?: components["schemas"]["ExchangeRecapPoint"][];
/**
* Format: date-time
* @description Date of the recap
*/
recapDate?: string;
/** @description Time period of the recap */
recapPeriod?: string;
/**
* Format: date-time
* @description Last update timestamp
*/
updatedAt?: string;
};
ExchangeRecap: {
/** @description News recap information */
newsRecap?: components["schemas"]["ExchangeNewsRecap"];
/** @description Performance recap information */
performanceRecap?: components["schemas"]["ExchangePerformanceRecap"];
/** @description Brief recap points */
recapBrief?: components["schemas"]["ExchangeRecapPoint"][];
/**
* Format: date-time
* @description Date of the recap
*/
recapDate?: string;
/** @description Time period of the recap */
recapPeriod?: components["schemas"]["RecapSlug"];
/**
* Format: date-time
* @description Last update timestamp
*/
updatedAt?: string;
};
/** @description A single recap point for exchanges */
ExchangeRecapPoint: {
date?: string;
endDate?: string;
references?: {
id?: string;
publishDate?: string;
sourceId?: string;
sourceName?: string;
title?: string;
url?: string;
}[];
startDate?: string;
summary?: string;
type?: string;
};
ExtractRequest: {
/**
* @description Whether to return all similar entities or just the best matches
* @default false
*/
allSimilarEntities?: boolean;
/** @description Text content to extract entities from */
content: string;
/** @description Types of entities to extract */
entityTypes?: components["schemas"]["EntityType"][];
};
ExtractResponse: {
/** @description List of extracted entities with their matches */
extractedEntities: components["schemas"]["GroupedEntity"][];
};
ExtractResponseMetadata: {
/** @description Current status of the extraction request */
status?: string;
};
/** @description Entity that received funding (to be defined) */
FundingEntity: Record<string, never>;
FundingRound: {
/**
* Format: double
* @description Amount raised in USD
*/
amountRaisedUSD?: number | null;
/**
* Format: date-time
* @description Date when the funding round was announced
*/
announcementDate?: string;
/** @description List of announcements related to the funding round */
announcements?: components["schemas"]["Announcement"][];
/** @description Entity that received the funding */
fundedEntity?: components["schemas"]["FundingEntity"];
/** @description Unique identifier for the funding round */
id?: string;
/** @description Whether the round was funded with tokens */
isTokenFunded?: boolean;
/** @description Stage of the funding round */
stage?: components["schemas"]["FundingRoundStage"];
/** @description Type of the funding round */
type?: components["schemas"]["FundingRoundType"];
};
/**
* @description Stage of the funding round
* @enum {string}
*/
FundingRoundStage: "Seed" | "Early Stage" | "Late Stage" | "Public Equity Offering" | "Post Public Equity" | "Miscellaneous";
/**
* @description Type of the funding round
* @enum {string}
*/
FundingRoundType: "Accelerator" | "Debt Financing" | "Extended Pre Seed" | "Extended Seed" | "Extended Series A" | "Extended Series B" | "Extended Series C" | "Extended Series D" | "Grant" | "ICO" | "IPO" | "Post IPO" | "Post IPO Debt" | "Pre Seed" | "Pre Series A" | "Pre Series B" | "Private Token Sale" | "Public Token Sale" | "Seed" | "Series A" | "Series B" | "Series C" | "Series D" | "Series E" | "Series F" | "Series G" | "Series H" | "Strategic" | "Treasury Diversification" | "Undisclosed";
GetAllEventsRequest: {
/** @description Filter by categories */
category?: string[];
/**
* Format: date-time
* @description Filter events before this time
*/
endTime?: string;
/** @description Filter by whether the event is global */
globalEvent?: boolean | null;
/** @description Filter by importance levels */
importance?: string[];
/**
* @description Number of items per page
* @default 20
*/
limit?: number;
/**
* @description Page number for pagination
* @default 1
*/
page?: number;
/** @description Filter by primary assets */
primaryAssets?: string[];
/** @description Filter by assets that are either primary or secondary */
primaryOrSecondaryAssets?: string[];
/** @description Filter by secondary assets */
secondaryAssets?: string[];
/**
* Format: date-time
* @description Filter events after this time
*/
startTime?: string;
/** @description Filter by status */
status?: string[];
/** @description Filter by subcategories */
subcategory?: string[];
/** @description Filter by tags */
tag?: string[];
};
GetEventResponse: {
/** @description The event details */
event: components["schemas"]["Event"];
/** @description History of the event */
eventHistory: components["schemas"]["EventHistory"][];
};
GetPreviewsResponse: components["schemas"]["ReportResponse"][];
/** @description List of project recaps */
GetProjectRecapResponse: components["schemas"]["ProjectRecapResponse"][];
GroupedEntity: {
/** @description The name extracted from the content */
extractedName?: string;
/** @description The selected/best matching entity if available */
selectedEntity?: components["schemas"]["SelectedEntity"];
/** @description List of similar entities found */
similarEntities?: components["schemas"]["Entity"][];
};
/** @description Intel information response */
IntelResponse: {
metadata?: {
eventId?: string;
eventName?: string;
}[];
summary?: string;
};
Investors: {
/** @description ID of the funding round */
fundingRoundId?: string;
/** @description List of organizations that invested */
organizations?: components["schemas"]["Organization"][];
/** @description List of persons that invested */
persons?: components["schemas"]["Person"][];
/** @description List of projects that invested */
projects?: components["schemas"]["Project"][];
};
Market: {
baseAsset?: {
/** Format: uuid */
id?: string;
name?: string;
slug?: string;
symbol?: string;
};
baseAssetSector?: string;
exchange?: {
/** Format: uuid */
id?: string;
name?: string;
slug?: string;
};
/** Format: date-time */
firstTradeAt?: string;
id?: string;
isNewMarket?: boolean;
isRecentlyListed?: boolean;
/** Format: date-time */
lastTradeAt?: string;
liveness?: string;
metrics?: {
exchangeVolumePercentage24h?: number;
latestPrice24hClose?: number;
latestPrice24hHigh?: number;
latestPrice24hLow?: number;
latestPrice24hOpen?: number;
premiumDiscount?: number;
tradeCount24h?: number;
volume24h?: number;
};
network?: Record<string, never>;
quoteAsset?: {
/** Format: uuid */
id?: string;
name?: string;
slug?: string;
symbol?: string;
};
quoteAssetSector?: string;
sectors?: string[];
};
/** @enum {string} */
ModifyWatchlistAssetsAction: "add" | "remove";
ModifyWatchlistAssetsRequest: {
action: components["schemas"]["ModifyWatchlistAssetsAction"];
assetIds: string[];
watchlistID: string;
};
Network: {
/** Format: uuid */
id?: string;
metrics?: {
addresses?: {
activeAddresses?: number;
newAddresses?: number;
returningAddresses?: number;
};
contracts?: {
activeContracts?: number;
contractCallGasPayers?: number;
contractDeployers?: number;
gasSpenders?: number;
newContractDeployers?: number;
newContractsCalled?: number;
newContractsDeployed?: number;
returningContractsCalled?: number;
totalContractsCalled?: number;
uniqueContractCallers?: number;
};
transactions?: {
successfulTransactions?: number;
totalTransactions?: number;
unsuccessfulTransactions?: number;
};
};
name?: string;
slug?: string;
};
/** @description Network metrics data */
NetworkMetrics: {
active_addresses?: number;
active_addresses_percent_change?: number;
dex_volume?: number;
dex_volume_percent_change?: number;
fee_revenue?: number;
fee_revenue_percent_change?: number;
tvl_percent_change?: number;
tvl_usd?: number;
};
NewsAsset: {
/**
* Format: uuid
* @description Unique identifier for the asset
*/
id: string;
/** @description Name of the asset */
name: string;
/** @description Symbol of the asset */
symbol?: string;
};
/** @description News information response */
NewsResponse: {
metadata?: {
documentId?: string;
documentName?: string;
documentUrl?: string;
sourceId?: string;
sourceName?: string;
sourceType?: string;
}[];
summary?: string;
};
Organization: {
/** @description Category of the organization */
category?: string;
/**
* Format: date-time
* @description When the organization was founded
*/
foundedAt?: string;
/** @description Unique identifier for the organization */
id?: string;
/** @description Location of the organization */
location?: string;
/** @description Name of the organization */
name?: string;
/** @description Sector of the organization */
sector?: string;
/** @description Tags associated with the organization */
tags?: string[];
};
/** @description Pagination metadata for list endpoints */
PaginationResult: {
/**
* @description Whether there are more pages available
* @example true
*/
hasMore?: boolean;
/**
* @description Number of items per page
* @example 20
*/
limit?: number;
/**
* @description Current page number
* @example 1
*/
page?: number;
/**
* @description Total number of items available
* @example 100
*/
total?: number;
};
Permission: {
/** @description Indicates whether the permission is granted to the user */
active: boolean;
name: string;
permissionSlug: string;
};
PermissionsResponse: {
expiresAt: string;
hasAllAccess: boolean;
hasFullMarketDataGranularity: boolean;
permissions: components["schemas"]["Permission"][];
};
/** @description Person details (to be defined) */
Person: Record<string, never>;
PointSchema: {
attribution?: components["schemas"]["Attribution"][];
description?: string;
format?: string;
/** @description Aggregate operation performed for the group */
group_aggregate_operation?: string;
/** @description Deprecated - Use slug instead */
id?: string;
is_timestamp?: boolean;
name?: string;
slug?: string;
subcategory?: string;
/** @description Aggregate operation performed for the time bucket */
time_bucket_aggregate_operation?: string;
};
Project: {
/** @description Category of the project */
category?: string;
/**
* Format: date-time
* @description When the project was founded
*/
foundedAt?: string;
/** @description Unique identifier for the project */
id?: string;
/** @description Name of the project */
name?: string;
/** @description ID of the primary asset associated with the project */
primaryAssetId?: string | null;
/** @description Sector of the project */
sector?: string;
/** @description Tags associated with the project */
tags?: string[];
};
ProjectRecapResponse: {
/** @description Unique identifier for the asset */
asset_id?: string;
/** @description Intel information */
intel?: components["schemas"]["IntelResponse"];
/** @description Count of intel items */
intelCount?: number;
/** @description Network metrics data */
networkMetricsData?: components["schemas"]["NetworkMetrics"];
/** @description News information */
news?: components["schemas"]["NewsResponse"];
/** @description Count of news items */
newsCount?: number;
/** @description Count of proposition items */
propositionCount?: number;
/** @description Propositions information */
propositions?: components["schemas"]["PropositionResponse"];
/**
* Format: date
* @description Date of the recap
*/
recapDate?: string;
/** @description Research information */
research?: components["schemas"]["ResearchResponse"]