Overview
- Don't know where to start? Gradecoin uses RESTful API, simple
curl
commands or even your browser will work! This website can help as well. - JWT Debugger and the corresponding RFC
Services
/register
- Student creates their own 2048 bit RSA
keypair
- Downloads
Gradecoin
's Public Key from Moodle - Encrypts their JSON wrapped
Public Key
,Student ID
and one timepasswd
using Gradecoin's Public Key - Their public key is now in our database and can be used to sign their JWT's during requests
/transaction
- You can offer a Transaction - POST request
- The request should have
Authorization
- The request header should be signed by the Public Key of the
by
field in the transaction
- The request should have
- fetch the list of
Transaction
s - GET request
/block
- offer a [
schema::Block
] - POST request- The request should have
Authorization
- The [
schema::Block::transaction_list
] of the block should be a subset of [schema::Db::pending_transactions
]
- The request should have
- fetch the last accepted [
schema::Block
] - GET request
Authorization
: The request header should have Bearer JWT.Token signed with Student Public Key