General API
Metadata, Search, and Account Information endpoints.
Endpoint: /api/metadata
Get detailed availability information for a specific symbol/timeframe pair, including data completeness and estimated completion date.
| Name | Type | Required | Description |
|---|---|---|---|
symbol | string | Yes | E.g., BTCUSDT |
timeframe | string | Yes | E.g., 1h |
{
"symbol": "BTCUSDT",
"timeframe": "1h",
"firstCandle": "2020-01-01T00:00:00Z",
"lastCandle": "2024-01-01T00:00:00Z",
"totalCandles": 35000,
"completionPercent": "99.98",
"estimatedCompletionDate": "2024-01-02T00:00:00Z"
}import { GeneralApi } from "tickcatcher";
const meta = await new GeneralApi(config).metadata({
symbol: "BTCUSDT",
timeframe: "1h"
});
console.log(`Completion: ${meta.completionPercent}%`);
console.log(`First Candle: ${meta.firstCandle}`);Endpoint: /api/search
Search for available symbols. Useful for building autocomplete fields.
| Name | Type | Required | Description |
|---|---|---|---|
query | string | Yes | Search term (e.g., "BTC", "Solana") |
[
{
"symbol": "BTCUSDT",
"includedIn": ["Basic", "Pro", "Ultra", "Mega", "Enterprise"]
},
{
"symbol": "ETHBTC",
"includedIn": ["Pro", "Mega", "Enterprise"]
}
]import { GeneralApi } from "tickcatcher";
const results = await new GeneralApi(config).search({ query: "BTC" });
results.forEach(r => {
console.log(`${r.symbol} (Available in: ${r.includedIn.join(", ")})`);
});Endpoint: /api/info
Get details about your current subscription tier and limits.
{
"packageName": "Pro",
"usableCoins": ["BTCUSDT", "ETHUSDT", ...],
"maxCandlesOnRequest": 1000,
"usableTimeframes": ["1m", "5m", "15m", "1h", "4h"],
"customDateSelection": false
}import { GeneralApi } from "tickcatcher";
const info = await new GeneralApi(config).info();
console.log(`Plan: ${info.packageName}`);
console.log(`Remaining Candle Limit: ${info.maxCandlesOnRequest}`);