@messari/sdk
Version:
Messari SDK provides a type-safe, intuitive interface for accessing Messari's suite of crypto data and AI APIs.
399 lines • 13.9 kB
JavaScript
;
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.createWatchlist = exports.listWatchlists = exports.getPermissions = exports.getTeamAllowance = exports.getTokenUnlockEvents = exports.getTokenUnlocks = exports.getTokenUnlockVestingSchedule = exports.getTokenUnlockAllocations = exports.getTokenUnlockSupportedAssets = exports.getProjects = exports.getOrganizations = exports.getAcquisitionDeals = exports.getFundingRoundsInvestors = exports.getFundingRounds = exports.getReportByAssetID = exports.getPreviews = exports.getResearchReportTags = exports.getResearchReportById = exports.getResearchReports = exports.getExchangeRankingsRecap = exports.getExchangeRecap = exports.getProjectRecap = exports.getNewsSources = exports.getNewsFeed = exports.getNewsFeedAssets = exports.getAllAssets = exports.getEventAndHistory = exports.getAllEvents = exports.getNetworkTimeseries = exports.getNetworkMetrics = exports.getNetwork = exports.getNetworks = exports.getMarketTimeseries = exports.getMarketMetrics = exports.getMarket = exports.getMarkets = exports.getExchangeTimeseries = exports.getExchangeMetrics = exports.getExchange = exports.getExchanges = exports.getAssetsV2ROI = exports.getAssetsV2ATH = exports.getAssetTimeseriesWithGranularity = exports.getAssetTimeseries = exports.getAssetsTimeseriesCatalog = exports.getAssetDetails = exports.getAssetsV2 = exports.createChatCompletionOpenAI = exports.extractEntities = exports.createChatCompletion = void 0;
exports.modifyWatchlistAssets = exports.updateWatchlist = exports.getWatchlist = exports.deleteWatchlist = void 0;
exports.createChatCompletion = {
method: 'POST',
pathParams: [],
queryParams: [],
bodyParams: ['messages', 'verbosity', 'response_format', 'inline_citations', 'stream'],
path: () => '/ai/v1/chat/completions'
};
exports.extractEntities = {
method: 'POST',
pathParams: [],
queryParams: [],
bodyParams: ['content', 'entityTypes', 'allSimilarEntities'],
path: () => '/ai/v1/classification/extraction'
};
exports.createChatCompletionOpenAI = {
method: 'POST',
pathParams: [],
queryParams: [],
bodyParams: ['messages', 'verbosity', 'response_format', 'inline_citations', 'stream'],
path: () => '/ai/openai/chat/completions'
};
exports.getAssetsV2 = {
method: 'GET',
pathParams: [],
queryParams: ['category', 'sector', 'tags', 'search', 'limit', 'hasDiligence', 'hasIntel', 'hasMarketData', 'hasNews', 'hasProposals', 'hasResearch', 'hasTokenUnlocks', 'hasFundraising'],
bodyParams: [],
path: () => '/metrics/v2/assets'
};
exports.getAssetDetails = {
method: 'GET',
pathParams: [],
queryParams: ['ids', 'slugs'],
bodyParams: [],
path: () => '/metrics/v2/assets/details'
};
exports.getAssetsTimeseriesCatalog = {
method: 'GET',
pathParams: [],
queryParams: [],
bodyParams: [],
path: () => '/metrics/v2/assets/metrics'
};
exports.getAssetTimeseries = {
method: 'GET',
pathParams: ['entityIdentifier', 'datasetSlug'],
queryParams: ['start', 'end'],
bodyParams: [],
path: (p) => `/metrics/v2/assets/${p.entityIdentifier}/metrics/${p.datasetSlug}/time-series`
};
exports.getAssetTimeseriesWithGranularity = {
method: 'GET',
pathParams: ['entityIdentifier', 'datasetSlug', 'granularity'],
queryParams: ['start', 'end'],
bodyParams: [],
path: (p) => `/metrics/v2/assets/${p.entityIdentifier}/metrics/${p.datasetSlug}/time-series/${p.granularity}`
};
exports.getAssetsV2ATH = {
method: 'GET',
pathParams: [],
queryParams: ['ids', 'slugs', 'category', 'sector', 'tags', 'search', 'limit'],
bodyParams: [],
path: () => '/metrics/v2/assets/ath'
};
exports.getAssetsV2ROI = {
method: 'GET',
pathParams: [],
queryParams: ['ids', 'slugs', 'category', 'sector', 'tags', 'search', 'limit'],
bodyParams: [],
path: () => '/metrics/v2/assets/roi'
};
exports.getExchanges = {
method: 'GET',
pathParams: [],
queryParams: ['type', 'typeRankCutoff', 'page', 'pageSize'],
bodyParams: [],
path: () => '/metrics/v1/exchanges'
};
exports.getExchange = {
method: 'GET',
pathParams: ['exchangeIdentifier'],
queryParams: [],
bodyParams: [],
path: (p) => `/metrics/v1/exchanges/${p.exchangeIdentifier}`
};
exports.getExchangeMetrics = {
method: 'GET',
pathParams: [],
queryParams: [],
bodyParams: [],
path: () => '/metrics/v1/exchanges/metrics'
};
exports.getExchangeTimeseries = {
method: 'GET',
pathParams: ['entityIdentifier', 'datasetSlug', 'granularity'],
queryParams: ['start', 'end'],
bodyParams: [],
path: (p) => `/metrics/v1/exchanges/${p.entityIdentifier}/metrics/${p.datasetSlug}/time-series/${p.granularity}`
};
exports.getMarkets = {
method: 'GET',
pathParams: [],
queryParams: ['exchangeId', 'exchangeSlug', 'quoteAssetId', 'quoteAssetSlug', 'baseAssetId', 'baseAssetSlug', 'volume24hAbove', 'volume24hBelow'],
bodyParams: [],
path: () => '/metrics/v1/markets'
};
exports.getMarket = {
method: 'GET',
pathParams: ['marketIdentifier'],
queryParams: [],
bodyParams: [],
path: (p) => `/metrics/v1/markets/${p.marketIdentifier}`
};
exports.getMarketMetrics = {
method: 'GET',
pathParams: [],
queryParams: [],
bodyParams: [],
path: () => '/metrics/v1/markets/metrics'
};
exports.getMarketTimeseries = {
method: 'GET',
pathParams: ['entityIdentifier', 'datasetSlug', 'granularity'],
queryParams: ['start', 'end'],
bodyParams: [],
path: (p) => `/metrics/v1/markets/${p.entityIdentifier}/metrics/${p.datasetSlug}/time-series/${p.granularity}`
};
exports.getNetworks = {
method: 'GET',
pathParams: [],
queryParams: ['page', 'pageSize'],
bodyParams: [],
path: () => '/metrics/v1/networks'
};
exports.getNetwork = {
method: 'GET',
pathParams: ['networkIdentifier'],
queryParams: [],
bodyParams: [],
path: (p) => `/metrics/v1/networks/${p.networkIdentifier}`
};
exports.getNetworkMetrics = {
method: 'GET',
pathParams: [],
queryParams: [],
bodyParams: [],
path: () => '/metrics/v1/networks/metrics'
};
exports.getNetworkTimeseries = {
method: 'GET',
pathParams: ['entityIdentifier', 'datasetSlug', 'granularity'],
queryParams: ['start', 'end'],
bodyParams: [],
path: (p) => `/metrics/v1/networks/${p.entityIdentifier}/metrics/${p.datasetSlug}/time-series/${p.granularity}`
};
exports.getAllEvents = {
method: 'POST',
pathParams: [],
queryParams: [],
bodyParams: ['page', 'limit', 'primaryAssets', 'secondaryAssets', 'primaryOrSecondaryAssets', 'startTime', 'endTime', 'importance', 'category', 'subcategory', 'tag', 'status', 'globalEvent'],
path: () => '/intel/v1/events'
};
exports.getEventAndHistory = {
method: 'GET',
pathParams: ['eventId'],
queryParams: [],
bodyParams: [],
path: (p) => `/intel/v1/events/${p.eventId}`
};
exports.getAllAssets = {
method: 'GET',
pathParams: [],
queryParams: ['page', 'limit', 'symbol', 'name'],
bodyParams: [],
path: () => '/intel/v1/assets'
};
exports.getNewsFeedAssets = {
method: 'GET',
pathParams: [],
queryParams: ['nameOrSymbol', 'limit', 'page'],
bodyParams: [],
path: () => '/news/v1/news/assets'
};
exports.getNewsFeed = {
method: 'GET',
pathParams: [],
queryParams: ['publishedBefore', 'publishedAfter', 'sourceTypes', 'sourceIds', 'assetIds', 'sort', 'limit', 'page'],
bodyParams: [],
path: () => '/news/v1/news/feed'
};
exports.getNewsSources = {
method: 'GET',
pathParams: [],
queryParams: ['sourceName', 'limit', 'page'],
bodyParams: [],
path: () => '/news/v1/news/sources'
};
exports.getProjectRecap = {
method: 'GET',
pathParams: [],
queryParams: ['project_id'],
bodyParams: [],
path: () => '/ai-digest/api/v1/recap'
};
exports.getExchangeRecap = {
method: 'GET',
pathParams: [],
queryParams: ['exchange_id'],
bodyParams: [],
path: () => '/ai-digest/api/v1/exchange-recap'
};
exports.getExchangeRankingsRecap = {
method: 'GET',
pathParams: [],
queryParams: ['period'],
bodyParams: [],
path: () => '/ai-digest/api/v1/exchange-rankings-recap'
};
exports.getResearchReports = {
method: 'GET',
pathParams: [],
queryParams: ['page', 'limit', 'assetId', 'tags', 'contentType'],
bodyParams: [],
path: () => '/research/v1/reports'
};
exports.getResearchReportById = {
method: 'GET',
pathParams: ['id'],
queryParams: [],
bodyParams: [],
path: (p) => `/research/v1/reports/${p.id}`
};
exports.getResearchReportTags = {
method: 'GET',
pathParams: [],
queryParams: [],
bodyParams: [],
path: () => '/research/v1/reports/tags'
};
exports.getPreviews = {
method: 'GET',
pathParams: [],
queryParams: ['sector', 'isDefaultIncluded', 'isPublished', 'isPurchased', 'sort', 'order'],
bodyParams: [],
path: () => '/diligence/v1/reports/preview'
};
exports.getReportByAssetID = {
method: 'GET',
pathParams: ['assetId'],
queryParams: [],
bodyParams: [],
path: (p) => `/diligence/v1/report/asset/${p.assetId}`
};
exports.getFundingRounds = {
method: 'GET',
pathParams: [],
queryParams: ['fundedEntityId', 'investorId', 'type', 'stage', 'raisedAmountMax', 'raisedAmountMin', 'isTokenFunded', 'announcedBefore', 'announcedAfter', 'page', 'limit'],
bodyParams: [],
path: () => '/funding/v1/rounds'
};
exports.getFundingRoundsInvestors = {
method: 'GET',
pathParams: [],
queryParams: ['fundedEntityId', 'investorId', 'type', 'stage', 'raisedAmountMax', 'raisedAmountMin', 'isTokenFunded', 'announcedBefore', 'announcedAfter', 'page', 'limit'],
bodyParams: [],
path: () => '/funding/v1/rounds/investors'
};
exports.getAcquisitionDeals = {
method: 'GET',
pathParams: [],
queryParams: ['acquiringEntityId', 'acquiredEntityId', 'transactionAmountMin', 'transactionAmountMax', 'announcedBefore', 'announcedAfter', 'page', 'limit'],
bodyParams: [],
path: () => '/funding/v1/mergers-and-acquisitions'
};
exports.getOrganizations = {
method: 'GET',
pathParams: [],
queryParams: ['id', 'category', 'sector', 'tags', 'foundedBefore', 'foundedAfter', 'page', 'limit'],
bodyParams: [],
path: () => '/funding/v1/organizations'
};
exports.getProjects = {
method: 'GET',
pathParams: [],
queryParams: ['id', 'category', 'sector', 'tags', 'foundedBefore', 'foundedAfter', 'page', 'limit'],
bodyParams: [],
path: () => '/funding/v1/projects'
};
exports.getTokenUnlockSupportedAssets = {
method: 'GET',
pathParams: [],
queryParams: ['assetIDs', 'category', 'sectors', 'tags'],
bodyParams: [],
path: () => '/token-unlocks/v1/assets'
};
exports.getTokenUnlockAllocations = {
method: 'GET',
pathParams: [],
queryParams: ['assetIDs'],
bodyParams: [],
path: () => '/token-unlocks/v1/allocations'
};
exports.getTokenUnlockVestingSchedule = {
method: 'GET',
pathParams: ['assetId'],
queryParams: ['startTime', 'endTime'],
bodyParams: [],
path: (p) => `/token-unlocks/v1/assets/${p.assetId}/vesting-schedule`
};
exports.getTokenUnlocks = {
method: 'GET',
pathParams: ['assetId'],
queryParams: ['startTime', 'endTime', 'interval'],
bodyParams: [],
path: (p) => `/token-unlocks/v1/assets/${p.assetId}/unlocks`
};
exports.getTokenUnlockEvents = {
method: 'GET',
pathParams: ['assetId'],
queryParams: ['startTime', 'endTime'],
bodyParams: [],
path: (p) => `/token-unlocks/v1/assets/${p.assetId}/events`
};
exports.getTeamAllowance = {
method: 'GET',
pathParams: [],
queryParams: [],
bodyParams: [],
path: () => '/user-management/v1/api/credits/allowance'
};
exports.getPermissions = {
method: 'GET',
pathParams: [],
queryParams: [],
bodyParams: [],
path: () => '/user-management/v1/api/permissions'
};
exports.listWatchlists = {
method: 'GET',
pathParams: [],
queryParams: [],
bodyParams: [],
path: () => '/user-management/v1/watchlists'
};
exports.createWatchlist = {
method: 'POST',
pathParams: [],
queryParams: [],
bodyParams: ['assetIds', 'title'],
path: () => '/user-management/v1/watchlists'
};
exports.deleteWatchlist = {
method: 'DELETE',
pathParams: ['id'],
queryParams: [],
bodyParams: [],
path: (p) => `/user-management/v1/watchlists/${p.id}`
};
exports.getWatchlist = {
method: 'GET',
pathParams: ['id'],
queryParams: [],
bodyParams: [],
path: (p) => `/user-management/v1/watchlists/${p.id}`
};
exports.updateWatchlist = {
method: 'PATCH',
pathParams: ['id'],
queryParams: [],
bodyParams: ['assetIds', 'title', 'watchlistID'],
path: (p) => `/user-management/v1/watchlists/${p.id}`
};
exports.modifyWatchlistAssets = {
method: 'PATCH',
pathParams: ['id'],
queryParams: [],
bodyParams: ['action', 'assetIds', 'watchlistID'],
path: (p) => `/user-management/v1/watchlists/${p.id}/assets`
};
// Re-export schema types
__exportStar(require("./schema"), exports);
//# sourceMappingURL=index.js.map