ethereum/kzg-ceremony-specs

API Questions

Closed this issue · 6 comments

Am trying to implement the new API, have some questions:

  • /info/current_state returns a '#/components/schemas/CeremonyStatus' but should return a transcript imo
  • info/status and info/current_state require authWithEth while contribute, abort and try_contribute do not?
  • Caller should pass a participant when calling abort, where do we get this from?
  • Caller should pass ParticipantQueueStatus when calling try_contribute where do we get this from?
  • CeremonyStatus is not specified
  • The lifecycle.md says optional data should be retrieved using /ceremony/status while the yml only defines /info/status, same with auth and login

Oh and the lifecycle.md talks about jwt while the yaml only talks about authWithEth

@gswirski is the spec up to date? I can help with updating the documentation to the latest version of the API.

The OpenAPI definition, as mentioned on the call, is completely wrong.

/info/current_state returns a '#/components/schemas/CeremonyStatus' but should return a transcript imo

You are correct, /info/current_state returns the transcript

info/status and info/current_state require authWithEth while contribute, abort and try_contribute do not?

/info endpoints don't require any authentication. /try_contribute, /contribute, /abort require authentication bearer token (session id).

Caller should pass a participant when calling abort, where do we get this from?

No need to pass any additional data, just session id in the Authorization header.

Caller should pass ParticipantQueueStatus when calling try_contribute where do we get this from?

No need to pass any additional data.

CeremonyStatus is not specified

Can be deleted from the OpenAPI file.

The lifecycle.md says optional data should be retrieved using /ceremony/status while the yml only defines /info/status, same with auth and login

That's a mistake. It should be /info/status, not /ceremony/status.

Oh and the lifecycle.md talks about jwt while the yaml only talks about authWithEth

I haven't found a single mention of JWT here: https://github.com/ethereum/kzg-ceremony-specs/blob/master/docs/participant/lifecycle.md In general, we only depend on the session id passed in the authorization header. There are no JWTs anymore.

I can help with updating the documentation to the latest version of the API.

Please do. The reference implementation (https://github.com/ethereum/kzg-ceremony-sequencer) is the source of truth at the moment.

Still some issue with the doc

  • No jwt claim anymore, the spec mentions them still
  • Method is not specified so I foolishly tried to GET the lobby/try_contribute instead of POST which returned 405 (also not specified)

late version of API updated.

Close as completed