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

Subscriber

Type: object

In Pilot A subscriber 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.

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: object


Must not be:

Type: const
Specific value: "OPCO"
Type: object

The following properties are required:

  • request

Type: object

The event message header providing metadata details.

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: const
Specific value: "OPCO"
Type: object

Type: const
Specific value: "EVENT"
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: const
Specific value: "SPARK"
Type: object

Type: const
Specific value: "COMMAND"

Type: enum (of string)

The source entity of this event

Must be one of:

  • "OPCO"
  • "SPARK"

Example:

"OPCO"

Type: string

The version of the json event format

Must be at least 1 characters long


Example:

"v1"

Type: enum (of string)

Type of event:

  • COMMAND to request a change on master
  • EVENT from master to publish a change

Must be one of:

  • "EVENT"
  • "COMMAND"

Example:

"EVENT"

Type: enum (of string)

The type of the document

Must be one of:

  • "SUBSCRIBER"

Example:

"SUBSCRIBER"

Type: object
No Additional Properties

Type: string

Identifier of the request.

  • From SPARK to the OpCo is the technical id of the entity (_id)
  • From the OpCo to SPARK is the identifier provided by SPARK in response to the change request

Must be at least 1 characters long


Example:

"236124362632423"

Type: enum (of string)

The target, consumer of the request

Must be one of:

  • "OPCO"
  • "SPARK"

Example:

"OPCO"

Type: object

This object is used if errors are raised by the master (OpCO) receiving a COMMAND. This entity should be included in the response EVENT, if the case.

No Additional Properties
Example:

{
    "code": "SUBSCRIBER_NOT_FOUND",
    "message": "The subscriber was not found"
}

Type: enum (of string)

The error code

Must be one of:

  • "SUBSCRIBER_NOT_FOUND"
  • "TECHNICAL_FAILURE"
  • "BUSINESS_LOGIC_ERROR"

Example:

"SUBSCRIBER_NOT_FOUND"

Type: string

A message describing the error

Must be at least 1 characters long


Example:

"The subscriber was not found"

The payload of the event to be ingested

Type: object

This object contains the actual data of the subscriber event

No Additional Properties

Type: object

The following properties are required:

  • subscriptionListToAdd
Type: object

The following properties are required:

  • subscriptionListToDelete

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: true
Type: object

The following properties are required:

  • name
  • firstName
Type: object

The following properties are required:

  • name

Type: stringFormat: email

The email address of the subscriber

Must be at least 1 characters long


Example:

"test@gmail.com"

Type: string

The account identifier of the subscriber

Must be at least 1 characters long


Example:

"123456"

Type: string

Name of the subscriber:

  • used as last name in case of individual
  • department/service name otherwise

Must be at least 1 characters long


Example:

"Doe"

Type: string

First name of the subscriber

Must be at least 1 characters long


Example:

"John"

Type: string

Middle name of the subscriber

Must be at least 1 characters long


Example:

"Doe"

Type: boolean Default: true

Flag to indicate if the subscriber is an individual or a service/department.
If true, the name field is used as last name.
If omitted, the subscriber is considered as an individual (true)


Example:

true

Type: string

ContactId if it is a known user

Must be at least 1 characters long


Example:

"123456"

Type: enum (of string)

The status of the subscriber.
- PENDING for creation and modification
- ACTIVE if the subscriber is active
- DELETED if the subscriber is to be deleted

Must be one of:

  • "PENDING"
  • "ACTIVE"
  • "DELETED"

Example:

"ACTIVE"

Type: array of string

The list of subscription codes to add to the subscriber

No Additional Items

Each item of this array must be:

Type: string

Must be at least 1 characters long


Examples:

[
    "INVOICE_NOTIFICATION"
]
[
    "INVOICE_NOTIFICATION",
    "PAYMENT_REMINDER",
    "ACCOUNT_UPDATE"
]

Type: array of string

The list of subscription codes to remove from the subscriber

No Additional Items

Each item of this array must be:

Type: string

Must be at least 1 characters long


Example:

[
    "INVOICE_NOTIFICATION"
]

Type: stringFormat: date-time

The date of the last modification of the subscriber


Example:

"2025-02-23T08:30:22.804Z"