Mimoto - BFF
Mimoto serves as a Backend for Frontend (BFF) for Inji Web, handling retrieval of default configurations and downloading VCs. It offers essential APIs to Inji Web, facilitates validations, and forwards requests to relevant services.
To support credential issuance from any issuer compatible with the OpenID4VCI protocol, Mimoto must be onboarded as an OIDC client. Refer here for more details on how to onboard Mimoto (BFF) as an OIDC client.
Detailed API documentation for Mimoto is accessible here.
Mimoto endpoints used by Inji Web:
Fetch Issuers:
This API provides data with search capability to populate the list of supported issuers in Inji Web, which is then displayed under the List of Issuers
GET /residentmobileapp/issuers HTTP/1.1
Host: api.collab.mosip.net
Accept: */*
OK
{
"id": "mosip.resident.vid",
"version": "v1",
"str": null,
"responsetime": "2022-10-31T05:08:14.846Z",
"metadata": null,
"response": {
"issuers": [
{
"credential_issuer": "MOSIPInsurance",
"protocol": "OpenId4VCI",
"display": [
{
"name": "MOSIP Insurance",
"logo": {
"url": "https://api.collab.mosip.net/inji/mosip-logo.png",
"alt_text": "MOSIP-Logo"
},
"title": "Download via LIC",
"description": "Enter your policy number to download your card.",
"language": "en"
}
],
"client_id": "3yz7-j3xRzU3SODdoNgSGvO_cD8UijH3AIWRDAg1x-M",
".well-known": "http://localhost:8088/.well-known/openid-credential-issuer"
},
{
"credential_issuer": "MOSIPNationalID",
"protocol": "OpenId4VCI",
"display": [
{
"name": "MOSIP National ID",
"logo": {
"url": "https://api.collab.mosip.net/inji/mosip-logo.png",
"alt_text": "MOSIP-Logo"
},
"title": "Download via LIC",
"description": "Enter your policy number to download your card.",
"language": "en"
}
],
"client_id": "3yz7-j3xRzU3SODdoNgSGvO_cD8UijH3AIWRDAg1x-M",
".well-known": "http://localhost:8088/.well-known/openid-credential-issuer"
}
]
}
}
Fetch Issuer's Configuration:
This API provides the complete configuration details for the specific issuers passed in the path variable
GET /residentmobileapp/issuers/{issuer-id} HTTP/1.1
Host: api.collab.mosip.net
Accept: */*
OK
{
"id": "mosip.mimoto.issuers",
"version": "v1",
"str": null,
"responsetime": "2024-04-25T05:56:55.890Z",
"metadata": null,
"response": {
"credential_issuer": "ESignet",
"protocol": "OpenId4VCI",
"display": [
{
"name": "e-Signet",
"logo": {
"url": "https://api.collab.mosip.net/inji/mosip-logo.png",
"alt_text": "mosip-logo"
},
"title": "Download MOSIP Credentials",
"description": "Download credentials by providing UIN or VID",
"language": "en"
},
{
"name": "e-Signet",
"logo": {
"url": "https://api.collab.mosip.net/inji/mosip-logo.png",
"alt_text": "شعار موسيب"
},
"title": "قم بتنزيل بيانات اعتماد MOSIP",
"description": "توفير UIN أو VIDقم بتنزيل بيانات الاعتماد عن طريق",
"language": "ar"
},
{
"name": "e-Signet",
"logo": {
"url": "https://api.collab.mosip.net/inji/mosip-logo.png",
"alt_text": "मोसिप लोगो"
},
"title": "MOSIP क्रेडेंशियल डाउनलोड करेंं",
"description": "यूआईएन या वीआईडी प्रदान करके क्रेडेंशियल डाउनलोड करें",
"language": "hi"
},
{
"name": "e-Signet",
"logo": {
"url": "https://api.collab.mosip.net/inji/mosip-logo.png",
"alt_text": "mosip ಲೋಗೋ"
},
"title": "MOSIP ರುಜುವಾತುಗಳನ್ನು ಡೌನ್ಲೋಡ್ ಮಾಡಿ",
"description": "UIN ಅಥವಾ VID ಒದಗಿಸುವ ಮೂಲಕ ರುಜುವಾತುಗಳನ್ನು ಡೌನ್ಲೋಡ್ ಮಾಡಿ",
"language": "kn"
},
{
"name": "e-Signet",
"logo": {
"url": "https://api.collab.mosip.net/inji/mosip-logo.png",
"alt_text": "mosip லோகோ"
},
"title": "MOSIP சான்றுகளைப் பதிவிறக்கவும்",
"description": "UIN அல்லது VIDஐ வழங்குவதன் மூலம் நற்சான்றிதழ்களைப் பதிவிறக்கவும்",
"language": "ta"
},
{
"name": "e-Signet",
"logo": {
"url": "https://api.collab.mosip.net/inji/mosip-logo.png",
"alt_text": "logo ng mosip"
},
"title": "I-download ang Mga Kredensyal ng MOSIP",
"description": "Mag-download ng mga kredensyal sa pamamagitan ng pagbibigay ng UIN o VID",
"language": "fil"
}
],
"client_id": "DEqVWfdKe9cQWikLdjak3vlDF0Pq7jtnwTcGdEXoT1I",
"redirect_uri": "io.mosip.residentapp.inji://oauthredirect",
"scopes_supported": [
"mosip_identity_vc_ldp"
],
"authorization_endpoint": "https://esignet.collab.mosip.net/authorize",
"authorization_audience": "https://esignet.collab.mosip.net/v1/esignet/oauth/v2/token",
"token_endpoint": "https://api.collab.mosip.net/residentmobileapp/get-token/ESignet",
"proxy_token_endpoint": "https://esignet.collab.mosip.net/v1/esignet/oauth/v2/token",
"credential_endpoint": "https://esignet.collab.mosip.net/v1/esignet/vci/credential",
"credential_type": [
"VerifiableCredential",
"MOSIPVerifiableCredential"
],
"credential_audience": "https://esignet.collab.mosip.net",
"client_alias": "mpartner-default-mimotooidc",
"additional_headers": {
"Accept": "application/json"
},
".well-known": "https://esignet.collab.mosip.net/.well-known/openid-credential-issuer"
},
"errors": []
}
Download PDF:
This API is responsible for generating PDFs for the received VC content. It fetches display properties from the well-known configuration of the issuer and incorporates them into the predefined template of the PDF file.
GET /residentmobileapp/issuers/{issuer-id}/credentials/{credentialType}/download HTTP/1.1
Host: api.collab.mosip.net
Bearer: text
Accept: */*
OK
{
"id": null,
"version": "v1",
"str": null,
"responsetime": "2022-10-31T05:07:34.789Z",
"metadata": null,
"response": null,
"errors": [
{
"errorCode": "RESIDENT-APP-036",
"errorMessage": "Invalid Credential Type Id"
}
]
}
Fetch Issuer Credentials:
This API fetches the list of Credential Types offered by the issuer, sourced from the well-known configuration of the issuer. Users can filter credentials based on search parameter.
https://api.collab.mosip.net/v1/mimoto/issuers/{issuer-id}/.well-known
Method Type: GET
Parameter:
issuerid: ID of the issuer in string type.
Response
Response code 200
{
"credential_issuer": "https://injicertify-insurance.dev1.mosip.net",
"authorization_servers": [
"https://esignet-insurance.dev1.mosip.net"
],
"credential_endpoint": "https://injicertify-insurance.dev1.mosip.net/v1/certify/issuance/credential",
"credential_configurations_supported": {
"InsuranceCredential": {
"format": "ldp_vc",
"scope": "sunbird_rc_insurance_vc_ldp",
"order": [
"fullName",
"policyName",
"policyExpiresOn",
"policyIssuedOn",
"policyNumber",
"mobile",
"dob",
"gender",
"benefits",
"email"
],
"proof_types_supported": {
"jwt": {
"proof_signing_alg_values_supported": [
"RS256",
"PS256"
]
}
},
"credential_definition": {
"type": [
"VerifiableCredential",
"InsuranceCredential"
],
"credentialSubject": {
"fullName": {
"display": [
{
"name": "Name",
"locale": "en"
}
]
},
"mobile": {
"display": [
{
"name": "Phone Number",
"locale": "en"
}
]
},
"dob": {
"display": [
{
"name": "Date of Birth",
"locale": "en"
}
]
},
"gender": {
"display": [
{
"name": "Gender",
"locale": "en"
}
]
},
"benefits": {
"display": [
{
"name": "Benefits",
"locale": "en"
}
]
},
"email": {
"display": [
{
"name": "Email Id",
"locale": "en"
}
]
},
"policyIssuedOn": {
"display": [
{
"name": "Policy Issued On",
"locale": "en"
}
]
},
"policyExpiresOn": {
"display": [
{
"name": "Policy Expires On",
"locale": "en"
}
]
},
"policyName": {
"display": [
{
"name": "Policy Name",
"locale": "en"
}
]
},
"policyNumber": {
"display": [
{
"name": "Policy Number",
"locale": "en"
}
]
}
}
},
"display": [
{
"name": "Health Insurance",
"locale": "en",
"logo": {
"url": "https://raw.githubusercontent.com/tw-mosip/file-server/master/StayProtectedInsurance.png",
"alt_text": "a square logo of a Veridonia"
},
"background_image": {
"uri": "https://api.dev1.mosip.net/inji/veridonia-logo.png"
},
"background_color": "#FDFAF9",
"text_color": "#7C4616"
}
]
},
"LifeInsuranceCredential": {
"format": "ldp_vc",
"scope": "life_insurance_vc_ldp",
"order": [
"fullName",
"policyName",
"policyExpiresOn",
"policyIssuedOn",
"policyNumber",
"mobile",
"dob",
"gender",
"benefits",
"email"
],
"proof_types_supported": {
"jwt": {
"proof_signing_alg_values_supported": [
"RS256",
"ES256"
]
}
},
"credential_definition": {
"type": [
"VerifiableCredential",
"LifeInsuranceCredential"
],
"credentialSubject": {
"fullName": {
"display": [
{
"name": "Name",
"locale": "en"
}
]
},
"mobile": {
"display": [
{
"name": "Phone Number",
"locale": "en"
}
]
},
"dob": {
"display": [
{
"name": "Date of Birth",
"locale": "en"
}
]
},
"gender": {
"display": [
{
"name": "Gender",
"locale": "en"
}
]
},
"benefits": {
"display": [
{
"name": "Benefits",
"locale": "en"
}
]
},
"email": {
"display": [
{
"name": "Email Id",
"locale": "en"
}
]
},
"policyIssuedOn": {
"display": [
{
"name": "Policy Issued On",
"locale": "en"
}
]
},
"policyExpiresOn": {
"display": [
{
"name": "Policy Expires On",
"locale": "en"
}
]
},
"policyName": {
"display": [
{
"name": "Policy Name",
"locale": "en"
}
]
},
"policyNumber": {
"display": [
{
"name": "Policy Number",
"locale": "en"
}
]
}
}
},
"display": [
{
"name": "Life Insurance",
"locale": "en",
"logo": {
"url": "https://raw.githubusercontent.com/tw-mosip/file-server/master/StayProtectedInsurance.png",
"alt_text": "a square logo of a Veridonia"
},
"background_image": {
"uri": "https://api.dev1.mosip.net/inji/veridonia-logo.png"
},
"background_color": "#FDFAF9",
"text_color": "#7C4616"
}
]
}
}
}
Last updated
Was this helpful?