Review of Identity BB API documentation
This is a review of the version 1.0 that was last modified 3 months ago.
Structural problems:
Gitbook
some endpoints lack parameters or examples of request’s/response’s bodies
Github
structural errors when the yaml file is opened in Swagger
Discrepancies and missing info:
all error messages should be shown as separete error codes, not come in a 200 response in an error parameter
some endpoints use snake case and some camel case even for the same parameters (ex clientId vs client_id) - it should be standardized across the whole BB
API problems:
POST /client-mgmt/oidc-client
no parameters/ headers?
error comes in 200 response - it should come as a separate error code
PUT /client-mgmt/oidc-client/{client_id}
why PUT and not PATCH?
no headers?
error comes in 200 response - it should come as a separate error code
GET /authorize
no example of 200 nor schema in Gitbook
no error examples
POST /oauth/token
no headers/parameters?
GET /oidc/userinfo
no example of a request
no parameters/headers?
no schema for error case
GET /.well-known/jwks.json
no headers/parameters?
no error case
endpoint description says it should return jkws format, but content-type of the response is set to json
GET /.well-known/openid-configuration
no headers/parameters?
no error case
POST /linked-authorization/link-code
error comes in 200 response - it should come as a separate error code
POST /linked-authorization/link-status
error comes in 200 response - it should come as a separate error code
POST /linked-authorization/link-auth-code
error comes in 200 response - it should come as a separate error code
POST /linked-authorization/link-transaction
no headers/parameters?
error comes in 200 response - it should come as a separate error code
POST /linked-authorization/authenticate
no headers/parameters?
error comes in 200 response - it should come as a separate error code
POST /linked-authorization/consent
no headers/parameters?
error comes in 200 response - it should come as a separate error code
POST /wallet-binding
no headers/parameters?
error comes in 200 response - it should come as a separate error code
Final conclusions:
Good readability - only one file in Github
Preparing parameters descriptions would be helpful - either in repository or in schemas in Gitbook