Guía del Desarrollador - API

Visión de Conjunto

Coin2001 ofrece a través de un conjunto de API REST una interfaz simple y poderosa para la administración de la mayoría de las funciones disponibles dentro del sitio. Todas las solicitudes utilizan la aplicación /json como el 'Tipo de contenido' y se operan solo a través de https. El dominio y la URL de acceso a casa, independientemente del país, es https://coin2001.com/api/{version}/. Todas las solicitudes son de tipo 'GET' y se devuelven todas las respuestas de llamada en la forma de un objeto en el campo result. Siempre debe validar que el estado devuelto tiene la etiqueta success para garantizar que la operación realizada fue exitosa.

Se permite crear 100 pedidos abiertos y un total de 50,000 pedidos por día con una frecuencia máxima de 1 pedido cada 5 segundos. Nos reservamos el derecho de cambiar estos parámetros según la conveniencia de la disponibilidad del sistema. Si estos límites interfieren de alguna manera en sus operaciones comerciales, envíenos un correo electrónico a support@coin2001.com.

Si tiene alguna pregunta, comentario o recomendación sobre nuestra API, envíenos un correo electrónico a api@coin2001.com.

Temas

  • Visión de Conjunto
  • Autenticación
  • API - Detallando
  • Bibliotecas

Visión de Conjunto

Esta es una API simple basada en API RESTful. Todas las llamadas deben ser de tipo GET y deben estar conectadas de forma segura mediante https. Hay una plantilla de control de versiones de API que siempre debe estar informada en las llamadas. La versión actual de la API es v1, otras versiones están en desarrollo o en prueba. Los puntos finales tienen la siguiente estructura básica:

https://coin2001.com/api/{version}/{method}?param=valor

Autenticación

Con la filosofía de ser una solución simple, ofrecemos un modelo de autenticación de API simple basado en claves. La generación de claves se basa en el estándar del mercado HMAC-SHA512. Donde siempre se deben proporcionar los parámetros apikey y nonce en cada llamada y el hash calculado con HMAC y enviado en el encabezado con el nombre de apisign. Nota: el parámetro 'nonce' por hora no es obligatorio, pero en versiones futuras será obligatorio.

Las claves públicas y privadas deben obtenerse accediendo a su cuenta y haciendo clic en el enlace 'Datos personales', o accediendo a la URL http://coin2001.com/myAccount/profile

	$apikey='xxx'; // chave pública
	$apisecret='yyy'; // chave privada
	$nonce=time(); // parámetro por hora opcional
	$uri='https://coin2001.com/api/v1/market/getOpenOrders?apikey='.$apikey.'&nonce='.$nonce;
	$sign=hash_hmac('sha512',$uri,$apisecret);
	$ch = curl_init($uri);
	curl_setopt($ch, CURLOPT_HTTPHEADER, array('apisign:'.$sign));
	$execResult = curl_exec($ch);
	$obj = json_decode($execResult);

API - Detallando

Nuestras API están divididas en tres categorías distintas
  • Público: las API de uso público se abren para cualquier usuario y no requieren autenticación.
  • Cuenta: se usa para la administración de cuentas
  • Mercado - Específico para operaciones de trading

API Pública

/public/getMarkets

Se usa para enumerar todos los 'Libros de ofertas' (Market) disponibles en Coin2001. Complementariamente, se proporcionan algunos metadatos.

Parámetros

Ninguna

Solicitud:
https://coin2001.com/api/v1/public/getMarkets
Respuesta
{  
   "success":true,
   "message":"",
   "result":[  
      {  
         "MarketCurrency":"LTC",
         "BaseCurrency":"BTC",
         "MarketCurrencyLong":"Litecoin",
         "BaseCurrencyLong":"Bitcoin",
         "MinTradeSize":0.01000000,
         "MarketName":"BTC-LTC",
         "IsActive":true,
         "Created":"2014-02-13T00:00:00"
      },
      {  
         "MarketCurrency":"DOGE",
         "BaseCurrency":"BTC",
         "MarketCurrencyLong":"Dogecoin",
         "BaseCurrencyLong":"Bitcoin",
         "MinTradeSize":100.00000000,
         "MarketName":"BTC-DOGE",
         "IsActive":true,
         "Created":"2014-02-13T00:00:00"
      }
   ]
}

/public/getCurrencies

Usado para obtener todas las monedas y monedas compatibles con Coin2001. Complementariamente, se proporcionan algunos metadatos.

Parámetros

Ninguna

Solicitud:
https://coin2001.com/api/v1/public/getCurrencies
Respuesta
{  
   "success":true,
   "message":"",
   "result":[  
      {  
         "Currency":"BTC",
         "CurrencyLong":"Bitcoin",
         "MinConfirmation":2,
         "TxFee":0.00020000,
         "IsActive":true,
         "CoinType":"BITCOIN",
         "BaseAddress":null
      },
      {  
         "Currency":"LTC",
         "CurrencyLong":"Litecoin",
         "MinConfirmation":5,
         "TxFee":0.00200000,
         "IsActive":true,
         "CoinType":"BITCOIN",
         "BaseAddress":null
      }
   ]
}



