mirror of
https://github.com/hanzoai/gateway.git
synced 2026-10-30 15:04:44 +00:00
The primary-network chains answer to either case; one spelling beats two. /v1/chain/c/rpc, /v1/chain/p, /v1/chain/x across the estate. Co-authored-by: Hanzo Dev <[email protected]>
302 lines
6.2 KiB
JSON
302 lines
6.2 KiB
JSON
{
|
|
"$schema": "https://gateway.hanzo.ai/schema/v3.json",
|
|
"version": 3,
|
|
"name": "Lux API Gateway",
|
|
"port": 8080,
|
|
"timeout": "30s",
|
|
"cache_ttl": "0s",
|
|
"output_encoding": "no-op",
|
|
"extra_config": {
|
|
"router": {
|
|
"return_error_msg": true
|
|
},
|
|
"qos/ratelimit/router": {
|
|
"max_rate": 1000,
|
|
"client_max_rate": 100,
|
|
"strategy": "ip"
|
|
}
|
|
},
|
|
"endpoints": [
|
|
{
|
|
"endpoint": "/v1/chain/c/rpc",
|
|
"method": "POST",
|
|
"input_headers": [
|
|
"*"
|
|
],
|
|
"output_encoding": "no-op",
|
|
"backend": [
|
|
{
|
|
"url_pattern": "/v1/chain/c/rpc",
|
|
"host": [
|
|
"http://luxd.lux-mainnet.svc.cluster.local:9630"
|
|
],
|
|
"encoding": "no-op"
|
|
}
|
|
],
|
|
"extra_config": {
|
|
"auth/public": true
|
|
}
|
|
},
|
|
{
|
|
"endpoint": "/v1/chain/c/ws",
|
|
"method": "GET",
|
|
"input_headers": [
|
|
"*"
|
|
],
|
|
"output_encoding": "no-op",
|
|
"backend": [
|
|
{
|
|
"url_pattern": "/v1/chain/c/ws",
|
|
"host": [
|
|
"http://luxd.lux-mainnet.svc.cluster.local:9630"
|
|
],
|
|
"encoding": "no-op"
|
|
}
|
|
],
|
|
"extra_config": {
|
|
"auth/public": true
|
|
}
|
|
},
|
|
{
|
|
"endpoint": "/v1/chain/x",
|
|
"method": "POST",
|
|
"input_headers": [
|
|
"*"
|
|
],
|
|
"output_encoding": "no-op",
|
|
"backend": [
|
|
{
|
|
"url_pattern": "/v1/chain/x",
|
|
"host": [
|
|
"http://luxd.lux-mainnet.svc.cluster.local:9630"
|
|
],
|
|
"encoding": "no-op"
|
|
}
|
|
],
|
|
"extra_config": {
|
|
"auth/public": true
|
|
}
|
|
},
|
|
{
|
|
"endpoint": "/v1/chain/p",
|
|
"method": "POST",
|
|
"input_headers": [
|
|
"*"
|
|
],
|
|
"output_encoding": "no-op",
|
|
"backend": [
|
|
{
|
|
"url_pattern": "/v1/chain/p",
|
|
"host": [
|
|
"http://luxd.lux-mainnet.svc.cluster.local:9630"
|
|
],
|
|
"encoding": "no-op"
|
|
}
|
|
],
|
|
"extra_config": {
|
|
"auth/public": true
|
|
}
|
|
},
|
|
{
|
|
"endpoint": "/v1/info",
|
|
"method": "POST",
|
|
"input_headers": [
|
|
"*"
|
|
],
|
|
"output_encoding": "no-op",
|
|
"backend": [
|
|
{
|
|
"url_pattern": "/v1/info",
|
|
"host": [
|
|
"http://luxd.lux-mainnet.svc.cluster.local:9630"
|
|
],
|
|
"encoding": "no-op"
|
|
}
|
|
],
|
|
"extra_config": {
|
|
"auth/public": true
|
|
}
|
|
},
|
|
{
|
|
"endpoint": "/v1/health",
|
|
"method": "GET",
|
|
"input_headers": [
|
|
"*"
|
|
],
|
|
"output_encoding": "no-op",
|
|
"backend": [
|
|
{
|
|
"url_pattern": "/v1/health",
|
|
"host": [
|
|
"http://luxd.lux-mainnet.svc.cluster.local:9630"
|
|
],
|
|
"encoding": "no-op"
|
|
}
|
|
],
|
|
"extra_config": {
|
|
"auth/public": true
|
|
}
|
|
},
|
|
{
|
|
"endpoint": "/v1/keystore",
|
|
"method": "POST",
|
|
"input_headers": [
|
|
"*"
|
|
],
|
|
"output_encoding": "no-op",
|
|
"backend": [
|
|
{
|
|
"url_pattern": "/v1/keystore",
|
|
"host": [
|
|
"http://luxd.lux-mainnet.svc.cluster.local:9630"
|
|
],
|
|
"encoding": "no-op"
|
|
}
|
|
],
|
|
"extra_config": {
|
|
"auth/public": false
|
|
}
|
|
},
|
|
{
|
|
"endpoint": "/v1/index/C/block",
|
|
"method": "POST",
|
|
"input_headers": [
|
|
"*"
|
|
],
|
|
"output_encoding": "no-op",
|
|
"backend": [
|
|
{
|
|
"url_pattern": "/v1/index/C/block",
|
|
"host": [
|
|
"http://luxd.lux-mainnet.svc.cluster.local:9630"
|
|
],
|
|
"encoding": "no-op"
|
|
}
|
|
],
|
|
"extra_config": {
|
|
"auth/public": true
|
|
}
|
|
},
|
|
{
|
|
"endpoint": "/v1/index/C/tx",
|
|
"method": "POST",
|
|
"input_headers": [
|
|
"*"
|
|
],
|
|
"output_encoding": "no-op",
|
|
"backend": [
|
|
{
|
|
"url_pattern": "/v1/index/C/tx",
|
|
"host": [
|
|
"http://luxd.lux-mainnet.svc.cluster.local:9630"
|
|
],
|
|
"encoding": "no-op"
|
|
}
|
|
],
|
|
"extra_config": {
|
|
"auth/public": true
|
|
}
|
|
},
|
|
{
|
|
"endpoint": "/v1/index/X/tx",
|
|
"method": "POST",
|
|
"input_headers": [
|
|
"*"
|
|
],
|
|
"output_encoding": "no-op",
|
|
"backend": [
|
|
{
|
|
"url_pattern": "/v1/index/X/tx",
|
|
"host": [
|
|
"http://luxd.lux-mainnet.svc.cluster.local:9630"
|
|
],
|
|
"encoding": "no-op"
|
|
}
|
|
],
|
|
"extra_config": {
|
|
"auth/public": true
|
|
}
|
|
},
|
|
{
|
|
"endpoint": "/v1/index/P/block",
|
|
"method": "POST",
|
|
"input_headers": [
|
|
"*"
|
|
],
|
|
"output_encoding": "no-op",
|
|
"backend": [
|
|
{
|
|
"url_pattern": "/v1/index/P/block",
|
|
"host": [
|
|
"http://luxd.lux-mainnet.svc.cluster.local:9630"
|
|
],
|
|
"encoding": "no-op"
|
|
}
|
|
],
|
|
"extra_config": {
|
|
"auth/public": true
|
|
}
|
|
},
|
|
{
|
|
"endpoint": "/v1/index/P/tx",
|
|
"method": "POST",
|
|
"input_headers": [
|
|
"*"
|
|
],
|
|
"output_encoding": "no-op",
|
|
"backend": [
|
|
{
|
|
"url_pattern": "/v1/index/P/tx",
|
|
"host": [
|
|
"http://luxd.lux-mainnet.svc.cluster.local:9630"
|
|
],
|
|
"encoding": "no-op"
|
|
}
|
|
],
|
|
"extra_config": {
|
|
"auth/public": true
|
|
}
|
|
},
|
|
{
|
|
"endpoint": "/v1/metrics",
|
|
"method": "GET",
|
|
"input_headers": [
|
|
"*"
|
|
],
|
|
"output_encoding": "no-op",
|
|
"backend": [
|
|
{
|
|
"url_pattern": "/v1/metrics",
|
|
"host": [
|
|
"http://luxd.lux-mainnet.svc.cluster.local:9630"
|
|
],
|
|
"encoding": "no-op"
|
|
}
|
|
],
|
|
"extra_config": {
|
|
"auth/public": false
|
|
}
|
|
},
|
|
{
|
|
"endpoint": "/v1/admin",
|
|
"method": "POST",
|
|
"input_headers": [
|
|
"*"
|
|
],
|
|
"output_encoding": "no-op",
|
|
"backend": [
|
|
{
|
|
"url_pattern": "/v1/admin",
|
|
"host": [
|
|
"http://luxd.lux-mainnet.svc.cluster.local:9630"
|
|
],
|
|
"encoding": "no-op"
|
|
}
|
|
],
|
|
"extra_config": {
|
|
"auth/public": false
|
|
}
|
|
}
|
|
]
|
|
}
|