Skip to content

Endpoints

{
"type": "success",
"log": {
"message": "Got uuid for <username>",
"log_level": 0
},
"data": {
"user_id": "<uuid>"
}
}
{
"type": "success",
"log": {
"message": "Got user <uuid>",
"log_level": 0
},
"data": {
"created_at": int, // UNIX Timestamp
"username": "<username>",
"display": "<display name>",
"avatar": "<base64 avatar>",
"about": "<base64 about>",
"status": "<status>",
"public_key": "<base64 public key>",
"sub_level": int,
"sub_end": int
}
}

REQ

{
[ "username" | "display" | "avatar" | "about" | "status" ]: [ "<username>" | "<display>" | "<avatar>" | "<about>" | "<status>" ],
"private_key_hash": "<sha256 private key hash>"
}

RES

{
"type": "success",
"log": {
"message": "Changed user",
"log_level": 0
}
}

REQ

{
"iota_id": "<uuid>",
"reset_token": "<base64 random bytes>",
"new_token": "<base64 random bytes>"
}

RES

{
"type": "success",
"log": {
"message": "Changed iota id for <uuid>",
"log_level": 0
}
}

REQ

{
"private_key_hash": "<sha256 private key hash>",
"public_key": "<base64 public key>",
"reset_token": "<base64 random bytes>",
"new_token": "<base64 random bytes>"
}

RES

{
"type": "success",
"log": {
"message": "Changed keys for <uuid>",
"log_level": 0
}
}

REQ

{
"private_key_hash": "<sha256 private key hash>"
}

RES

{
"type": "success",
"log": {
"message": "Got registration options for <uuid>",
"log_level": 2
},
"data": {
"options": "<json>",
"salt": "<base64 salt>"
}
}

REQ

{
"private_key_hash": "<sha256 private key hash>",
"attestation": "idk yet"
}

RES

{
"type": "success",
"log": {
"message": "Verified <uuid>",
"log_level": 2
}
}
{
"type": "success",
"log": {
"message": "Got login options for <uuid>",
"log_level": 2
},
"data": {
"options": "<json>",
"salt": "<base64 salt>",
"credential_id": "<base64 string>"
}
}

REQ

{
"attestation": "<json>"
}

RES

{
"type": "success",
"log": {
"message": "Verified <uuid>",
"log_level": 2
}
}

The user creation process timeouts after 1 hour.

{
"type": "success",
"log": {
"message": "Started user registration progress",
"log_level": 0
},
"data": {
"user_id": "<uuid>"
}
}

REQ

{
"uuid": "",
"username": "",
"public_key": "",
"private_key_hash": "",
"username": "",
"iota_id": "",
"reset_token": ""
}

RES

{
"type": "success",
"log": {
"message": "Created User: <uuid>",
"log_level": 0
}
}

REQ

{
"reset_token": ""
}

RES

{
"type": "success",
"log": {
"message": "Deleted User: <uuid>",
"log_level": 0
}
}

Header: Authorization <omikron uuid> Header: PrivateKeyHash <sha256 private key hash>

{
"type": "success",
"log": {
"message": "Got private key hash for <uuid>",
"log_level": 1
},
"data": {
"matches": boolean
}
}

Header: Authorization <omikron uuid>

{
"type": "success",
"log": {
"message": "Got iota id for <uuid>",
"log_level": 1
},
"data": {
"iota_id": "<uuid>"
}
}