/public/getTicker

Utilizado para obtener la cotización actual del 'Libro de Ofertas' (Mercado).

Parámetros

market (obligatorio) - String literal con el código del 'Libro' (ej: BTC-LTC o BTC_LTC)

Solicitud:
https://coin2001.com/api/v1/public/getTicker
Respuesta
{  
   "success":true,
   "message":"",
   "result":{  
      "Bid":2.05670368,
      "Ask":3.35579531,
      "Last":3.35579531
   }
}



/public/getMarketSummaries

Solía obtener un resumen de actividades en las últimas 24 horas.

Parámetros

Ninguna

Solicitud:
https://coin2001.com/api/v1/public/getMarketSummaries
Respuesta
{  
   "success":true,
   "message":"",
   "result":[  
      {  
         "MarketName":"BTC-888",
         "Name":"888 Coin",
         "Coin":"888",
         "Open":0.00000901,
         "High":0.00000919,
         "Low":0.00000820,
         "Volume":74339.61396015,
         "Last":0.00000820,
         "BaseVolume":0.64966963,
         "TimeStamp":"2014-07-09T07:19:30.15",
         "Bid":0.00000820,
         "Ask":0.00000831,
         "OpenBuyOrders":15,
         "OpenSellOrders":15,
         "PrevDay":0.00000821,
         "Created":"2014-03-20T06:00:00",
         "DisplayMarketName":null
      },
      {  
         "MarketName":"BTC-A3C",
         "Name":"A3C Coin",
         "Coin":"A3C",
         "Open":0.00000020,
         "High":0.00000072,
         "Low":0.00000001,
         "Volume":166340678.42280999,
         "Last":0.00000005,
         "BaseVolume":17.59720424,
         "TimeStamp":"2014-07-09T07:21:40.51",
         "Bid":0.00000004,
         "Ask":0.00000005,
         "OpenBuyOrders":18,
         "OpenSellOrders":18,
         "PrevDay":0.00000002,
         "Created":"2014-05-30T07:57:49.637",
         "DisplayMarketName":null
      }
   ]
}



/public/getMarketSummary

Used to obtain a summary of the activities of a specific 'Book of Offers' in the last 24 hours.

Parámetros

market (obligatorio) - Stringliteral con el código del 'Libro' (ej: BTC-LTC o BTC_LTC)

Solicitud:
https://coin2001.com/api/v1/public/getMarketSummary?market=BTC-LTC
Respuesta
{  
   "success":true,
   "message":"",
   "result":[  
      {  
         "MarketName":"BTC-LTC",
         "Name":"Litecoin",
         "Coin":"LTC",
         "Open":0.01100000,
         "High":0.01350000,
         "Low":0.01200000,
         "Volume":3833.97619253,
         "Last":0.01349998,
         "BaseVolume":47.03987026,
         "TimeStamp":"2014-07-09T07:22:16.72",
         "Bid":0.01271001,
         "Ask":0.01291100,
         "OpenBuyOrders":45,
         "OpenSellOrders":45,
         "PrevDay":0.01229501,
         "Created":"2014-02-13T00:00:00",
         "DisplayMarketName":null
      }
   ]
}



/public/getOrderBook

Usado para obtener el contenido del 'Libro de Ofertas' de un mercado.

Parámetros

market (obligatorio) - String literal with the code of the 'Book' (ex: BTC-LTC or BTC_LTC)
type (obligatorio) - 'buy' para compradores; 'sell' a los vendedores; 'both' para ambos

Solicitud:
https://coin2001.com/api/v1/public/getOrderBook?market=BTC_LTC&type=both
Respuesta
{  
   "success":true,
   "message":"",
   "result":{  
      "buy":[  
         {  
            "Quantity":12.37000000,
            "Rate":0.02525000
         }
      ],
      "sell":[  
         {  
            "Quantity":32.55412402,
            "Rate":0.02540000
         },
         {  
            "Quantity":60.00000000,
            "Rate":0.02550000
         },
         {  
            "Quantity":60.00000000,
            "Rate":0.02575000
         },
         {  
            "Quantity":84.00000000,
            "Rate":0.02600000
         }
      ]
   }
}



/public/getMarketHistory

Se utiliza para devolver las últimas ofertas realizadas en el 'Libro de ofertas' (Mercado).

Parámetros

market (obligatorio) - String literal con el código del 'Libro' (ej: BTC-LTC o BTC_LTC)

