Skip to main content

Ticker

Gets the latest rates of the specified symbol. After subscribing, tickers start to be sent.

WebSocket Endpoint​

wss://api.coin.z.com/ws/public/v1

Connection Details​

  • A ping will be sent from the server to a client once per minute
  • If there's no response (pong) from a client 3 consecutive times, the WebSocket will be disconnected automatically

Subscribe Message​

Parameters​

Parameter type: JSON

Property NameTypeRequiredAvailable Values
commandstringRequiredsubscribe/unsubscribe
channelstringRequiredticker
symbolstringRequiredThe handling symbols

Example​

{
"command": "subscribe",
"channel": "ticker",
"symbol": "BTC"
}

Response Format​

Fields​

Property NameValueDescription
channelstringticker
askstringThe best indicative price in the current selling orders.
bidstringThe best indicative price in the current buying orders.
highstringThe highest trading price of the day.
laststringThe latest trading price.
lowstringThe lowest trading price of the day.
symbolstringThe handling symbols
timestampstringExecuted timestamp.
volumestringVolume of trade in 24 hours.

Example Response​

{
"channel": "ticker",
"ask": "750760",
"bid": "750600",
"high": "762302",
"last": "756662",
"low": "704874",
"symbol": "BTC",
"timestamp": "2018-03-30T12:34:56.789Z",
"volume": "194785.8484"
}

Note: There is no Response when unsubscribe is requested.

Code Examples​

JavaScript (Node.js)​

const WebSocket = require("ws");
const ws = new WebSocket("wss://api.coin.z.com/ws/public/v1");

ws.on("open", () => {
const message = JSON.stringify({
"command": "subscribe",
"channel": "ticker",
"symbol": "BTC"
});
ws.send(message);
});

ws.on("message", (data) => {
console.log("WebSocket message: ", data);
});

Python​

import json
import websocket

websocket.enableTrace(True)
ws = websocket.WebSocketApp('wss://api.coin.z.com/ws/public/v1')

def on_open(self):
message = {
"command": "subscribe",
"channel": "ticker",
"symbol": "BTC"
}
ws.send(json.dumps(message))

def on_message(self, message):
print(message)

ws.on_open = on_open
ws.on_message = on_message

ws.run_forever()

Go​

package main

import (
"fmt"
"golang.org/x/net/websocket"
"encoding/json"
"bytes"
)

func main() {
wsUrl := "wss://api.coin.z.com/ws/public/v1"
origin := "https://api.coin.z.com"
sendMsg := (`{
"command": "subscribe",
"channel": "ticker",
"symbol": "BTC"
}`)
var receiveMsg string

ws, _ := websocket.Dial(wsUrl, "", origin)
websocket.Message.Send(ws, sendMsg)
for {
websocket.Message.Receive(ws, &receiveMsg)
var buf bytes.Buffer
json.Indent(&buf, []byte(receiveMsg), "", " ")
fmt.Println(buf.String())
}
}

Ruby​

require "faye/websocket"
require "eventmachine"
require 'json'

EM.run {
ws = Faye::WebSocket::Client.new("wss://api.coin.z.com/ws/public/v1")

ws.on :open do |event|
message = {
:command => "subscribe",
:channel => "ticker",
:symbol => 'BTC'
}
ws.send(message.to_json)
end

ws.on :message do |event|
puts event.data
end
}