This is a html view of the json schema please take the json schema as reference DOWNLOAD THE JSON SCHEMA

Subscription

Type: object

In Pilot A subscription message object description.

This integration follows the EVENT/COMMAND pattern. The OpCo is considered as the owner of the SoR (system of records), therefore sending EVENTS. All other systems are considered as SoE (systems of engagement) and send COMMANDS. For the moment COMMANDS are not supported.

No Additional Properties

Type: object

If the conditions in the "If" tab are respected, then the conditions in the "Then" tab should be respected. Otherwise, the conditions in the "Else" tab should be respected.

Type: object

Type: object

Type: const
Specific value: "SUBSCRIPTION"
Type: object

Type: object

Type: const
Specific value: "SUBSCRIPTION"
Type: object

If the conditions in the "If" tab are respected, then the conditions in the "Then" tab should be respected. Otherwise, the conditions in the "Else" tab should be respected.

Type: object

Type: object

Type: const
Specific value: "SUBSCRIPTION_GROUP"
Type: object

Type: object

Type: const
Specific value: "SUBSCRIPTION_GROUP"

Event header

Type: object

The event message header providing metadata details.

No Additional Properties

Type: enum (of string)

The source entity of this event

Must be one of:

  • "OPCO"

Example:

"OPCO"

Type: enum (of string)

The version of the json event format

Must be one of:

  • "v1"

Example:

"v1"

Type: enum (of string)

The type of the event following the command/event pattern.
At the moment Spark will not allow any modification/creation/deletion of subscriptions types and groups, Spark will only consume the EVENT coming from the OpCo.

Must be one of:

  • "EVENT"

Example:

"EVENT"

Subscription Type

Type: enum (of string)

This object is used to describe the type of the subscription
- SUBSCRIPTION is a single subscription
- SUBSCRIPTION_GROUP is a group of subscriptions

Must be one of:

  • "SUBSCRIPTION"
  • "SUBSCRIPTION_GROUP"

Example:

"SUBSCRIPTION"

The payload of the event to be ingested

Type: object

This object contains the actual data of the subscription event

No Additional Properties

If the conditions in the "If" tab are respected, then the conditions in the "Then" tab should be respected. Otherwise, the conditions in the "Else" tab should be respected.

Type: object

Type: const
Specific value: "SUBSCRIPTION_GROUP"
Type: object

The following properties are required:

  • list

Type: string

The code of the subscription/group (logical identifier)

Must be at least 1 characters long


Example:

"INVOICE_NOTIFICATION"

Multilingual Object

Type: object

This filed should contain the label of the subscription (i18n field)


Example:

{
    "fr-FR": "Notification sur les factures",
    "en-GB": "Invoices notification"
}

Each additional property must conform to the following schema

Type: string

Must be at least 1 characters long

Multilingual Object

Type: object

A short description of the subscription


Example:

{
    "fr-FR": "Recevoir une notification à chaque nouvelle facture",
    "en-GB": "Receive a notification for each new invoice"
}

Each additional property must conform to the following schema

Type: string

Must be at least 1 characters long

Subscription Type

Type: enum (of string)

This object is used to describe the type of the subscription
- SUBSCRIPTION is a single subscription
- SUBSCRIPTION_GROUP is a group of subscriptions

Must be one of:

  • "SUBSCRIPTION"
  • "SUBSCRIPTION_GROUP"

Type: enum (of string)

The status of the subscription

Must be one of:

  • "ACTIVE"
  • "DELETED"

Example:

"ACTIVE"

Type: array of object

The list allows to define the “notification” options for the subscription.
Only one option can be selected for the subscription.

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

Type: object

Type: string

The code of the option

Must be at least 1 characters long


Example:

"SINGLE_INVOICE"

Multilingual Object

Type: object

This field should contain the label of the option (i18n field)


Example:

{
    "fr-FR": "Option de notification",
    "en-GB": "Notification option"
}

Each additional property must conform to the following schema

Type: string

Must be at least 1 characters long

Multilingual Object

Type: object

A short description of the option


Example:

{
    "fr-FR": "Recevoir chaque facture independement",
    "en-GB": "Receive each invoice independently"
}

Each additional property must conform to the following schema

Type: string

Must be at least 1 characters long


Example:

[
    {
        "code": "SINGLE_INVOICE",
        "label": {
            "fr-FR": "Recevoir chaque facture independement",
            "en-GB": "Receive each invoice independently"
        },
        "description": {
            "fr-FR": "Recevoir chaque facture independement",
            "en-GB": "Receive each invoice independently"
        }
    },
    {
        "code": "WEEKLY_INVOICE",
        "label": {
            "fr-FR": "Recevoir chaque facture independamment",
            "en-GB": "Receive all invoices on a weekly basis"
        },
        "description": {
            "fr-FR": "Recevoir chaque facture independamment",
            "en-GB": "Receive all invoices on a weekly basis"
        }
    }
]

Type: array of string

The list of the subscription codes that are part of the group

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

Type: string

Type: integer

Allow the OpCo to decide the order of displaying the subscriptions or subscription groups (1 - means on top of the list, other numbers will follow).
It will only be compared against the same type of subscription (group or subscription).
If order is missing, the document will be placed at the bottom of the list.


Example:

1