Saltar al contenido principal

Listar criptomonedas

Este endpoint devuelve todas las criptomonedas disponibles para su cuenta. Utilice esta ruta para consultar los datos necesarios para crear solicitudes de orden de depósito.


Endpoint​

  • Método: GET
URL del endpoint
https://api.xgateglobal.com/deposit/company/cryptocurrencies

Prueba de integración​

Utilice el formulario a continuación para simular la lista de criptomonedas.

🪙

Probar: Listar Criptomonedas de Depósito

1. Sus Credenciales

Solicitud​

La solicitud no requiere cuerpo, solo los encabezados de autenticación.

Encabezados obligatorios​

EncabezadoValorDescripción
AuthorizationBearer <tu_token>El token JWT obtenido al iniciar sesión.

Respuestas​

Éxito (200 OK)​

Devuelve una lista (array) de objetos, donde cada objeto es una criptomoneda.

[
{
"_id": "67339b18ca5**************",
"name": "USDT",
"symbol": "USDT",
"coinGecko": "tether",
"updatedDate": "2024-1**************",
"createdDate": "2024-1**************",
"__v": 0,
"uid": "01KH7K88H**************"
},
{
"_id": "67339b2bca5**************",
"name": "USDC",
"symbol": "USDC",
"coinGecko": "usdc",
"updatedDate": "2024-1**************",
"createdDate": "2024-1**************",
"__v": 0,
"uid": "01KH7K4C0BZ**************"
}
]

Errores comunes​

EstadoMensajePosible causa
401Unauthorized• Token inválido o vencido.
• Encabezado inválido o faltante.
• IP no permitida.
500Internal Server ErrorError interno del servidor. Contacte con soporte.

Cómo usar​

El propósito principal de listar criptomonedas es permitir seleccionar la criptomoneda correcta para crear una orden de depósito (Deposit Order).

La respuesta de este endpoint proporciona el objeto completo de la criptomoneda, lo que permite construir el payload de creación de la orden.

Flujo de integración​

  1. Listar las monedas: Llame a este endpoint (GET /deposit/company/cryptocurrencies).
  2. Selección: Identifique la criptomoneda deseada en la lista (normalmente filtrando por name o symbol, por ejemplo, "USDT").
  3. Envío: Debe pasar el objeto dentro de la propiedad cryptocurrency en el payload de creación de la orden de depósito. En la documentación de creación de depósito en criptomonedas, se muestran los valores obligatorios.

Ejemplo práctico​

1. Lo que recibe al listar las criptomonedas:

[
{
"_id": "67339b18ca5**************",
"name": "USDT",
"symbol": "USDT",
"coinGecko": "tether",
"updatedDate": "2024-1**************",
"createdDate": "2024-1**************",
"__v": 0,
"uid": "01KH7K88H**************"
},
{
"_id": "67339b2bca5**************",
"name": "USDC",
"symbol": "USDC",
"coinGecko": "usdc",
"updatedDate": "2024-1**************",
"createdDate": "2024-1**************",
"__v": 0,
"uid": "01KH7K4C0BZ**************"
}
]

2. Cómo debe enviarlo en el depósito (POST /deposit):

Tomará el objeto anterior y lo insertará dentro de cryptocurrency:

{
"amount": 2,
"customerId": "672f40**************",
"currency": {
"_id": "6728f0a2cb************",
"name": "BRL",
"type": "PIX",
"createdDate": "2024-1************",
"updatedDate": "2026-0************",
"__v": 0,
"symbol": "R$"
},
"cryptocurrency": {
"_id": "67339b2bca5**************",
"name": "USDC",
"symbol": "USDC",
"coinGecko": "usdc",
"updatedDate": "2024-1**************",
"createdDate": "2024-1**************",
"__v": 0,
"uid": "01KH7K4C0BZ**************"
},
"externalId": "67ce09d**************"
}

Cada parte de este JSON se explicará en la página de creación de orden de depósito en criptomonedas.


Integración​

Este ejemplo de integración utiliza la librería Axios en Node.js.

Instalando Axios:

npm install axios

Ejemplo en JavaScript:

const axios = require("axios");

(async () => {
const email = "your_email@domain.com";
const password = "**********";

try {
const url_api = "https://api.xgateglobal.com"
const login = await axios.post(`${url_api}/auth/token`, { email, password });
const { data } = await axios.get(`${url_api}/deposit/company/cryptocurrencies`, {
headers: {
"Authorization": `Bearer ${login.data.token}`
}
});
console.log(data); // Respuesta
} catch (error) {
console.log(error.response.data.message) // Error
}
})()