Skip to content

Relax API contract to permit returning multiple certificates

issues #98 (closed), and #100, and #101 (closed) are hard to fix without being able to return multiple certificates from several of the retrieval mechanisms offered by hagrid.

While hagrid has not addressed any of those specific scenarios, the current API contract offered would not permit it to address them.

Relaxing the API contract now (before hagrid is in wide use) preserves the ability to resolve any of those reports.

Note: #99 (closed) recommends the creation of a single-certificate-only interface that doesn't have any of these issues, but is only useful in certain scenarios, and it does not match any of the existing API contracts. It could be added separately, if desired -- that would be great, and a totally reasonable place for clients to implement an "i expect at most one certificate" verification constraint.

Also note: if #102 (closed) is resolved in favor of a more constrained contract for the retrieval-by-email-address interface, then it seems plausible to keep the 0-or-1 contract for that interface. If that's preferred, i can amend this patch to make it clearer where the 0-or-1 contract applies and where hagrid is not yet willing to commit to it.

Merge request reports