Mit diesem SDK können Sie mit der Changelly Fiat-API in JavaScript und TypeScript arbeiten. JavaScript-Entwickler finden eine voll ausgestattete Bibliothek mit praktischen Funktionen zur Automatisierung aller Methodenaufrufe innerhalb der Changelly-Fiat-API; Entwickler, die TypeScript verwenden, finden eine umfassende Definition strikter Typen.
Notiz. Wenn Sie Fragen zur SDK-Integration haben, schreiben Sie uns bitte an [email protected].
Dieses Tutorial führt Sie durch die Grundlagen der Erstellung eines Projekts, das das Changelly Fiat API SDK verwendet.
package.json
zu erstellen: > npm init --y
tsconfig.json
Datei und erhalten Zugriff auf die meisten integrierten Typen für NodeJS: > npm install typescript
> npx tsc --init
> npm install -D @types/node
> npm install @changelly/fiat-api-sdk-node
CHANGELLY_PRIVATE_KEY
und CHANGELLY_PUBLIC_KEY
fest, damit sie nicht in die Quellcodeverwaltung übernommen werden.index.ts
Datei für Ihr Projekt, die einen Changelly Fiat API-Client erstellt: import { ChangellyFiatClient } from "@changelly/fiat-api-sdk-node" ;
const client = new ChangellyFiatClient ( {
privateKey : process . env [ "CHANGELLY_PRIVATE_KEY" ] ,
publicKey : process . env [ "CHANGELLY_PUBLIC_KEY" ] ,
} ) ;
const providers = await client . getProviderList ( ) ;
const currencies = await client . getCurrencyList ( ) ;
console . log ( { providers , currencies } ) ;
Changelly Fiat API Node.js SDK-Klasse.
Erstellen Sie eine ChangellyFiatClient-Instanz.
new ChangellyFiatClient (
params : ChangellyFiatClientParams
) : ChangellyFiatClient
Parameter
Gibt ChangellyFiatClient zurück
Erstellen Sie eine X-API-Signatur.
buildSignature (
params : ChangellyBuildSignatureParams
) : string ;
Parameter
Gibt eine Zeichenfolge zurück: Changelly X-Api-Signatur
Bestellung bestätigen X-Callback-Signatur.
validateOrderCallbackSignature (
signature : string ,
orderId : string
) : boolean ;
Parameter
Gibt einen booleschen Wert zurück – Ist die Rückrufsignatur gültig?
Erhalten Sie erweiterte Informationen über On-Ramp-Anbieter für Benutzer.
getProviderList (
config ?: AxiosRequestConfig
) : Promise < ChangellyGetProviderListResponse [ ] > ;
Parameter
Gibt Promise<ChangellyGetProviderListResponse[]> zurück
Erhalten Sie eine Liste der unterstützten Kryptos und Fiat-Währungen.
getCurrencyList (
params ?: ChangellyGetCurrencyListParams ,
config ?: AxiosRequestConfig
) : Promise < ChangellyGetCurrencyListResponse [ ] > ;
Parameter
Gibt Promise<ChangellyGetCurrencyListResponse[]> zurück
Holen Sie sich eine Liste der Länder, in denen Kryptokäufe unterstützt werden.
getCountryAvailabilityList (
params ?: ChangellyGetCountryAvailabilityParams ,
config ?: AxiosRequestConfig
) : Promise < ChangellyGetCountryAvailabilityResponse [ ] > ;
Parameter
Gibt Promise<ChangellyGetCountryAvailabilityResponse[]> zurück
Erhalten Sie eine Liste der Kaufangebote von On-Ramp-Anbietern.
getOffers (
params : ChangellyGetOffersParams ,
config ?: AxiosRequestConfig
) : Promise < ChangellyGetOffersResponse [ ] > ;
Parameter
Gibt Promise<ChangellyGetOffersResponse[]> zurück
Erstellen Sie eine Krypto-Kaufbestellung und erhalten Sie eine Weiterleitungs-URL zur Kaufseite. Wenn einer der optionalen Parameter in der Anfrage nicht angegeben wird, werden sie in der Antwort mit dem Wert „null“ zurückgegeben.
createOrder (
data : ChangellyCreateOrderParams ,
config ?: AxiosRequestConfig
) : Promise < ChangellyCreateOrderResponse > ;
Parameter
Gibt Promise<ChangellyCreateOrderResponse[]> zurück
Überprüfen Sie, ob die angegebene Wallet-Adresse und die (optionale) zusätzliche ID für die angegebene Währung gültig sind.
validateWalletAddress (
data : ChangellyValidateWalletAddressParams ,
config ?: AxiosRequestConfig
) : Promise < ChangellyValidateWalletAddressResponse > ;
Parameter
Gibt Promise<ChangellyValidateWalletAddressResponse[]> zurück
interface ChangellyFiatClientParams {
publicKey : string ;
privateKey : string ;
callbackPublicKey ?: string ;
baseUrl ?: string ;
}
Eigenschaften
öffentlicher Schlüssel | Zeichenfolge | Öffentlicher Schlüssel der Changelly-Fiat-API. |
privater Schlüssel | Zeichenfolge | Privater Schlüssel der Changelly-Fiat-API. |
callbackPublicKey | Zeichenfolge | (optional) Öffentlicher Changelly-Fiat-API-Callback-Schlüssel. |
baseUrl | Zeichenfolge | (optional) Basis-URL der Changelly Fiat-API. Standardmäßig |
interface ChangellyBuildSignatureParams {
baseUrl ?: string ;
pathname : ChangellyRequestUrl | string ;
params ?:
| ChangellyGetCurrencyListParams
| ChangellyGetCountryAvailabilityParams
| ChangellyGetOffersParams ;
data ?: ChangellyCreateOrderParams | ChangellyValidateWalletAddressParams ;
}
Eigenschaften
baseUrl | Zeichenfolge | (optional) Basis-URL. Standardmäßig |
Pfadname | ChangellyRequestUrl | Zeichenfolge | Adresse anfordern. |
Parameter | ChangellyGetCurrencyListParams | ChangellyGetCountryAvailabilityParams | ChangellyGetOffersParams | (optional) Abfrageparameter anfordern. |
Daten | ChangellyCreateOrderParams | ChangellyValidateWalletAddressParams | (optional) Body-Parameter anfordern. |
interface ChangellyGetProviderListResponse {
code : ChangellyProvider ;
name : string ;
trustPilotRating : string ;
iconUrl : string ;
}
Eigenschaften
Code | ChangellyProvider | On-Ramp-Anbietercode. |
Name | Zeichenfolge | Name des On-Ramp-Anbieters. |
trustPilotRating | Zeichenfolge | Bewertung des Anbieters auf Trustpilot. |
iconUrl | Zeichenfolge | URL des Symbols des On-Ramp-Anbieters. |
interface ChangellyGetCurrencyListParams {
type ?: ChangellyCurrency ;
providerCode ?: ChangellyProvider ;
}
Eigenschaften
Typ | ChangellyCurrency | (optional) Art der Währung. Wenn der Währungstyp nicht angegeben ist, gibt der Endpunkt sowohl Fiat-Währungen als auch Kryptowährungen zurück. |
AnbieterCode | ChangellyProvider | (optional) Der Anbieter, dessen Währungen Sie anzeigen möchten. Wenn der On-Ramp-Anbietercode nicht angegeben ist, gibt der Endpunkt die unterstützten Währungen aller Anbieter zurück. |
interface ChangellyGetCurrencyListResponse {
ticker : string ;
name : string ;
type : ChangellyCurrency ;
extraIdName : string | null ;
iconUrl : string ;
precision : string ;
}
Eigenschaften
Ticker | Zeichenfolge | Währungsticker in Großbuchstaben. Es handelt sich um eine eindeutige Kennung der Währung. |
Name | Zeichenfolge | Währungsname, den Sie in Ihrer Schnittstelle angeben können. |
Typ | ChangellyCurrency | Währungstyp. |
extraIdName | Zeichenfolge | null | Zusätzlicher ID-Name der Kryptowährung, zum Beispiel „Memo“. Erforderlich für folgende Währungen: XRP, XLM, EOS, BNB. Für Fiat-Währungen und Kryptowährungen ohne zusätzliche ID ist extraIdName gleich null. Wenn die Währung eine zusätzliche ID hat, müssen Sie den Parameter |
iconUrl | Zeichenfolge | URL des Währungssymbols. |
Präzision | Zeichenfolge | Währungspräzision. Bei Fiat-Währungen beträgt er immer 2. |
interface ChangellyGetCountryAvailabilityParams {
providerCode ?: ChangellyProvider ;
}
Eigenschaften
(optional) AnbieterCode | ChangellyProvider | (optional) Der Anbieter, dessen Länder Sie anzeigen möchten. Wenn der On-Ramp-Anbietercode nicht angegeben ist, gibt der Endpunkt die unterstützten Länder aller Anbieter zurück. |
interface ChangellyGetCountryAvailabilityResponse {
code : ChangellyProvider ;
name : string ;
states ?: ChangellyState [ ] ;
}
Eigenschaften
Code | ChangellyProvider | On-Ramp-Anbietercode. |
Name | Zeichenfolge | Name des On-Ramp-Anbieters. |
Staaten | ChangellyState [] | (optional) US-Bundesstaaten. Wird zurückgegeben, wenn der Ländercode US ist. |
interface ChangellyGetOffersParams {
providerCode ?: ChangellyProvider ;
externalUserId ?: string ;
currencyFrom : string ;
currencyTo : string ;
amountFrom : string ;
country : string ;
state ?: string ;
ip ?: string ;
}
Eigenschaften
AnbieterCode | ChangellyProvider | (optional) On-Ramp-Anbietercode. |
externalUserId | Zeichenfolge | (optional) Von Ihnen bereitgestellte Benutzer-ID. |
WährungVon | Zeichenfolge | Ticker der Einzahlungswährung in Großbuchstaben. |
WährungTo | Zeichenfolge | Ticker der Auszahlungswährung in Großbuchstaben. |
BetragVon | Zeichenfolge | Währungsbetrag, den der Benutzer zahlen wird. |
Land | Zeichenfolge | Ländercode ISO 3166-1 (Alpha-2). |
Zustand | Zeichenfolge | (optional) Geben Sie den ISO 3166-2-Code an. Ist erforderlich, wenn das angegebene Land die USA ist. |
IP | Zeichenfolge | (optional) IP-Adresse des Benutzers. |
Kann erfolgreich sein und scheitern.
interface Offer {
providerCode : ChangellyProvider ;
rate : string ;
invertedRate : string ;
fee : string ;
amountFrom : string ;
amountExpectedTo : string ;
paymentMethodOffers : ChangellyPaymentMethodOffer [ ] ;
}
Eigenschaften
AnbieterCode | ChangellyProvider | On-Ramp-Anbietercode. |
Rate | Zeichenfolge | Die beste Einkaufsrate unter allen Zahlungsmethoden. Im Preis sind alle Gebühren enthalten. |
invertedRate | Zeichenfolge | Invertierte Kaufrate. |
Gebühr | Zeichenfolge | Der niedrigste Wert der Gesamtkaufgebühr unter allen Zahlungsmethoden. |
BetragVon | Zeichenfolge | Währungsbetrag, den der Benutzer zahlen wird. |
BetragExpectedTo | Zeichenfolge | Der größte Geldbetrag unter allen Zahlungsmethoden, den der Benutzer nach dem Kauf voraussichtlich erhalten wird. |
paymentMethodOffers | ChangellyPaymentMethodOffer [] | Kaufdetails für jede verfügbare Zahlungsart. Andere Zahlungsmethoden als „Karte“ werden später verfügbar sein. |
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 ;
}
Eigenschaften
AnbieterCode | ChangellyProvider | On-Ramp-Anbietercode. |
Fehlertyp | ChangellyErrorType (Timeout, Nicht verfügbar, Limits, Land, Bundesstaat, Währung, PaymentMethod, InvalidOffer) | Fehlertyp. |
errorMessage | Zeichenfolge | Fehlermeldung. |
Fehlerdetails | ChangellyErrorDetails [] | null | Fehlerdetails. Wenn der Fehler keine Details enthält, ist |
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 > ;
} ;
Eigenschaften
externalOrderId | Zeichenfolge | Von Ihnen bereitgestellte Bestell-ID. |
externalUserId | Zeichenfolge | Von Ihnen bereitgestellte Benutzer-ID. |
AnbieterCode | ChangellyProvider | On-Ramp-Anbietercode. |
WährungVon | Zeichenfolge | Ticker der Einzahlungswährung in Großbuchstaben. |
WährungTo | Zeichenfolge | Ticker der Auszahlungswährung in Großbuchstaben. |
BetragVon | Zeichenfolge | Währungsbetrag, den der Benutzer zahlen wird. |
Land | Zeichenfolge | Ländercode ISO 3166-1 (Alpha-2). |
Zustand | Zeichenfolge | (optional) Geben Sie den ISO 3166-2-Code an. Ist erforderlich, wenn das angegebene Land die USA ist. |
IP | Zeichenfolge | (optional) IP-Adresse des Benutzers. |
walletAddress | Zeichenfolge | Empfänger-Wallet-Adresse. Hier sind zwei einfache Anwendungsfälle dieses Parameters:
|
walletExtraId | Zeichenfolge | (optional) Erforderliche Eigenschaft für Wallet-Adressen von Währungen, die eine zusätzliche ID zur Transaktionsverarbeitung verwenden (XRP, XLM, EOS, BNB). |
Zahlungsmethode | ChangellyPaymentMethod | (optional) Der Zahlungsmethodencode. |
userAgent | Zeichenfolge | (optional) Benutzeragent. |
Metadaten | Record<string, unbekannt> | (optional) Metadatenobjekt, das alle benötigten Parameter enthalten kann. |
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 ;
}
Eigenschaften
RedirectUrl | Zeichenfolge | URL zur Kaufseite des Anbieters. |
Bestell-ID | Zeichenfolge | Interne Bestell-ID, bereitgestellt von der Fiat-API. |
externalUserId | Zeichenfolge | Von Ihnen bereitgestellte Benutzer-ID. |
externalOrderId | Zeichenfolge | Von Ihnen bereitgestellte Bestell-ID. |
AnbieterCode | ChangellyProvider | On-Ramp-Anbietercode. |
WährungVon | Zeichenfolge | Ticker der Einzahlungswährung in Großbuchstaben. |
WährungTo | Zeichenfolge | Ticker der Auszahlungswährung in Großbuchstaben. |
BetragVon | Zeichenfolge | Währungsbetrag, den der Benutzer zahlen wird. |
Land | Zeichenfolge | Ländercode ISO 3166-1 (Alpha-2). |
Zustand | Zeichenfolge | null | Geben Sie den ISO 3166-2-Code an. Ist null, wenn das angegebene Land nicht die USA ist. |
IP | Zeichenfolge | null | IP-Adresse des Benutzers. |
walletAddress | Zeichenfolge | Empfänger-Wallet-Adresse. |
walletExtraId | Zeichenfolge | null | Erforderliche Eigenschaft für Wallet-Adressen von Währungen, die eine zusätzliche ID zur Transaktionsverarbeitung verwenden (XRP, XLM, EOS, BNB). |
Zahlungsmethode | ChangellyPaymentMethod | null | Der Zahlungsmethodencode. |
userAgent | Zeichenfolge | null | Benutzeragent. |
Metadaten | Record<string, unbekannt> | null | Metadatenobjekt, das alle benötigten Parameter enthalten kann. Wenn Sie das Metadatenobjekt in der Anfrage nicht angeben, wird in den Metadaten in der Antwort null zurückgegeben. Wenn Sie in der Anfrage ein leeres Objekt angeben, wird in der Antwort ein leeres Objekt zurückgegeben. |
erstellt am | Zeichenfolge | Zeit im ISO 8601-Format. |
interface ChangellyValidateWalletAddressParams {
currency : string ;
walletAddress : string ;
walletExtraId ?: string ;
}
Eigenschaften
Währung | Zeichenfolge | Kryptowährungsticker in Großbuchstaben. |
walletAddress | Zeichenfolge | Empfänger-Wallet-Adresse. |
walletExtraId | Zeichenfolge | (optional) Erforderliche Eigenschaft für Wallet-Adressen von Währungen, die eine zusätzliche ID zur Transaktionsverarbeitung verwenden (XRP, XLM, EOS, BNB). |
interface ChangellyValidateWalletAddressResponse {
result : boolean ;
cause : "walletAddress" | "walletExtraId" | null ;
}
Eigenschaften
Ergebnis | Boolescher Wert | Ist falsch, wenn die Wallet-Adresse oder die zusätzliche ID falsch ist. |
Ursache | "walletAddress" | „walletExtraId“ | null | Gibt an, ob die Wallet-Adresse oder die zusätzliche ID falsch ist. Wenn das Ergebnis wahr ist, ist die Ursache gleich null. |
interface ChangellyState {
code : string ;
name : string ;
}
Eigenschaften
Code | Zeichenfolge | Geben Sie den ISO 3166-2-Code an. |
Name | Zeichenfolge | Staatsname. |
interface ChangellyPaymentMethodOffer {
amountExpectedTo : string ;
method : ChangellyPaymentMethod ;
methodName : string ;
invertedRate : string ;
fee : string ;
}
Eigenschaften
BetragExpectedTo | Zeichenfolge | Der Geldbetrag, den der Benutzer nach dem Kauf voraussichtlich erhalten wird. |
Verfahren | ChangellyPaymentMethod | Der Zahlungsmethodencode. |
Methodenname | Zeichenfolge | Der Name der Zahlungsmethode. |
invertedRate | Zeichenfolge | Aktueller Kaufpreis, der alle Gebühren enthält. |
Gebühr | Zeichenfolge | Gesamtgebühr des Kaufs. |
interface ChangellyErrorDetails {
cause : string ;
value : string ;
}
Eigenschaften
Ursache | Zeichenfolge | Fehlerursache. Beispielsweise kann es dem fehlenden Anforderungsparameter für den Validierungsfehlertyp entsprechen. |
Wert | Zeichenfolge | Fehlerwert. |
enum ChangellyRequestUrl {
ProvderList = "/v1/providers" ,
CurrencyList = "/v1/currencies" ,
CountryAvailability = "/v1/available-countries" ,
GetOffers = "/v1/offers" ,
CreateOrder = "/v1/orders" ,
ValidateWalletAddress = "/v1/validate-address" ,
}
Mitglieder
enum ChangellyProvider {
Moonpay = "moonpay" ,
Banxa = "banxa" ,
Wert = "wert" ,
}
Mitglieder
enum ChangellyCurrency {
Crypto = "crypto" ,
Fiat = "fiat"