Skip to content

Current signed manifest envelope

GET
/v1/projects/{project_id}/manifest
curl --request GET \
--url https://testnet-rpc.necter.network/v1/projects/example/manifest
project_id
required
string
/^0x[0-9a-f]{64}$/

Signed manifest

Media typeapplication/json
object
manifest
required

(normative rules there)

object
v
required
integer
Allowed value: 1
network
required
string
chain_id
required
integer
developer
required

Lowercase EVM address

string
/^0x[0-9a-f]{40}$/
slug
required
string
/^[a-z0-9][a-z0-9-]{1,46}[a-z0-9]$/
version
required
integer
>= 1
previous
required
One of:
string
/^0x[0-9a-f]{64}$/
consensus
required
object
modules
required
object
worker
required
string
/^0x[0-9a-f]{64}$/
verifier
required
null
work
required
object
class
required
string
Allowed value: deterministic
verification
required
string
Allowed value: redundant-execution
execution
required
string
Allowed value: committee
functions
required
Array<string>
>= 1 items <= 64 items
task_source
required
One of:
object
kind
required
Allowed value: api
max_gas_limit
required
integer
>= 1 <= 10000000000
committee
required
object
size
required
integer
>= 3 <= 31
backups
required
integer
<= 16
min_size
required
integer
>= 3 <= 31
selection
required
string
Allowed value: collateral-reputation-sortition-v1
weight_cap_multiple
required
integer
>= 1 <= 100
round_secs
required
integer
>= 10 <= 600
lease_secs
required
integer
>= 5 <= 600
epoch_secs
required
integer
Allowed values: 3600 7200 10800 14400 21600 28800 43200 86400
dispute_window_secs
required
integer
>= 3600 <= 604800
economics
required
object
reward_token
required

Lowercase EVM address

string
/^0x[0-9a-f]{40}$/
vault
required

Lowercase EVM address

string
/^0x[0-9a-f]{40}$/
reward_model
required
string
Allowed values: per-unit epoch-pool
reward_per_unit
required

Token base units

string
/^(0|[1-9][0-9]{0,77})$/
daily_emission
required

Token base units

string
/^(0|[1-9][0-9]{0,77})$/
fee_split_bp
required
object
miner
required
integer
>= 5000 <= 10000
developer
required
integer
<= 5000
treasury
required
integer
<= 5000
max_units_per_epoch
required
integer
>= 1 <= 1000000000
max_recipients_per_epoch
required
integer
>= 1 <= 10000
min_collateral
required

Token base units

string
/^(0|[1-9][0-9]{0,77})$/
slashing_bp
required
object
invalid_result
required
integer
<= 5000
missed_sla
required
integer
<= 500
scheduling
required
object
requirements
required
object
device_classes
required
Array<string>
>= 1 items
Allowed values: phone tablet laptop desktop server
cpu_cores
required
integer
ram_mb
required
integer
storage_mb
required
integer
gpu
required
null
min_benchmark
required
integer
engines
required
Array<string>
>= 1 items
Allowed values: native pulley64 pulley32
attestation
required
array
0
sla
required
object
max_latency_ms
required
integer
>= 100 <= 600000
min_uptime_bp
required
integer
<= 10000
public_tasks
required
boolean
listing
required
object
name
required
string
>= 1 characters <= 64 characters
tagline
required
string
<= 120 characters
description
required
string
<= 8000 characters
category
required
string
Allowed values: blockchain depin machine-learning storage compute bandwidth data-sovereignty iot hardware-staking content-delivery
tags
required
Array<string>
<= 8 items
icon
required
string format: uri
banner
required
string | null format: uri
screenshots
required
Array<string>
<= 8 items
video
required
string | null format: uri
website
required
string | null format: uri
docs
required
string | null format: uri
support
required
string | null format: uri
features
required
Array<string>
<= 12 items
accent_color
required
string | null
/^#[0-9A-F]{6}$/
manifest_hash
string
/^0x[0-9a-f]{64}$/
consensus_hash
string
/^0x[0-9a-f]{64}$/
project_id
string
/^0x[0-9a-f]{64}$/
sig_type
required
string
Allowed value: eip191
signature
required
string
/^0x[0-9a-f]{130}$/

Example

{
"manifest": {
"v": 1,
"consensus": {
"work": {
"class": "deterministic",
"verification": "redundant-execution",
"execution": "committee",
"task_source": {
"kind": "api"
},
"committee": {
"selection": "collateral-reputation-sortition-v1"
},
"epoch_secs": 3600
},
"economics": {
"reward_model": "per-unit"
}
},
"scheduling": {
"requirements": {
"device_classes": [
"phone"
],
"engines": [
"native"
]
}
},
"listing": {
"category": "blockchain"
}
},
"sig_type": "eip191"
}

not_found

Media typeapplication/json
object
error
required

Stable machine code

string
message
required
string
details
object
key
additional properties
any
request_id
required
string

Example generated

{
"error": "example",
"message": "example",
"details": {},
"request_id": "example"
}