Solicitud:
https://coin2001.com/api/v1/public/getMarketHistory?market=BTC-DOGE
Respuesta
{  
   "success":true,
   "message":"",
   "result":[  
      {  
         "Id":319435,
         "TimeStamp":"2014-07-09T03:21:20.08",
         "Quantity":0.30802438,
         "Price":0.01263400,
         "Total":0.00389158,
         "FillType":"FILL",
         "OrderType":"BUY"
      },
      {  
         "Id":319433,
         "TimeStamp":"2014-07-09T03:21:20.08",
         "Quantity":0.31820814,
         "Price":0.01262800,
         "Total":0.00401833,
         "FillType":"PARTIAL_FILL",
         "OrderType":"BUY"
      },
      {  
         "Id":319379,
         "TimeStamp":"2014-07-09T02:58:48.127",
         "Quantity":49.64643541,
         "Price":0.01263200,
         "Total":0.62713377,
         "FillType":"FILL",
         "OrderType":"SELL"
      },
      {  
         "Id":319378,
         "TimeStamp":"2014-07-09T02:58:46.27",
         "Quantity":0.35356459,
         "Price":0.01263200,
         "Total":0.00446622,
         "FillType":"PARTIAL_FILL",
         "OrderType":"BUY"
      }
   ]
}



API - Libro de Ofertas (Mercado)

/market/buyLimit

Se usa para realizar una orden de compra en un 'Libro de ofertas' específico.

Parámetros

Solicitud:
https://coin2001.com/api/v1.1/market/buyLimit?apikey=API_KEY&market=BTC-LTC&quantity=1.2&rate=1.3

market (obligatorio) - String literal con el código del 'Libro' (ej: BTC-LTC o BTC_LTC)
quantity (obligatorio) - Monto a ser comprado
price (obligatorio) - Valor de la unidad que se comprará. Opcionalmente puede usar el parámetro rate

Respuesta
{  
   "success":true,
   "message":"",
   "result":{  
      "uuid":"e606d53c-8d70-11e3-94b5-425861b86ab6"
   }
}



/market/sellLimit

Se usa para realizar un pedido de cliente en un 'Libro de Ofertas' específico.

Parámetros

market (obligatorio) - String literal con el código del 'Libro' (ej: BTC-LTC o BTC_LTC)
quantity (obligatorio) - Monto a ser comprado
price (obligatorio) - Valor de la unidad que se comprará. Opcionalmente puede usar el parámetro rate

Solicitud:
https://coin2001.com/api/v1.1/market/sellLimit?apikey=API_KEY&market=BTC-LTC&quantity=1.2&rate=1.3
Respuesta
{  
   "success":true,
   "message":"",
   "result":{  
      "uuid":"614c34e4-8d71-11e3-94b5-425861b86ab6"
   }
}



/market/cancel

Se utiliza para cancelar un pedido realizado anteriormente en el 'Libro de Ofertas' (Mercado)

Parámetros

uuid (obligatorio) - uuid es el identificador del pedido previamente colocado

Solicitud:
https://coin2001.com/api/v1.1/market/cancel?apikey=API_KEY&uuid=ORDER_UUID
Respuesta
{  
   "success":true,
   "message":"",
   "result":null
}



/market/getOpenOrders

Haga una lista de todos los pedidos realizados (por el usuario) en el 'Libro de Ofertas' (Mercado).

Parámetros

market (obligatorio) - String literal con el código del 'Libro de Ofertas' (Mercado) (ej .: BTC-LTC ou BTC_LTC)

Solicitud:
https://coin2001.com/api/v1.1/market/getOpenOrders?apikey=API_KEY&market=BTC-LTC
Respuesta
{  
   "success":true,
   "message":"",
   "result":[  
      {  
         "Uuid":"SAL-2827-8107-1515589307",
         "Exchange":"BTC-LTC",
         "OrderType":"LIMIT_SELL",
         "Quantity":5.00000000,
         "QuantityRemaining":5.00000000,
         "Limit":2.00000000,
         "Opened":"2014-07-09T03:55:48.77"
      },
      {  
         "Uuid":"PCH-6980-7248-1515589567",
         "Exchange":"BTC-LTC",
         "OrderType":"LIMIT_BUY",
         "Quantity":100000.00000000,
         "QuantityRemaining":100000.00000000,
         "Limit":0.00000001,
         "Opened":"2014-07-09T03:55:48.583"
      }
   ]
}



Cuenta Api

/account/getBalances

Utilizado para devolver todos los saldos a su cuenta.

Parámetros

Ninguna

Solicitud:
https://coin2001.com/api/v1/account/getBalances?apikey=API_KEY
                
Respuesta
{  
   "success":true,
   "message":"",
   "result":[  
      {  
         "Currency":"DOGE",
         "Balance":0.00000000,
         "Available":0.00000000,
         "Pending":0.00000000
      },
      {  
         "Currency":"BTC",
         "Balance":14.21549076,
         "Available":14.21549076,
         "Pending":0.00000000
      }
   ]
}



/account/getBalance

Se usa para devolver el saldo de la cuenta a una moneda específica.

Parámetros

currency (obligatorio) - String literal con el código de 'Moneda' (ej: XRP)

Solicitud:
https://coin2001.com/api/v1/account/getBalance?apikey=API_KEY&currency=XRP
Respuesta
{  
   "success":true,
   "message":"",
   "result":{  
      "Currency":"BTC",
      "Balance":4.21549076,
      "Available":4.21549076,
      "Pending":0.00000000
   }
}