Information in this section is intended for our customers who use the OEM version of the elastic.io platform.
In this release we introduce the recipe management feature for creating and deploying the integration solutions at scale. You can now embed the entire solution in your platform, App or website. Your clients can now access and deploy flows without leaving your platform or site - they simply select an integration that you list and enter their credentials.
Please note that you will need to trigger the necessary API calls to the platform so that the User, workspace, etc. are created and so that the flow is deployed.
You can see an embedded form for recipe activation on a screenshot above. The following instruction show how to create a similar page for your case.
Please Note: You must have
tenantAdmin
role to succeed.
The whole idea of recipe activation form embedding is to make the process as easy as possible for your user. You take over the entire process of user creation and registration and manage it behind the scene. Your user gets one URL to a form to fill-in the necessary fields and activate the integration solution.
Here are the steps:
taenantAdmin
API call).tenantAdmin
API call).tenantAdmin
API call).tenantAdmin
role holder. Contact support for help. We expect to deliver this option by the next release.The access URL to a form must have the following format:
https://[platform_domain]/embedded-recipe?recipeId=[recipeId]&oneTimeToken=[oneTimeToken]&contractId=[contractId]
platform_domain
(required). Your platform domain.recipeId
(required). Recipe ID which you want the user to activate.oneTimeToken
(required). Onetime token you generated earlier (step 5) to authenticate your user in the platform.contractId
(optional). Contract ID in which the user will activate the recipe. If you omit this parameter then the platform will use the first available contract where user is registered.You can create an embed page following the example:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Embedded Credentials Demo</title>
<style>html, body, iframe { height: 85%; width: 90%; margin: 0;}</style>
</head>
<body>
<iframe src="https://[platform_domain]/embedded-recipe?recipeId=[recipeId]&oneTimeToken=[oneTimeToken]&contractId=[contractId]" />
</body>
</html>
Here we use the generated URL in iframe
. You can shape and style your page
according to your needs.
When a user successfully activates a recipe, the platform sends a message with a Recipe Deployment ID to the parent window.
{
"action": "eio:embedded-recipe:activate-success",
"data": {
"recipeDeploymentId": "RECIPE_DEPLOYMENT_ID"
}
}
To manage recipes in scale and enable easy management we introduced the recipe deployment new endpoints to our API. Along with this change, we updated related API endpoints for consistency.
To manage recipe deployments for each tenant, we introduced GLOBAL.RECIPE_DEPLOYMENT.GET
,
GLOBAL.RECIPE_DEPLOYMENT.SYNC
and GLOBAL.RECIPE_DEPLOYMENT.DELETE
permissions.
Please Note: The
PATCH
andDELETE
calls to edit or delete the flows will now return409
Conflict (Can not delete flow, because it has recipe deployment relation) when the flow is part of a recipe deployment. You must first sever the connection between them. Check theGLOBAL.RECIPE_DEPLOYMENT.DELETE
section to learn how.
GLOBAL.RECIPE_DEPLOYMENT.GET
With this permission you can retrieve the recipe deployments using the
?include=recipe-deployments
parameter in the GET
/v2/recipes
HTTP call.
The answer will include the connected RecipeDeployment
in a response.
The standard user can fetch only recipe deployments:
GLOBAL.RECIPE_DEPLOYMENT.GET
permission in the TENANT
scope,GLOBAL.RECIPE_DEPLOYMENT.GET
permission in the GLOBAL
scope.GLOBAL.RECIPE_DEPLOYMENT.SYNC
This permission allows to stop the flows connected to a certain recipe, update it
to the latest version of the recipe and start it again. By default the tenantAdmin
role has this permission.
With this permission you can make POST
HTTP request to /v2/recipe-deployments/:id/sync
to stop the flow, update and restart it.
The standard user can sync recipe deployments:
GLOBAL.RECIPE_DEPLOYMENT.SYNC
permission in the TENANT
scope,GLOBAL.RECIPE_DEPLOYMENT.SYNC
permission in the GLOBAL
scope.GLOBAL.RECIPE_DEPLOYMENT.DELETE
This permission allows to delete the recipe deployment but not the flows created from it. It effectively cuts the connection between recipe deployment and the flow.
With this permission you can make an HTTP DELETE
call to the /v2/recipe-deployments/:id
endpoint to delete the recipe deployment only.
The standard user can delete the recipe deployment:
GLOBAL.RECIPE_DEPLOYMENT.DELETE
permission in the TENANT
scope,GLOBAL.RECIPE_DEPLOYMENT.DELETE
permission in the GLOBAL
scope.1.0.0
and 1.1.0
Get New and Updated Objects Polling
triggerLookup Object (at most one)
actionLookup Objects (plural)
actionUpsert Object
actionDelete Object
actionMake Raw Request
actionLink or Unbind object
action3.0.0
Create a Payment
action. Note this is a breaking change2.0.6
Sailor
library version to 2.7.1
1.3.6
1.2.0
Delete Object
actionSailor
library version to 2.7.1
1.2.0