Halla I/O (2.0.0)

Download OpenAPI specification:Download

Authentication

api_key

Security Scheme Type API Key
Query parameter name: key

Get Products

Real-time, contextual product recommendation, substitution and search. Returns a list of products with attached relevance scores.

Authorizations:
query Parameters
strategy
required
string
Enum: "recommend" "substitute" "search"

Determines which service should be used for this request.

filters
string
Enum: "PREVIOUSLY_PURCHASED" "NEVER_PURCHASED"

Optional filter to further restrict the domain of response products beyond the storeId. PREVIOUSLY_PURCHASED will restrict the domain to just products that a consumer has previously purchased, if consumerId is invalid no products will be returned. NEVER_PURCHASED will restrict the domain to just products that a consumer has not previously purchased, if consumerId is invalid this filter will not be applied. Note that products contained in productId and cartProductIds request fields are removed by default.

text
string

Required parameter when strategy is set to search. Value is the consumer-entered text to be searched. Must be sent URL encoded, e.g. "mango mochi" > "mango%20mochi"

categories
string

Optional parameter to filter resultset by a given category. Must be sent URL encoded, e.g. "GRAINS/CEREALS" > "GRAINS%2FCEREALS"

tags
string

Optional parameter to filter resultset by a given tag or set of tags. Use multiple "tags" parameters to filter by multiple tags using and logic. Use an encoded pipe (i.e. %7C) to filter by multiple tags using or logic. For example:

  • vegan and vegetarian > &tags=vegan&tags=vegetarian
  • vegan or vegetarian > &tags=vegan%7Cvegetarian
  • gluten_free and (vegan or vegetarian) > &tags=gluten_free&tags=vegan%7Cvegetarian
placement
string

Field to specify where these suggestions are being placed. Used to obtain granularity into how each use case is performing.

productId
string

Subscriber specific product identifier to recommend based on. Required for substitution strategy.

cartProductIds
string

A comma delimited string of subscriber specific product identifiers for a consumer's current cart. If productId is not passed in the query, then recommendations will be based on the cartProductIds. If a productId is passed in the query, then cartProductIds will be used to improve recommendation relevance.

consumerId
string

Subscriber specific consumer identifier to personalize recommendations. If productId and cartProductIds are not passed in the query, then recommendations will be based on previous consumer behavior.

storeId
string

Subscriber specific store identifier, selecting the catalog of products to recommend from. If storeId is invalid or is not passed in the query, then recommendations will be sourced from the subscriber's master product list.

limit
integer

Upper bound on the number of products to return. Default = 15. Max = 30.

header Parameters
serviceAccount
required
string

Identifies the serviceAccount for authorization purposes.

Responses

Get Product Metadata

Get back Halla comupted meta data for a given product.

Authorizations:
path Parameters
productId
required
string

Subscriber specific primary product id.

header Parameters
serviceAccount
required
string

Identifies the serviceAccount for authorization purposes.

Responses

Get Product

Get back a product by it's primary product id

Authorizations:
path Parameters
productId
required
string

Subscriber specific primary product id.

header Parameters
serviceAccount
required
string

Identifies the serviceAccount for authorization purposes.

Responses

Add Orders

Adds new orders, updating associated consumer profiles to allow for real-time personalization. Amount of orders in a single request should not exceed 100k

Authorizations:
header Parameters
serviceAccount
required
string

Identifies the serviceAccount for authorization purposes.

Request Body schema: application/json

The orders to create.

Array of objects (Order)

Responses

Request samples

Content type
application/json
{
  • "orders":
    [
    ]
}

Add Store

Creates / overwrites a store with a distinct catalog. Notes: -Halla will perform best on inventories between 1,000 and 50,000 products. -Primary product ids persist across multiple stores for a given client.

Authorizations:
header Parameters
serviceAccount
required
string

Identifies the serviceAccount for authorization purposes.

Request Body schema: application/json

The store to create.

id
required
string

Used across services to link to this store object.

channel
string
Enum: "E_COMMERCE" "SELF_SCAN" "SMART_CART" "PROMOTIONS" "OTHER"

The application type that will be using Halla's services.

type
string
Enum: "GROCERY_STORE" "SUPER_STORE" "CONVENIENCE" "DELI" "OTHER"

The type of store that will be using Halla's services.

brand
string

Brand of store.

postalCode
string

postal code of store location.

country
string

2 digit country abbreviation. 'US for United States and UK for United Kingdom.'

Array of objects (Product)

Products in the given store's catalog.

object (ProductSummary)

Descriptive information on a store's products.

Responses

Request samples

Content type
application/json
{
  • "id": "string",
  • "channel": "E_COMMERCE",
  • "type": "GROCERY_STORE",
  • "brand": "string",
  • "postalCode": "string",
  • "country": "string",
  • "products":
    [
    ],
  • "productSummary":
    {
    }
}

Get Store Ids

Gets all store ids.

Authorizations:
header Parameters
serviceAccount
required
string

Identifies the serviceAccount for authorization purposes.

Responses

Add Products To Many Stores

Bulk method to apply product updates across multiple stores. Note: OVERWRITE will remove products with matching product ids in stores not provided in the request.

Authorizations:
header Parameters
serviceAccount
required
string

Identifies the serviceAccount for authorization purposes.

Request Body schema: application/json

The updates to apply.

Array of objects (ProductUpdate)

Responses

Request samples

Content type
application/json
{
  • "updates":
    [
    ]
}

Delete Store

Deletes store data.

Authorizations:
path Parameters
sid
required