Skip to main content

Shoppable and Consumable attributes

Overview

As described in the Property Graph section, both system instances and component instances can be marked as shoppable, while component instances can also be optionally flagged as consumable.

Consumable components

A consumable component (also referred to as consumable interface) is ready to be transmitted, used, or processed, indicating that its output is in a format or state that can be readily consumed. The tech adapters of consumable components will be involved in ACL update operations.

info

A tech adapter is a microservice, usually developed and maintained by the Platform Team, responsible for interacting with and updating the infrastructure on which a component is physically deployed

Consider a data product that represents the cash flow generated by a company. This data can be accessed through an output port that exposes a SQL table. In this scenario, the data product functions as a system, with the output port serving as one of its consumable components. The cash flow data can be ingested and transformed by a workload component, which does not expose data itself but is responsible for populating the SQL table exposed by the output port. This workload is not considered a consumable component.

info

Once a system and its components are deployed and published, the Witboost marketplace will only display consumable components: the primary objective of marketplace users is to access data.

Shoppable

When a system or component is marked as shoppable, all its consumable components (or subcomponents, if the shoppable attribute applies to a component) are secured under an ACL (Access Control List) mechanism.

This means that for a potential consumer to access the data exposed by the consumable interfaces, they will need to be granted the necessary permissions by the project owner.

note

The Witboost marketplace will display a Request Access button alongside a shoppable system or component. The following behavior applies:

When the shoppable attribute is on...the access request is sent to...
a systemthe tech adapters of all its consumable components and their subcomponents
a componentits tech adapter (if the component is consumable) and to the tech adapters of all its consumable subcomponents

The marketplace will ignore the shoppable attribute on subcomponents; instead, this will be inherited by the parent component if not already shoppable.

warning

Before flagging systems and components as shoppable or consumable, align with your Platform Team to make sure the involved tech adapters support the ACL operations.

Remember that by default, system and components instances inherit these attributes from the types they are instances of, although they can override them.