Contact challenges missing from GET /contacts/{prefix}
Currently, you can get challenge information for a contact using the list contacts endpoint (GET /contacts). It is added here: https://github.com/WebOfTrust/keria/blob/f24cf4b01932916cc640ff6f20ffda6f641c1ad2/src/keria/app/aiding.py#L1143-L1167, yielding an array response with the following shape:
id: string;
alias: string;
oobi: string;
challenges: Challenge[];
On the endpoint for getting a contact by id, this information is missing: https://github.com/WebOfTrust/keria/blob/f24cf4b01932916cc640ff6f20ffda6f641c1ad2/src/keria/app/aiding.py#L1294-L1303 yielding a response with the following shape:
id: string;
alias: string;
oobi: string;
Is it intentional? If yes, what is the preferred way to get the current challenge responses for a specific contact? If not, should we add this information to ContactResource as well?
Another option could be to remove the challenges from the ContactCollectionResource as well and add a new endpoint /contacts/{prefix}/challenges. Thoughts?
I also noticed that in keria, we have four "methods" for challenges, but in keripy / kli we only have three.
- generate => generate challenge words
- verify => wait for signed challenge response
- response => sign a challenge and send to the "verifier"
- accept => mark the challenge as "verified"/"authenticated" (This is done by the verify step in keripy, where as in keria it is an additional request).