v0.2.11-pre.009
This commit is contained in:
43
config/examples/std.offchain_transport.example.json
Normal file
43
config/examples/std.offchain_transport.example.json
Normal file
@@ -0,0 +1,43 @@
|
||||
{
|
||||
"format_version": 1,
|
||||
"default_profile": "custom_free",
|
||||
"profiles": [
|
||||
{
|
||||
"profile_id": "custom_free",
|
||||
"market_price": {
|
||||
"birdeye": {
|
||||
"enabled": true,
|
||||
"api_key": "${KSP_SECRET_BIRDEYE_API_KEY}"
|
||||
},
|
||||
"coinbase_exchange": {
|
||||
"enabled": true
|
||||
},
|
||||
"coingecko": {
|
||||
"enabled": true,
|
||||
"access_mode": "demo",
|
||||
"api_key": "${KSP_SECRET_COINGECKO_DEMO_API_KEY}"
|
||||
},
|
||||
"coinmarketcap": {
|
||||
"enabled": true,
|
||||
"access_mode": "basic",
|
||||
"api_key": "${KSP_SECRET_COINMARKETCAP_API_KEY}"
|
||||
},
|
||||
"coinpaprika": {
|
||||
"enabled": true
|
||||
},
|
||||
"dexscreener": {
|
||||
"enabled": true,
|
||||
"sol_usd_pair_address": "${KSP_PUBLIC_DEXSCREENER_SOL_USD_PAIR_ADDRESS}"
|
||||
},
|
||||
"jupiter": {
|
||||
"enabled": true,
|
||||
"access_mode": "free",
|
||||
"api_key": "${KSP_SECRET_JUPITER_API_KEY}"
|
||||
},
|
||||
"kraken": {
|
||||
"enabled": true
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
366
config/schemas/std.offchain_transport.schema.json
Normal file
366
config/schemas/std.offchain_transport.schema.json
Normal file
@@ -0,0 +1,366 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "urn:ksp:schema:std.offchain_transport:v1",
|
||||
"title": "KSP standard Off-chain Transport configuration",
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"required": [
|
||||
"format_version",
|
||||
"default_profile",
|
||||
"profiles"
|
||||
],
|
||||
"properties": {
|
||||
"format_version": {
|
||||
"const": 1
|
||||
},
|
||||
"default_profile": {
|
||||
"$ref": "#/$defs/profileId"
|
||||
},
|
||||
"profiles": {
|
||||
"type": "array",
|
||||
"minItems": 1,
|
||||
"items": {
|
||||
"$ref": "#/$defs/profile"
|
||||
}
|
||||
}
|
||||
},
|
||||
"$defs": {
|
||||
"profileId": {
|
||||
"type": "string",
|
||||
"pattern": "^[a-z0-9][a-z0-9._-]*$"
|
||||
},
|
||||
"enabledOnly": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"required": [
|
||||
"enabled"
|
||||
],
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean"
|
||||
}
|
||||
}
|
||||
},
|
||||
"coingecko": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"required": [
|
||||
"enabled",
|
||||
"access_mode"
|
||||
],
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"access_mode": {
|
||||
"enum": [
|
||||
"demo",
|
||||
"keyless"
|
||||
]
|
||||
},
|
||||
"api_key": {
|
||||
"type": "string",
|
||||
"minLength": 1
|
||||
}
|
||||
},
|
||||
"allOf": [
|
||||
{
|
||||
"if": {
|
||||
"properties": {
|
||||
"access_mode": {
|
||||
"const": "keyless"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"access_mode"
|
||||
]
|
||||
},
|
||||
"then": {
|
||||
"not": {
|
||||
"required": [
|
||||
"api_key"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"if": {
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"const": true
|
||||
},
|
||||
"access_mode": {
|
||||
"const": "demo"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"enabled",
|
||||
"access_mode"
|
||||
]
|
||||
},
|
||||
"then": {
|
||||
"required": [
|
||||
"api_key"
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"coinmarketcap": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"required": [
|
||||
"enabled",
|
||||
"access_mode"
|
||||
],
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"access_mode": {
|
||||
"enum": [
|
||||
"basic",
|
||||
"keyless"
|
||||
]
|
||||
},
|
||||
"api_key": {
|
||||
"type": "string",
|
||||
"minLength": 1
|
||||
}
|
||||
},
|
||||
"allOf": [
|
||||
{
|
||||
"if": {
|
||||
"properties": {
|
||||
"access_mode": {
|
||||
"const": "keyless"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"access_mode"
|
||||
]
|
||||
},
|
||||
"then": {
|
||||
"not": {
|
||||
"required": [
|
||||
"api_key"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"if": {
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"const": true
|
||||
},
|
||||
"access_mode": {
|
||||
"const": "basic"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"enabled",
|
||||
"access_mode"
|
||||
]
|
||||
},
|
||||
"then": {
|
||||
"required": [
|
||||
"api_key"
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"jupiter": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"required": [
|
||||
"enabled",
|
||||
"access_mode"
|
||||
],
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"access_mode": {
|
||||
"enum": [
|
||||
"free",
|
||||
"keyless"
|
||||
]
|
||||
},
|
||||
"api_key": {
|
||||
"type": "string",
|
||||
"minLength": 1
|
||||
}
|
||||
},
|
||||
"allOf": [
|
||||
{
|
||||
"if": {
|
||||
"properties": {
|
||||
"access_mode": {
|
||||
"const": "keyless"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"access_mode"
|
||||
]
|
||||
},
|
||||
"then": {
|
||||
"not": {
|
||||
"required": [
|
||||
"api_key"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"if": {
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"const": true
|
||||
},
|
||||
"access_mode": {
|
||||
"const": "free"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"enabled",
|
||||
"access_mode"
|
||||
]
|
||||
},
|
||||
"then": {
|
||||
"required": [
|
||||
"api_key"
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"birdeye": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"required": [
|
||||
"enabled"
|
||||
],
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"api_key": {
|
||||
"type": "string",
|
||||
"minLength": 1
|
||||
}
|
||||
},
|
||||
"allOf": [
|
||||
{
|
||||
"if": {
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"const": true
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"enabled"
|
||||
]
|
||||
},
|
||||
"then": {
|
||||
"required": [
|
||||
"api_key"
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"dexscreener": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"required": [
|
||||
"enabled"
|
||||
],
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"sol_usd_pair_address": {
|
||||
"type": "string",
|
||||
"minLength": 1
|
||||
}
|
||||
},
|
||||
"allOf": [
|
||||
{
|
||||
"if": {
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"const": true
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"enabled"
|
||||
]
|
||||
},
|
||||
"then": {
|
||||
"required": [
|
||||
"sol_usd_pair_address"
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"marketPrice": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"required": [
|
||||
"birdeye",
|
||||
"coinbase_exchange",
|
||||
"coingecko",
|
||||
"coinmarketcap",
|
||||
"coinpaprika",
|
||||
"dexscreener",
|
||||
"jupiter",
|
||||
"kraken"
|
||||
],
|
||||
"properties": {
|
||||
"birdeye": {
|
||||
"$ref": "#/$defs/birdeye"
|
||||
},
|
||||
"coinbase_exchange": {
|
||||
"$ref": "#/$defs/enabledOnly"
|
||||
},
|
||||
"coingecko": {
|
||||
"$ref": "#/$defs/coingecko"
|
||||
},
|
||||
"coinmarketcap": {
|
||||
"$ref": "#/$defs/coinmarketcap"
|
||||
},
|
||||
"coinpaprika": {
|
||||
"$ref": "#/$defs/enabledOnly"
|
||||
},
|
||||
"dexscreener": {
|
||||
"$ref": "#/$defs/dexscreener"
|
||||
},
|
||||
"jupiter": {
|
||||
"$ref": "#/$defs/jupiter"
|
||||
},
|
||||
"kraken": {
|
||||
"$ref": "#/$defs/enabledOnly"
|
||||
}
|
||||
}
|
||||
},
|
||||
"profile": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"required": [
|
||||
"profile_id",
|
||||
"market_price"
|
||||
],
|
||||
"properties": {
|
||||
"profile_id": {
|
||||
"$ref": "#/$defs/profileId"
|
||||
},
|
||||
"market_price": {
|
||||
"$ref": "#/$defs/marketPrice"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
75
config/std.offchain_transport.json
Normal file
75
config/std.offchain_transport.json
Normal file
@@ -0,0 +1,75 @@
|
||||
{
|
||||
"format_version": 1,
|
||||
"default_profile": "public_keyless",
|
||||
"profiles": [
|
||||
{
|
||||
"profile_id": "public_keyless",
|
||||
"market_price": {
|
||||
"birdeye": {
|
||||
"enabled": false
|
||||
},
|
||||
"coinbase_exchange": {
|
||||
"enabled": true
|
||||
},
|
||||
"coingecko": {
|
||||
"enabled": true,
|
||||
"access_mode": "keyless"
|
||||
},
|
||||
"coinmarketcap": {
|
||||
"enabled": true,
|
||||
"access_mode": "keyless"
|
||||
},
|
||||
"coinpaprika": {
|
||||
"enabled": true
|
||||
},
|
||||
"dexscreener": {
|
||||
"enabled": false
|
||||
},
|
||||
"jupiter": {
|
||||
"enabled": true,
|
||||
"access_mode": "keyless"
|
||||
},
|
||||
"kraken": {
|
||||
"enabled": true
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"profile_id": "all_free",
|
||||
"market_price": {
|
||||
"birdeye": {
|
||||
"enabled": true,
|
||||
"api_key": "${KSP_SECRET_BIRDEYE_API_KEY}"
|
||||
},
|
||||
"coinbase_exchange": {
|
||||
"enabled": true
|
||||
},
|
||||
"coingecko": {
|
||||
"enabled": true,
|
||||
"access_mode": "demo",
|
||||
"api_key": "${KSP_SECRET_COINGECKO_DEMO_API_KEY}"
|
||||
},
|
||||
"coinmarketcap": {
|
||||
"enabled": true,
|
||||
"access_mode": "basic",
|
||||
"api_key": "${KSP_SECRET_COINMARKETCAP_API_KEY}"
|
||||
},
|
||||
"coinpaprika": {
|
||||
"enabled": true
|
||||
},
|
||||
"dexscreener": {
|
||||
"enabled": true,
|
||||
"sol_usd_pair_address": "${KSP_PUBLIC_DEXSCREENER_SOL_USD_PAIR_ADDRESS}"
|
||||
},
|
||||
"jupiter": {
|
||||
"enabled": true,
|
||||
"access_mode": "free",
|
||||
"api_key": "${KSP_SECRET_JUPITER_API_KEY}"
|
||||
},
|
||||
"kraken": {
|
||||
"enabled": true
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user