用于 Typescript 和 Javascript 的 Changelly Fiat API SDK
这个SDK允许你和 变化中的菲亚特 API 在JavaScript和TypeScript中。 JavaScript开发者会找到一个功能齐全的库,其功能是方便的,可以将Tangelly fiat API内的所有方法调用自动化;使用TypeScript的开发者会找到对严格类型的丰富定义.
使用这个 SDK
- 联合国 变化中的网站 如果你还没有账户的话.
- 给我们写信 [email protected] (英语) 以获取 API 密钥。 指定您在 Changelly 网站上注册的电子邮件 .
说明. 如果你对SDK的整合有任何疑问, 不要犹豫,给我们写信 [email protected] (英语)。 。 。 .
这个教程会引导您通过创建项目的基础, 使用 Changelly Fiat API SDK .
- 首先运行以下命令以创建默认
package.json文件 :
> npm init --y
- 如果您选择使用TypeScript,现在可以在此工程中添加TypeScript特性. 以下步骤将安装 TypeScript, 创建
tsconfig.json文件,并获取大多数节点JS内置类型:
> npm install typescript
> npx tsc --init
> npm install -D @types/node
- 通过节点包管理器将 Changelly Fiat API SDK 添加到您的项目中 :
> npm install @changelly/fiat-api-sdk-node
- 设置环境变量的 API 密钥, 如
CHANGELLY_PRIVATE_KEY财务报告和审定财务报表CHANGELLY_PUBLIC_KEY以便它不会致力于源控制. - 创建基本
index.ts您创建 Changelly Fiat API 客户端的项目的文件 :
import { ChangellyFiatClient } from "@changelly/fiat-api-sdk-node";
const client = new ChangellyFiatClient({
privateKey: process.env["CHANGELLY_PRIVATE_KEY"],
publicKey: process.env["CHANGELLY_PUBLIC_KEY"],
});
- 拨打API并检查结果 :
const providers = await client.getProviderList();
const currencies = await client.getCurrencyList();
console.log({ providers, currencies });
- 更多信息见 文档。 。 。 .
API 参考
千变万化的密钥
Changelly Fiat API Node.js SDK类.
构造器
创建 ChangellyFiatClient 实例 .
new ChangellyFiatClient(
params: ChangellyFiatClientParams
): ChangellyFiatClient
参数
- 段落数字 : 千变万化的图像
回返 千变万化的密钥
方法
签名
构建 X- Api- 签名 .
buildSignature(
params: ChangellyBuildSignatureParams
): string;
参数
- 段落数字 : Changelly 构建签名程序
回返 字符串 – 变形X- Api 签名
校验命令回调符号
验证命令 X- Callback- Signal.
validateOrderCallbackSignature(
signature: string,
orderId: string
): boolean;
参数
- 签名数字 : 字符串 ——串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行串行.
- 顺序数字 : 字符串 - 更改订单标识符.
回返 布尔 - 回调签名有效吗?
获取提供列表
获取On-Ramp供应商的扩展信息给用户.
getProviderList(
config?: AxiosRequestConfig
): Promise<ChangellyGetProviderListResponse[]>;
参数
- (可选) 配置数字 : Axios 请求配置
回返 承诺 <Changelly 获取保护列表响应[ >]
获取紧急列表
获取所支持的密码和fiat货币列表.
getCurrencyList(
params?: ChangellyGetCurrencyListParams,
config?: AxiosRequestConfig
): Promise<ChangellyGetCurrencyListResponse[]>;
参数
- (可选) 段落数字 : Changelly 获取当前列表
- (可选) 配置数字 : Axios 请求配置
回返 承诺 <变化中获取紧急响应[ >]
获得国家可操作性列表
获取支持加密购买的国家列表 .
getCountryAvailabilityList(
params?: ChangellyGetCountryAvailabilityParams,
config?: AxiosRequestConfig
): Promise<ChangellyGetCountryAvailabilityResponse[]>;
参数
- (可选) 段落数字 : Changelly Get Country AvailableParams 变形器 变形器 变形器 变形器 变形器 变形器 变形器 变形器
- (可选) 配置数字 : Axios 请求配置
回返 承诺 <Changelly Get Country Available Response (英语:Changlly Get Country Available Response) 变相得到国家应答[ >]
获取输出
获取 On-Ramp 供应商的购买报价列表 .
getOffers(
params: ChangellyGetOffersParams,
config?: AxiosRequestConfig
): Promise<ChangellyGetOffersResponse[]>;
参数
- 段落数字 : Changelly Get Offers-Params (英语)
- (可选) 配置数字 : Axios 请求配置
回返 承诺 <变化中获取任务响应[ >]
创建命令
创建加密定购单并获得重定向URL到购买页面. 如果请求中未提供任何可选参数,则会在响应中以"null"值返回.
createOrder(
data: ChangellyCreateOrderParams,
config?: AxiosRequestConfig
): Promise<ChangellyCreateOrderResponse>;
参数
- 数据数字 : 变化中生成命令
- (可选) 配置数字 : Axios 请求配置
回返 承诺 <变化中生成命令响应[ >]
验证钱包地址
检查给定的钱包地址和(可选)额外ID对给定的货币是否有效 .
validateWalletAddress(
data: ChangellyValidateWalletAddressParams,
config?: AxiosRequestConfig
): Promise<ChangellyValidateWalletAddressResponse>;
参数
- 数据数字 : 变化中ValideWallet AddressParams (英语)
- (可选) 配置数字 : Axios 请求配置
回返 承诺 <ChangellValidateWallet 地址地址响应[ >]
类型
- 千变万化的图像
- Changelly 构建签名程序
- Changelly 获取保护列表响应
- Changelly 获取当前列表
- 变化中获取紧急响应
- Changelly Get Country AvailableParams 变形器 变形器 变形器 变形器 变形器 变形器 变形器 变形器
- Changelly Get Country Available Response (英语:Changlly Get Country Available Response) 变相得到国家应答
- Changelly Get Offers-Params (英语)
- 变化中获取任务响应
- 变化中生成命令
- 变化中生成命令响应
- 变化中ValideWallet AddressParams (英语)
- ChangellValidateWallet 地址地址响应
- 变化状态
- Changelly Payment MethodOffer 游戏
- 变化中的错误细节
千变万化的图像
interface ChangellyFiatClientParams {
publicKey: string;
privateKey: string;
callbackPublicKey?: string;
baseUrl?: string;
}
属性
|
公钥 |
字符串 |
Changelly Fiat API 公用钥匙. |
|
私钥 |
字符串 |
Changelly Fiat API 私人密钥. |
|
回调公钥 |
字符串 |
(可选) Changelly Fiat API召回公钥. |
|
基数Url |
字符串 |
(可选) 基 url of Changelly Fiat API. |
Changelly 构建签名程序
interface ChangellyBuildSignatureParams {
baseUrl?: string;
pathname: ChangellyRequestUrl | string;
params?:
| ChangellyGetCurrencyListParams
| ChangellyGetCountryAvailabilityParams
| ChangellyGetOffersParams;
data?: ChangellyCreateOrderParams | ChangellyValidateWalletAddressParams;
}
属性
|
基数Url |
字符串 |
(可选) Base url. |
|
路径名称 |
变化中请求 Url qq 字符串 |
请求地址. |
|
段落 |
Changelly 获取当前列表 | Changelly Get Country AvailableParams 变形器 变形器 变形器 变形器 变形器 变形器 变形器 变形器 | Changelly Get Offers-Params (英语) |
(可选)请求查询参数. |
|
数据 |
(可选)请求正文参数. |
Changelly 获取保护列表响应
interface ChangellyGetProviderListResponse {
code: ChangellyProvider;
name: string;
trustPilotRating: string;
iconUrl: string;
}
属性
|
代码 |
On-Ramp供应商代码. |
|
|
名称 |
字符串 |
上兰普供应商名. |
|
信任页 |
字符串 |
提供商对"信托飞行员"的评分. |
|
图标Url |
字符串 |
On-Ramp 提供者图标的 URL . |
Changelly 获取当前列表
interface ChangellyGetCurrencyListParams {
type?: ChangellyCurrency;
providerCode?: ChangellyProvider;
}
属性
|
类型 |
(可选)货币类型. 如果不指定货币类型,则端点将同时还原无线货币和密码. |
|
|
提供者代码 |
(可选) 您想要查看的货币提供者 。 如果不指定 On-Ramp 提供者代码,端点将返回所有提供者的支持货币. |
变化中获取紧急响应
interface ChangellyGetCurrencyListResponse {
ticker: string;
name: string;
type: ChangellyCurrency;
extraIdName: string | null;
iconUrl: string;
precision: string;
}
属性
|
计数器 |
字符串 |
大写为货币计分符. 它是货币的独特标识. |
|
名称 |
字符串 |
您可以在界面中指定货币名称. |
|
类型 |
货币类型. |
|
|
额外标识Name |
字符串 qq 无效 |
密码货币的额外ID名称,例如"Memo". 要求使用下列货币:XRP、XLM、EOS、BNB。 对于没有额外ID的有线货币和密码,extraIdName等于无效. 如果货币有额外的身份证,你需要提供 |
|
图标Url |
字符串 |
货币图标的 URL. |
|
精确度 |
字符串 |
货币精度. 对于菲亚特货币,它总是等于2. |
Changelly Get Country AvailableParams 变形器 变形器 变形器 变形器 变形器 变形器 变形器 变形器
interface ChangellyGetCountryAvailabilityParams {
providerCode?: ChangellyProvider;
}
属性
|
(可选) 提供者代码 |
(可选) 供养者,由你来观察 如果未指定 On-Ramp 提供者代码, 端点将返回所有提供者的支持国家 . |
Changelly Get Country Available Response (英语:Changlly Get Country Available Response) 变相得到国家应答
interface ChangellyGetCountryAvailabilityResponse {
code: ChangellyProvider;
name: string;
states?: ChangellyState[];
}
属性
|
代码 |
On-Ramp供应商代码. |
|
|
名称 |
字符串 |
上兰普供应商名. |
|
状态 |
变化状态[ |
(可选)美国州. 如果国家的代码是美国,则返回. |
Changelly Get Offers-Params (英语)
interface ChangellyGetOffersParams {
providerCode?: ChangellyProvider;
externalUserId?: string;
currencyFrom: string;
currencyTo: string;
amountFrom: string;
country: string;
state?: string;
ip?: string;
}
属性
|
提供者代码 |
(可选)On-Ramp供应商代码. |
|
|
外部用户 |
字符串 |
(可选)由您提供的用户ID . |
|
货币来源 |
字符串 |
大写中支付货币的车票. |
|
货币到 |
字符串 |
大写中支付货币的计票人. |
|
从 |
字符串 |
用户将支付的货币数额. |
|
国家 |
字符串 |
国家ISO 3166-1代码(Alpha-2). |
|
状态 |
字符串 |
(可选)国家ISO 3166-2代码. 如果提供的国家是美国,则需要这样做. |
|
页:1 |
字符串 |
(可选)用户的IP地址. |
变化中获取任务响应
可以成功而失败.
成功提议
interface Offer {
providerCode: ChangellyProvider;
rate: string;
invertedRate: string;
fee: string;
amountFrom: string;
amountExpectedTo: string;
paymentMethodOffers: ChangellyPaymentMethodOffer[];
}
属性
|
提供者代码 |
On-Ramp供应商代码. |
|
|
费率 |
字符串 |
所有支付方法中的最佳购买率。 费率包括所有费用. |
|
倒转 |
字符串 |
倒置购买率. |
|
收费 |
字符串 |
所有支付方法中购买费总额的最低值. |
|
从 |
字符串 |
用户将支付的货币数额. |
|
数量预期到 |
字符串 |
使用者在购买后预计获得的付款方法中资金数额最大. |
|
支付方法 |
每种付款类型的采购细节。 除"卡"外的支付方法将在后期提供. |
失败的报价
interface Offer {
providerCode: ChangellyProvider;
errorType:
| ChangellyErrorType.Timeout
| ChangellyErrorType.Unavailable
| ChangellyErrorType.Limits
| ChangellyErrorType.Country
| ChangellyErrorType.State
| ChangellyErrorType.Currency
| ChangellyErrorType.PaymentMethod
| ChangellyErrorType.InvalidOffer;
errorMessage: string;
errorDetails: ChangellyErrorDetails[] | null;
}
属性
|
提供者代码 |
On-Ramp供应商代码. |
|
|
错误类型 |
变化中的错误类型 (超时、无可用、限制、国家、状态、货币、支付方法、无效操作) |
错误类型 . |
|
错误 |
字符串 |
错误消息 . |
|
细节 |
变化中的错误细节[ ] 无效 |
错误细节 。 如果错误没有包含细节, |
变化中生成命令
type ChangellyCreateOrderParams = {
externalOrderId: string;
externalUserId: string;
providerCode: ChangellyProvider;
currencyFrom: string;
currencyTo: string;
amountFrom: string;
country: string;
state?: string;
ip?: string;
walletAddress: string;
walletExtraId?: string;
paymentMethod?: ChangellyPaymentMethod;
userAgent?: string;
metadata?: Record<string, unknown>;
};
属性
|
外部命令 |
字符串 |
你提供身份证. |
|
外部用户 |
字符串 |
您提供的用户身份 . |
|
提供者代码 |
On-Ramp供应商代码. |
|
|
货币来源 |
字符串 |
大写中支付货币的车票. |
|
货币到 |
字符串 |
大写中支付货币的计票人. |
|
从 |
字符串 |
用户将支付的货币数额. |
|
国家 |
字符串 |
国家ISO 3166-1代码(Alpha-2). |
|
状态 |
字符串 |
(可选)国家ISO 3166-2代码. 如果提供的国家是美国,则需要这样做. |
|
页:1 |
字符串 |
(可选)用户的IP地址. |
|
钱包地址 |
字符串 |
收件人钱包地址 。 以下是此参数的两个简单使用例:
|
|
钱包外出 |
字符串 |
(可选)使用额外ID进行交易处理的货币钱包地址所需的属性(XRP, XLM, EOS, BNB). |
|
支付方法 |
(可选) 支付方法代码. |
|
|
用户代理 |
字符串 |
(可选)用户代理. |
|
元数据 |
记录 < string, 未知 > |
(可选)元数据对象,可以包含您需要的任何参数. |
变化中生成命令响应
interface ChangellyCreateOrderResponse {
redirectUrl: string;
orderId: string;
externalUserId: string;
externalOrderId: string;
providerCode: ChangellyProvider;
currencyFrom: string;
currencyTo: string;
amountFrom: string;
country: string;
state: string | null;
ip: string | null;
walletAddress: string;
walletExtraId: string | null;
paymentMethod: ChangellyPaymentMethod | null;
userAgent: string | null;
metadata: Record<string, unknown> | null;
createdAt: string;
}
属性
|
重定向 Url |
字符串 |
URL到提供者的购买页面. |
|
顺序 |
字符串 |
菲亚特API提供的内部订单ID. |
|
外部用户 |
字符串 |
您提供的用户身份 . |
|
外部命令 |
字符串 |
你提供身份证. |
|
提供者代码 |
On-Ramp供应商代码. |
|
|
货币来源 |
字符串 |
大写中支付货币的车票. |
|
货币到 |
字符串 |
大写中支付货币的计票人. |
|
从 |
字符串 |
用户将支付的货币数额. |
|
国家 |
字符串 |
国家ISO 3166-1代码(Alpha-2). |
|
状态 |
字符串 qq 无效 |
国家ISO 3166-2代码. 如果提供的国家不是美国,则无效. |
|
页:1 |
字符串 qq 无效 |
用户IP地址. |
|
钱包地址 |
字符串 |
收件人钱包地址 . |
|
钱包外出 |
字符串 qq 无效 |
使用额外ID进行交易处理的货币(XRP,XLM,EOS,BNB)钱包地址所需的属性. |
|
支付方法 |
千变万化支付方法 无效 |
支付方法代码. |
|
用户代理 |
字符串 qq 无效 |
用户代理. |
|
元数据 |
记录 < string, 未知 > 无效 |
元数据对象,可以包含您需要的任何参数 。 如果不在请求中提供元数据对象,则在响应中元数据会返回无效. 如果您在请求中指定了空对象,则在回复中会返回空对象. |
|
创建到 |
字符串 |
时间为ISO 8601格式. |
变化中ValideWallet AddressParams (英语)
interface ChangellyValidateWalletAddressParams {
currency: string;
walletAddress: string;
walletExtraId?: string;
}
属性
|
货币 |
字符串 |
大写中的加密货币计数器. |
|
钱包地址 |
字符串 |
收件人钱包地址 . |
|
钱包外出 |
字符串 |
(可选)使用额外ID进行交易处理的货币钱包地址所需的属性(XRP, XLM, EOS, BNB). |
ChangellValidateWallet 地址地址响应
interface ChangellyValidateWalletAddressResponse {
result: boolean;
cause: "walletAddress" | "walletExtraId" | null;
}
属性
|
结果 |
布尔 |
如果钱包地址或额外ID不正确, 则不正确 . |
|
原因 |
"WalletAddress" "Wallet ExtraId" 无效 |
指定钱包地址或额外ID是否不正确。 如果结果属实,则造成等值无效. |
变化状态
interface ChangellyState {
code: string;
name: string;
}
属性
|
代码 |
字符串 |
国家ISO 3166-2代码. |
|
名称 |
字符串 |
国名. |
Changelly Payment MethodOffer 游戏
interface ChangellyPaymentMethodOffer {
amountExpectedTo: string;
method: ChangellyPaymentMethod;
methodName: string;
invertedRate: string;
fee: string;
}
属性
|
数量预期到 |
字符串 |
购买后用户可望获得的资金数额. |
|
方法 |
支付方法代码. |
|
|
方法Name |
字符串 |
支付法名. |
|
倒转 |
字符串 |
目前的购买费率,包括所有费用. |
|
收费 |
字符串 |
购买费用总额. |
变化中的错误细节
interface ChangellyErrorDetails {
cause: string;
value: string;
}
属性
|
原因 |
字符串 |
错误原因 。 例如,它可以等同验证错误类型的缺失请求参数. |
|
价值 |
字符串 |
错误值 . |
编号
变化中请求 Url
enum ChangellyRequestUrl {
ProvderList = "/v1/providers",
CurrencyList = "/v1/currencies",
CountryAvailability = "/v1/available-countries",
GetOffers = "/v1/offers",
CreateOrder = "/v1/orders",
ValidateWalletAddress = "/v1/validate-address",
}
成员
- 演示列表数字 : “/v1/提供者”
- 货币列表数字 : "/v1/曲线"
- 脆弱性数字 : “/v1/可用国家”
- 获取输入数字 : "/v1/offers" (韩语)
- 创建命令数字 : "/v1/订单"
- 校验钱包地址数字 : "/v1/验证地址"
变化中提供
enum ChangellyProvider {
Moonpay = "moonpay",
Banxa = "banxa",
Wert = "wert",
}
成员
- 月薪数字 : "月薪"(月薪)
- 班克萨数字 : "班克萨"
- 脏数字 : "废物"
变化中
enum ChangellyCurrency {
Crypto = "crypto",
Fiat = "fiat",
}
成员
- 密码数字 : 催眠术
- 菲亚特数字 : "虚构"
变化中的错误类型
enum ChangellyErrorType {
Validation = "validation",
Timeout = "timeout",
Unavailable = "unavailable",
Limits = "limits",
Country = "country",
State = "state",
Currency = "currency",
PaymentMethod = "paymentMethod",
InvalidOffer = "invalidOffer",
Unauthorized = "unauthorized",
TooManyRequests = "tooManyRequests",
InternalServerError = "internalServerError",
}
成员
- 验证数字 : "验证" ——验证错误.
- 超时数字 : "超时" 向提供者提出的请求未在规定时间内完成.
- 无法获取数字 : "没有" ——请求在提供者端失败.
- 限制数字 : "限制" ——指定的实收金额低于或超过有色货币的最高价值.
- 国家数字 : "国家" - 指定国家不由提供者支持.
- 状态数字 : "状态" ——向美国索取报价,但没有提供州参数.
- 货币数字 : "货币" ——指定货币对不由提供者支持.
- 支付方法数字 : "支付方法" - 提供者不支持指定的支付方法.
- 无效操作数字 : "无效的Offer" ——On-Ramp供应商退回无效报价.
- 未经授权数字 : 未经批准 — 未经授权的错误
- 太多请求数字 : "很多请求" — 太多请求出错
- 内务人员错误数字 : "内部服务员" — 内部服务器出错
千变万化支付方法
enum ChangellyPaymentMethod {
Card = "card",
Sepa = "sepa_bank_transfer",
}
成员
- 纸牌数字 : "卡"(卡)
- 塞帕语Name数字 : "sepa bank transfer" (银行转让)