@binance/c2c
Version:
Official Binance C2C Connector - A lightweight library that provides a convenient interface to Binance's C2C REST API.
210 lines (203 loc) • 6.91 kB
JavaScript
var __defProp = Object.defineProperty;
var __export = (target, all) => {
for (var name2 in all)
__defProp(target, name2, { get: all[name2], enumerable: true });
};
// src/c2c.ts
import { buildUserAgent, ConfigurationRestAPI as ConfigurationRestAPI3, C2C_REST_API_PROD_URL } from "@binance/common";
// package.json
var name = "@binance/c2c";
var version = "2.0.7";
// src/rest-api/index.ts
var rest_api_exports = {};
__export(rest_api_exports, {
C2CApi: () => C2CApi,
RestAPI: () => RestAPI
});
// src/rest-api/modules/c2-capi.ts
import {
sendRequest
} from "@binance/common";
var C2CApiAxiosParamCreator = function(configuration) {
return {
/**
* Get C2C Trade History
*
* The max interval between startTime and endTime is 30 days.
* If startTime and endTime are not sent, the recent 7 days' data will be returned.
* The earliest startTime is supported on June 10, 2020
* Return up to 200 records per request.
*
* Weight: 1
*
* @summary Get C2C Trade History (USER_DATA)
* @param {number} [startTime]
* @param {number} [endTime]
* @param {number} [page] Default 1
* @param {number} [recvWindow]
*
* @throws {RequiredError}
*/
getC2CTradeHistory: async (startTime, endTime, page, recvWindow) => {
const localVarQueryParameter = {};
if (startTime !== void 0 && startTime !== null) {
localVarQueryParameter["startTime"] = startTime;
}
if (endTime !== void 0 && endTime !== null) {
localVarQueryParameter["endTime"] = endTime;
}
if (page !== void 0 && page !== null) {
localVarQueryParameter["page"] = page;
}
if (recvWindow !== void 0 && recvWindow !== null) {
localVarQueryParameter["recvWindow"] = recvWindow;
}
let _timeUnit;
if ("timeUnit" in configuration) _timeUnit = configuration.timeUnit;
return {
endpoint: "/sapi/v1/c2c/orderMatch/listUserOrderHistory",
method: "GET",
params: localVarQueryParameter,
timeUnit: _timeUnit
};
}
};
};
var C2CApi = class {
constructor(configuration) {
this.configuration = configuration;
this.localVarAxiosParamCreator = C2CApiAxiosParamCreator(configuration);
}
/**
* Get C2C Trade History
*
* The max interval between startTime and endTime is 30 days.
* If startTime and endTime are not sent, the recent 7 days' data will be returned.
* The earliest startTime is supported on June 10, 2020
* Return up to 200 records per request.
*
* Weight: 1
*
* @summary Get C2C Trade History (USER_DATA)
* @param {GetC2CTradeHistoryRequest} requestParameters Request parameters.
* @returns {Promise<RestApiResponse<GetC2CTradeHistoryResponse>>}
* @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
* @memberof C2CApi
* @see {@link https://developers.binance.com/docs/c2c/rest-api/Get-C2C-Trade-History Binance API Documentation}
*/
async getC2CTradeHistory(requestParameters = {}) {
const localVarAxiosArgs = await this.localVarAxiosParamCreator.getC2CTradeHistory(
requestParameters?.startTime,
requestParameters?.endTime,
requestParameters?.page,
requestParameters?.recvWindow
);
return sendRequest(
this.configuration,
localVarAxiosArgs.endpoint,
localVarAxiosArgs.method,
localVarAxiosArgs.params,
localVarAxiosArgs?.timeUnit,
{ isSigned: true }
);
}
};
// src/rest-api/rest-api.ts
import { sendRequest as sendRequest2 } from "@binance/common";
var RestAPI = class {
constructor(configuration) {
this.configuration = configuration;
this.c2CApi = new C2CApi(configuration);
}
/**
* Generic function to send a request.
* @param endpoint - The API endpoint to call.
* @param method - HTTP method to use (GET, POST, DELETE, etc.).
* @param params - Query parameters for the request.
*
* @returns A promise resolving to the response data object.
*/
sendRequest(endpoint, method, params = {}) {
return sendRequest2(this.configuration, endpoint, method, params, void 0);
}
/**
* Generic function to send a signed request.
* @param endpoint - The API endpoint to call.
* @param method - HTTP method to use (GET, POST, DELETE, etc.).
* @param params - Query parameters for the request.
*
* @returns A promise resolving to the response data object.
*/
sendSignedRequest(endpoint, method, params = {}) {
return sendRequest2(this.configuration, endpoint, method, params, void 0, {
isSigned: true
});
}
/**
* Get C2C Trade History
*
* The max interval between startTime and endTime is 30 days.
* If startTime and endTime are not sent, the recent 7 days' data will be returned.
* The earliest startTime is supported on June 10, 2020
* Return up to 200 records per request.
*
* Weight: 1
*
* @summary Get C2C Trade History (USER_DATA)
* @param {GetC2CTradeHistoryRequest} requestParameters Request parameters.
* @returns {Promise<RestApiResponse<GetC2CTradeHistoryResponse>>}
* @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
* @see {@link https://developers.binance.com/docs/c2c/rest-api/Get-C2C-Trade-History Binance API Documentation}
*/
getC2CTradeHistory(requestParameters = {}) {
return this.c2CApi.getC2CTradeHistory(requestParameters);
}
};
// src/c2c.ts
var C2C = class {
constructor(config) {
const userAgent = buildUserAgent(name, version);
if (config?.configurationRestAPI) {
const configRestAPI = new ConfigurationRestAPI3(
config.configurationRestAPI
);
configRestAPI.basePath = configRestAPI.basePath || C2C_REST_API_PROD_URL;
configRestAPI.baseOptions = configRestAPI.baseOptions || {};
configRestAPI.baseOptions.headers = {
...configRestAPI.baseOptions.headers || {},
"User-Agent": userAgent
};
this.restAPI = new RestAPI(configRestAPI);
}
}
};
// src/index.ts
import {
C2C_REST_API_PROD_URL as C2C_REST_API_PROD_URL2,
ConnectorClientError,
RequiredError,
UnauthorizedError,
ForbiddenError,
TooManyRequestsError,
RateLimitBanError,
ServerError,
NetworkError,
NotFoundError,
BadRequestError
} from "@binance/common";
export {
BadRequestError,
C2C,
rest_api_exports as C2CRestAPI,
C2C_REST_API_PROD_URL2 as C2C_REST_API_PROD_URL,
ConnectorClientError,
ForbiddenError,
NetworkError,
NotFoundError,
RateLimitBanError,
RequiredError,
ServerError,
TooManyRequestsError,
UnauthorizedError
};
//# sourceMappingURL=index.mjs.map