api.docs.secure.vote Open in urlscan Pro
2606:50c0:8003::153  Public Scan

URL: https://api.docs.secure.vote/
Submission: On August 30 via automatic, source certstream-suspicious — Scanned from DE

Form analysis 0 forms found in the DOM

Text Content

×

TOPICS

Introduction

PATHS

Publish an Ed25519 -> Eth delegation (e.g. for onboarding voters from a stellar
chain) OPTIONS /sv/light/submitEd25519Delegation Publish a signed vote OPTIONS
/sv/light/submitProxyVote

SCHEMA DEFINITIONS

EthAddress Ed25519DelegationReq Ed25519DelegationResp HexString
SubmitProxyVoteResp ErrTy ProxyVoteInput ProxyVoteReq


SECUREVOTE CONVENIENCE API API REFERENCE

An API provided for convenient functions via SecureVote. This includes fee-less
voting and other such functions. While these operations aren't as trustless as
interacting with a chain directly, they do provide very fast verifiability (by
checking the txid, etc) and allow for a few features that cannot be done without
3rd parites. APIs exist at

 * https://api.secure.vote
 * https://staging.api.secure.vote
 * https://dev.api.secure.vote

API ENDPOINT

https://dev.api.secure.vote

TERMS OF SERVICE: HTTPS://SECURE.VOTE

CONTACT: MAX@SECURE.VOTE

SCHEMES: HTTPS

VERSION: 0.1.0


PATHS


PUBLISH AN ED25519 -> ETH DELEGATION (E.G. FOR ONBOARDING VOTERS FROM A STELLAR
CHAIN)

POST /sv/light/submitEd25519Delegation
Ed25519DelegationReq

Submit a signed and packed ed25519 delegation for an arbitrary actor to submit
to the chain on your behalf

REQUEST CONTENT-TYPES: APPLICATION/JSON

REQUEST EXAMPLE

{
  "signature": "",
  "publickey": "",
  "packed": ""
}


200 OK
Ed25519DelegationResp

200 response

400 Bad Request
ErrTy

400 response

RESPONSE CONTENT-TYPES: APPLICATION/JSON

RESPONSE EXAMPLE (200 OK)

{
  "txid": "0xdeadbeef1337",
  "from": "string",
  "to": "0xD386456eb1Af15A5918E7ECC57142bB2634bF9B9"
}


RESPONSE EXAMPLE (400 BAD REQUEST)

{
  "error": "Invalid request data."
}



OPTIONS /SV/LIGHT/SUBMITED25519DELEGATION


200 OK

200 response

RESPONSE CONTENT-TYPES: APPLICATION/JSON

RESPONSE HEADERS (200 OK)

Access-Control-Allow-Origin

undefined

string Access-Control-Allow-Methods

undefined

string Access-Control-Allow-Credentials

undefined

string Access-Control-Allow-Headers

undefined

string


PUBLISH A SIGNED VOTE

POST /sv/light/submitProxyVote
ProxyVoteInput

Submit a signed and packed vote for an arbitrary actor to submit to the chain on
your behalf

REQUEST CONTENT-TYPES: APPLICATION/JSON

REQUEST EXAMPLE

{
  "proxyReq": [
    "0x32a28ff5895d200d3a518cc55a6cfdabe18623a29e8fb100a0b29b42a2111687",
    "0x3d8c990c44939c2a619db686542614a5410ee48a217e7e5b0ecec4c1fb50865f",
    "0x1c00000000000000000000000000000000000000000000000000000000000001",
    "0x0000000000000000053970000000000000000000000000000000000000000000",
    "0x4000000000000000000000000000000000000000000000000000000000000000"
  ],
  "extra": "0x",
  "democHash": "0x40e135c54ddfdc99585d5d8e723906ea75e8447ba731ed0679135c084ac8278f",
  "ballotId": "0x0000000000000000053970000000000000000000000000000000000000000000"
}


200 OK
SubmitProxyVoteResp

200 response

400 Bad Request
ErrTy

400 response

RESPONSE CONTENT-TYPES: APPLICATION/JSON

RESPONSE EXAMPLE (200 OK)

{
  "address": "0xD386456eb1Af15A5918E7ECC57142bB2634bF9B9",
  "txid": "0xdeadbeef1337"
}


RESPONSE EXAMPLE (400 BAD REQUEST)

{
  "error": "Invalid request data."
}



OPTIONS /SV/LIGHT/SUBMITPROXYVOTE


200 OK

200 response

RESPONSE CONTENT-TYPES: APPLICATION/JSON

RESPONSE HEADERS (200 OK)

Access-Control-Allow-Origin

undefined

string Access-Control-Allow-Methods

undefined

string Access-Control-Allow-Credentials

undefined

string Access-Control-Allow-Headers

undefined

string


SCHEMA DEFINITIONS


ETHADDRESS: STRING

An Ethereum address


ED25519DELEGATIONREQ: OBJECT

An object composed of the ed25519 delegation and metadata about which democracy
and subgroup it is for.

signature: HexString publickey: HexString packed: HexString

EXAMPLE

{
  "signature": "",
  "publickey": "",
  "packed": ""
}



ED25519DELEGATIONRESP: OBJECT

txid: HexString from: string to: EthAddress

EXAMPLE

{
  "txid": "0xdeadbeef1337",
  "from": "string",
  "to": "0xD386456eb1Af15A5918E7ECC57142bB2634bF9B9"
}



HEXSTRING: STRING

A hex string in Ethereum format ('0x010203aabbcc...')


SUBMITPROXYVOTERESP: OBJECT

address: EthAddress txid: HexString

EXAMPLE

{
  "address": "0xD386456eb1Af15A5918E7ECC57142bB2634bF9B9",
  "txid": "0xdeadbeef1337"
}



ERRTY: OBJECT

error: string

EXAMPLE

{
  "error": "Invalid request data."
}



PROXYVOTEINPUT: OBJECT

An object composed of the signed vote and metadata about which democracy and
ballot it is for.

democHash: HexString proxyReq: ProxyVoteReq extra: HexString ballotId: HexString

EXAMPLE

{
  "proxyReq": [
    "0x32a28ff5895d200d3a518cc55a6cfdabe18623a29e8fb100a0b29b42a2111687",
    "0x3d8c990c44939c2a619db686542614a5410ee48a217e7e5b0ecec4c1fb50865f",
    "0x1c00000000000000000000000000000000000000000000000000000000000001",
    "0x0000000000000000053970000000000000000000000000000000000000000000",
    "0x4000000000000000000000000000000000000000000000000000000000000000"
  ],
  "extra": "0x",
  "democHash": "0x40e135c54ddfdc99585d5d8e723906ea75e8447ba731ed0679135c084ac8278f",
  "ballotId": "0x0000000000000000053970000000000000000000000000000000000000000000"
}



PROXYVOTEREQ: ARRAY

A tuple5 corresponding to the proxyReq object expected for proxy votes.

EXAMPLE

[
  "'0x0102..1f20' (`r` param)",
  "'0x0102..1f20' (`s` param)",
  "'0x0102..1f20' (`v` param in byte1, 27 unused bytes, `sequenceNumber` last 4 bytes)",
  "'0x0102..1f20' (ballotId as hex)",
  "'0x0102..1f20' (voteData as hex)"
]


Documentation by Spectacle