About the ChannelEngine category

Put topics about this connector package here.
Always check the ‘How to use the Alumio connector packages’ topic.

Extra information

System documentation: Channel Engine API Reference

Connector package documentation

​​Table of Contents

  • 1. Setting up HTTP Client Channel Engine
    • 1.1 Steps
  • 2. Subscribing to entities from Channel Engine
    • 2.1 Steps
    • 2.2 General concept
  • 3. Publishing entity to Channel Engine
    • 3.1 Steps
    • 3.2 General concept

1. Setting up HTTP Client Channel Engine

1.1 Steps

  1. In the Alumio Dashboard, go to Clients → HTTP Clients. Create a new HTTP Client and select “Channel Engine HTTP Client” as the HTTP Client.
  2. Fill in the Base URL and API Key.
  3. You can optionally enable logging of request to get the log of the authentication.
  4. Save the HTTP Client for use.

2. Subscribing to Entities from Channel Engine

2.1 Steps

  1. Go to Connections → Incoming and create a new incoming configuration and select “ChannelEngine - Merchant Subscriber” or “ChannelEngine - Channel Subscriber” as the subscriber.
  2. Select the Channel Engine HTTP Client to use.
  3. Select the entity you want to subscribe to from Channel Engine.
  4. Add any request parameters needed to subscribe to the entity.
  5. You can optionally add a transformer to transform the request parameters into something you will request from Channel Engine.
  6. You can also optionally enable pagination to allow Alumio fetches paginated entities.

2.2 General Concept

We follow Channel Engine documentation on building this connector, so you can easily use the connector based on Channel Engine API Reference.

HTTP Client

The HTTP Client configuration you will use to access Channel Engine.

Entity

The entity you want to subscribe to Channel Engine. Please refer to the entities from Channel Engine API Reference page.

Request Parameters

These are the parameters you can provide to get the needed entity based on the Channel Engine API Reference.

Please look at the example below on how to fill path field when subscribing “Download Invoice” entity.

Based on the documentation, we can see that the end point require “merchantOrderNo” as a path. That is why we set the “merchantOrderNo” inside the path key in the Request Parameters.

  • Path is the path parameter of the url. For example the {id}.
  • Query is defined set of parameters attached to the end of a url.
    Example: www.url.com?type=true&start=0

Alumio will then make a request to Channel Engine with the URL /v2/orders/123/invoice

3. Publishing Entity to Channel Engine

3.1 Steps

  1. Go to Connections → Outgoing, create a new outgoing configuration and select “ChannelEngine - Merchant Publisher” or “ChannelEngine - Channel Publisher” as the publisher.
  2. Select the Action that you want the publisher to perform with the data.
  3. Select the Channel Engine entity you want the data to be published to.
  4. You can optionally add any path data to the request on the key path.
  5. You can optionally add any query data to the request on the key query.
  6. You can optionally add any payload data to the request on the key payload.
  7. Select the HTTP Client to use.

3.2 General Concept

Like the subscriber, the publisher has similar methods on how to use it. The difference is the payload that will be submitted by the publisher originating from the data (from routes, from transformers in outgoing configuration), though you can also add or modify payload using the Request Transformer.

Action

Currently, we support HTTP POST method, HTTP PUT method and HTTP DELETE method on submitting data to Channel Engine.

Entity

We support publishing to most Channel Engine endpoints.
Please refer to Channel Engine API Reference page.

For example, we want to use delete a product. Please select “DELETE” as the Action and “Delete Product” as the entity of the publisher.

Based on the documentation, we can see that the end point require “merchantOrderNo” as a path. That is why we set the “merchantOrderNo” inside the path key in the Data.

image

Alumio will send an API request to Channel Engine with URL /v2/products/123

  • Path is the path parameter of the url. For example the {id}.
  • Query is defined set of parameters attached to the end of a url.
    Example: www.url.com?type=true&start=0
  • Payload is the data contained within a request.

HTTP Client

The HTTP Client configuration you will use to access Channel Engine.

Today we started testing the implementation of the ChannelEngine flow;
we tried to setup to import new Merchant orders:

  1. ChannelEngine - Merchant Subscriber (v2.13)
  • get orders by filter

request parameters:

{
  "query": {
    "fulfillmentType": "ONLY_CHANNEL"
  }
}

But the AIP (GET) calls are still without the query parameters, we receive ALL the orders.

Request result:

GET /api/v2/orders HTTP/1.1

without the Query parameters

2nd test: the GET / v2/products/{{merchantProductNo}}
endpoint and set the path parameter:

{
  "path": {
    "merchantProductNo": "SH00006002"
  },
  "query": []
}

request result:

Sending request
GET /api/v2/products/%7B%7BmerchantProductNo%7D%7D HTTP/1.1

Right now we’ve set-up everything via a HTTP Subscriber - that works :slight_smile: but we like to use the implementation