跳到主要内容

域名

Endpoint指的是请求服务的网络域名,比如api.webull.hk对应HTTP API的服务。

不同的服务会使用不同的域名,比如quotes-api.webull.hk对应行情数据服务。

region_id也和Endpoint有关,比如上面两个域名所对应的region_id都是hk(代表香港)。

在使用SDK的过程中,默认已经对Endpoint实现了管理,开发者一般只需要正确设置region_id即可,无需单独设置Endpoint。

HTTP API

用户自定义Endpoint的不同方式

  1. 通过ApiClient进行设置,全局生效,示例代码如下
from webullsdkcore.client import ApiClient

client = ApiClient(app_key="<your_app_key>", app_secret="<your_app_secret>", region_id="<region_id>")
client.add_endpoint("<region_id>", "<endpoint>")
  1. 通过Request进行设置,只对当前Request生效,示例代码如下
from webullsdkmdata.request.get_instruments_request import GetInstrumentsRequest

request = GetInstrumentsRequest()
request.set_endpoint("<endpoint>")

行情订阅

  1. 用户通过设定api_endpoint参数,可以实现自定义gRPC API的Endpoint,示例代码如下
from webullsdkmdata.quotes.subscribe.default_client import DefaultQuotesClient

quotes_client = DefaultQuotesClient(
"<your_app_key>", "<your_app_secret>", "<region_id>", api_endpoint="<api_endpoint>")
  1. 用户通过设定host和port参数,可以实现自定义MQTT协议的Endpoint,示例代码如下
from webullsdkmdata.quotes.subscribe.default_client import DefaultQuotesClient

quotes_client = DefaultQuotesClient(
"<your_app_key>", "<your_app_secret>", "<region_id>")

quotes_client.connect_and_loop_start(host="<host>", port="<port>")

交易事件订阅

用户通过设定host和port参数,可以实现自定义gRPC协议的Endpoint,示例代码如下

from webullsdktradeeventscore.events_client import EventsClient

events_client = EventsClient("<your_app_key>", "<your_app_secret>", region_id="<region_id>", host="<host>", port="<port>")