Class CredentialSingleParseResponse
- java.lang.Object
-
- com.authlete.common.dto.ApiResponse
-
- com.authlete.common.dto.CredentialSingleParseResponse
-
- All Implemented Interfaces:
Serializable
public class CredentialSingleParseResponse extends ApiResponse
Response from the/vci/single/parse
API.The response from the Authlete API is a JSON object and can be mapped to this class. The API caller should retrieve the value of the
action
parameter from the API response and take one of the following actions accordingly.
action
=OK
The
action
valueOK
means that the credential request is valid. In this case, the implementation of the credential endpoint should call the/vci/single/issue
API in order to issue a verifiable credential or a transaction ID and generate a response to the request sender.
action
=BAD_REQUEST
The
action
valueBAD_REQUEST
means that the credential request is invalid. In this case, the implementation of the credential endpoint should return an error response to the request sender. The HTTP status code and the content type of the error response should be 400 andapplication/json
, respectively. The value of theresponseContent
parameter can be used as the message body of the error response as it conforms to the specification of "Credential Error Response".HTTP/1.1 400 Bad Request Content-Type: application/json Cache-Control: no-store (Put the value of the "responseContent" parameter here.)
action
=UNAUTHORIZED
The
action
valueUNAUTHORIZED
means that the access token is invalid. In this case, the implementation of the credential endpoint should return an error response to the request sender. The HTTP status code of the error response should be 401. The value of theresponseContent
parameter can be used as the value of theWWW-Authenticate
HTTP header of the error response.HTTP/1.1 401 Unauthorized WWW-Authenticate: (Put the value of the "responseContent" parameter here.)
Note that the implementation of the credential endpoint should call the
/auth/introspection
API to check whether the access token is valid BEFORE calling the/vci/single/parse
API. The validation on the access token by the/vci/single/parse
API is limited and not exhaustive. For example, the/vci/single/parse
API does not check certificate binding (RFC 8705).
action
=FORBIDDEN
The
action
valueFORBIDDEN
means that the use of the Authlete API is forbidden. In this case, the implementation of the credential endpoint should return an error response to the request sender. The HTTP status code and the content type of the error response should be 403 andapplication/json
, respectively. The value of theresponseContent
parameter can be used as the message body of the error response as it conforms to the specification of "Credential Error Response".HTTP/1.1 403 Forbidden Content-Type: application/json Cache-Control: no-store (Put the value of the "responseContent" parameter here.)
Note that this happens either when the
verifiableCredentialsEnabled
property of theservice
is false or when the Authlete server does not support the feature of "Verifiable Credentials". In either case, this "forbidden" issue should be solved before the service is deployed in a production environment.
action
=INTERNAL_SERVER_ERROR
The
action
valueINTERNAL_SERVER_ERROR
means that something wrong happened on Authlete side. In this case, the implementation of the credential endpoint should return an error response to the request sender. The HTTP status code and the content type of the error response should be 500 andapplication/json
, respectively. The value of theresponseContent
parameter can be used as the message body of the error response as it conforms to the specification of "Credential Error Response".HTTP/1.1 500 Internal Server Error Content-Type: application/json Cache-Control: no-store (Put the value of the "responseContent" parameter here.)
Note that, however, in real production deployments, it may be better to return a vaguer error response instead of a bare one like above.
- Since:
- 3.66, Authlete 3.0
- See Also:
- OpenID for Verifiable Credential Issuance, Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
CredentialSingleParseResponse.Action
-
Constructor Summary
Constructors Constructor Description CredentialSingleParseResponse()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description CredentialSingleParseResponse.Action
getAction()
Get the next action that the credential endpoint should take.CredentialRequestInfo
getInfo()
Get information about the credential request.String
getResponseContent()
Get the content of the response that should be returned to the request sender.CredentialSingleParseResponse
setAction(CredentialSingleParseResponse.Action action)
Set the next action that the credential endpoint should take.CredentialSingleParseResponse
setInfo(CredentialRequestInfo info)
Set information about the credential request.CredentialSingleParseResponse
setResponseContent(String content)
Set the content of the response that should be returned to the request sender.-
Methods inherited from class com.authlete.common.dto.ApiResponse
getResultCode, getResultMessage, setResultCode, setResultMessage
-
-
-
-
Method Detail
-
getAction
public CredentialSingleParseResponse.Action getAction()
Get the next action that the credential endpoint should take.- Returns:
- The next action that the credential endpoint should take.
-
setAction
public CredentialSingleParseResponse setAction(CredentialSingleParseResponse.Action action)
Set the next action that the credential endpoint should take.- Parameters:
action
- The next action that the credential endpoint should take.- Returns:
this
object.
-
getResponseContent
public String getResponseContent()
Get the content of the response that should be returned to the request sender. The format varies depending on the value of theaction
parameter.When the value of the
action
parameter isOK
, the value of this parameter is null.When the value of the
action
parameter isUNAUTHORIZED
, the value of this parameter is a string suitable as the value of theWWW-Authenticate
HTTP header.In other error cases, the value of this parameter is JSON that conforms to the specification of "Credential Error Response".
- Returns:
- The content of the response that should be returned to the request sender.
-
setResponseContent
public CredentialSingleParseResponse setResponseContent(String content)
Set the content of the response that should be returned to the request sender. The format varies depending on the value of theaction
parameter.When the value of the
action
parameter isOK
, the value of this parameter should be null.When the value of the
action
parameter isUNAUTHORIZED
, the value of this parameter should be a string suitable as the value of theWWW-Authenticate
HTTP header.In other error cases, the value of this parameter should be JSON that conforms to the specification of "Credential Error Response".
- Parameters:
content
- The content of the response that should be returned to the request sender.- Returns:
this
object.
-
getInfo
public CredentialRequestInfo getInfo()
Get information about the credential request.- Returns:
- Information about the credential request.
-
setInfo
public CredentialSingleParseResponse setInfo(CredentialRequestInfo info)
Set information about the credential request.- Parameters:
info
- Information about the credential request.- Returns:
this
object.
-
-