Service Recipes
A Service Recipe is a description of a service (Service Description) and optionally a set of actions to be taken to install the service. A service recipe enables a service (identified by its Service ID) to be delivered without involving the Service Provider’s (that’s most likely you) back end servers. This makes it very easy to deliver services. For example, by adding a simple install action a JavaCard application can be delivered to the end user’s Fidesmo Card. Service Recipes are managed via the Fidesmo API.
Your service will not appear to users until it is published. Before that (for example when testing), you can view the service using the “Manual service order” function in the Fidesmo App on Android and iPhone, by entering your app ID and service ID. To publish your service you need to contact Fidesmo developer support.
IMPORTANT NOTE: If recipes are used, we strongly recommend that all services belonging to an application use recipes. If at least one service is implemented by a server, then there is little to be gained by using recipes for other services of the same application. If by any reason you decide to mix recipes with services provided by your servers, please make sure that the Service Delivery and Service Description endpoints (described in Applications and Services) return 404 for those services not delivered by your servers.
Service Recipe JSON format
Field | Type | Explanation |
---|---|---|
description | Service Description | This description is what will be shown to the end user in the Fidesmo App Store. |
actions | Optional list of service actions | This is a list of actions to be taken in order. Each action is required to be successfully completed before the next action is taken. |
successMessage | Multilanguage String | Message displayed to the end user if the service delivery process finished successfully. |
failureMessage | Multilanguage String | Message displayed to the end user if the service delivery process failed. |
serviceResultUri | Optional URI | Endpoint where a summary of the service delivery will be sent in JSON format, when the service delivery process has been successful. If the URI is a mailto, an email will be sent. |
serviceCheckUri | Optional URI | Endpoint where a confirmation request will be sent. If this option is used, the service delivery process will only be carried out if a HTTP 200 message is returned. |
Service Recipe Action format
Each Action in an action list represents a call to the Fidesmo API. The Action object has two fields:
Field | Type | Explanation |
---|---|---|
endpoint | String | The endpoint path in the Fidesmo API |
content | Optional JSON data structure | This is the payload that will be sent to the API endpoint |
A Complete example
This is a complete example of a Service Recipe that is visible in the Fidesmo App Store and which will install a JavaCard application to the end user’s Fidesmo Card.
{
"description": {
"title": "Install"
},
"actions": [
{
"endpoint": "/ccm/install",
"content": {
"executableLoadFile": "A00000061700E26B8F1201",
"executableModule": "A00000061700E26B8F120101",
"application": "A00000061700E26B8F120101"
}
}
],
"successMessage": {
"en":"Congratulations! The service was correctly delivered",
"es":"¡Enhorabuena! El servicio se entregó correctamente"
},
"failureMessage": {
"en":"Apologies, something went wrong. Please try again",
"es":"Lo sentimos, algo salió mal. Por favor, inténtalo de nuevo"
},
"serviceResultUri": "mailto:example@example.com",
"serviceCheckUri": "https://install.example.com/check"
}
This recipe can be uploaded, updated and deleted via the Fidesmo API