- Ingest data
- Transform data
- Delivering data
Ingesting data
To get started ingesting data we need to do a few things first.Environment settings
The first thing to do is ensure that we have an environment available. Enterspeed will automatically create two environments for you. You can view them under Environment settings in the settings section You can create new environments, edit the name of your environments or delete them. Beware of deleting environments, since this is an irreversible action that will remove all data attached to the environment.Data source settings
Then we also need to prepare Enterspeed, so your tenant can receive data. This is done by creating a data source. Data sources are where a connection is created to your CMS, PIM-system, or perhaps a development instance of your CMS. Go to data sources and create a data source group. (e.g. Demo CMS), and your data sources. You should now have an API key available for you. The data source API key is a unique key used for both authentication when pushing data and also as an id for the data source that you will be pushing source entities to. Read more about data sources and how to manage them here.Preparing your system
You will need a way to ingest data into Enterspeed from your source system. We have multiple options to get started with pushing source entities to Enterspeed.- Through our API. Find the API documentation here.
- Premade connectors so you can get started immediately.
- Our .NET SDK. https://github.com/enterspeedhq/enterspeed-sdk-dotnet
Example of data sent to the ingest API
Source Entities
When the above steps have been applied successfully you are ready to push data to Enterspeed. Data in Enterspeed is called Source Entities. Source Entities conform to a specific format. The important thing to know about source entities is that these are not representing the final output of your Enterspeed routes, but should be seen as the data that is available for you to work with and transform to your needs through your schemas.Source entity example
Transforming data
Schemas
The data now exists as source entities in Enterspeed and can be formed and modeled easily with data mapping in Enterspeed schemas. Read more about schemas.Schema
Routing
Routing is set up in Schemas and is a part of setting up schemas and API’s. We currently offer two ways of setting up routing:Partial Schemas
Partial schemas are a bit different from the typical schema. A partial schema is a reusable schema that is used across multiple schemas. A typical use case is when you want a specific data structure and type of data across many schemas. You can read more about partials here and how it is used.Actions
Actions are used when a new view has been generated from a schema. It defines which specific actions to take following the newly generated view. Currently, Enterspeed supports triggering theprocess of another schema.
Imagine the following.
You have a product and category source entity type.
When you ingest a product, the list of products should be updated in the generated category view and include the changes. This is a typical use-case scenario for actions.
Read more about Actions
References
Referencing another schema. The Reference property type is a bit different than the Partial property type. The Reference property allows referencing other views created from either this Source Entity or from another source entity and the Partial property can only use data from this Source Entity. A benefit of a reference field is that the referenced view is resolved when requested by the Delivery API. There is no need the update the requested view if a referenced view has been updated. Read more about the Reference property here with a more in-depth explanation and examples.Views
A view should be considered as the output. Data is mapped in a Schema from source entities. When a source entity is created, updated or deleted, all schemas that are set up for the type of this source entity will create, update or delete the view accordingly. In short, the view is the response when calling the Delivery API.Delivering data
Your data has now been ingested as source entities and transformed using schemas. An example of calling the delivery API can be found here.JavaScript example of calling the delivery API