{
"openapi": "3.0.1",
"info": {
"title": "Fenergo Nebula Event Ingress",
"description": "## Purpose of the API\n\nThe purpose of the Event Ingress API is to is to provide an endpoint for third party applications to send events to, which will allow Fen-X to process entity related events.\n\nProcessing of an event will trigger the correspondent journey depending on the event type and sub type received.\r\n\r\n\r\n\r\n",
"version": "1.0"
},
"servers": [
{
"url": "/eventingress"
}
],
"paths": {
"/v1/business-process-types": {
"get": {
"tags": [
"BusinessProcesses"
],
"summary": "List all available business process types.",
"description": "\nThis method will return a list of available business process types.",
"operationId": "ListBusinessProcessTypes",
"parameters": [
{
"name": "X-TENANT-ID",
"in": "header",
"description": "The UiD of the tenant representing organization",
"required": true,
"schema": {
"type": "string"
},
"example": "b11f8be3-f29b-4959-8964-956d4af7c468"
}
],
"responses": {
"200": {
"description": "Success. The list of business process types is returned.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BusinessProcessTypeDtoListServiceResponse"
}
}
}
},
"410": {
"description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/StringServiceResponse"
},
"example": {
"data": null,
"messages": [
{
"message": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"type": "Error",
"errorCode": "OBSOLETE_ENDPOINT"
}
]
}
}
}
}
}
}
},
"/v1/events/{eventId}": {
"get": {
"tags": [
"Events"
],
"summary": "Get an ingress event with related entities.",
"description": "\nThis method will return an Ingress Event based on eventId.",
"operationId": "GetEvent",
"parameters": [
{
"name": "eventId",
"in": "path",
"description": "Id of an event",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "X-TENANT-ID",
"in": "header",
"description": "The UiD of the tenant representing organization",
"required": true,
"schema": {
"type": "string"
},
"example": "b11f8be3-f29b-4959-8964-956d4af7c468"
}
],
"responses": {
"200": {
"description": "successfully return desired event's data.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GetEventResponseServiceResponse"
}
}
}
},
"400": {
"description": "The request has missing/invalid values.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorModelListServiceResponse"
}
}
}
},
"403": {
"description": "The service is disabled."
},
"410": {
"description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/StringServiceResponse"
},
"example": {
"data": null,
"messages": [
{
"message": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"type": "Error",
"errorCode": "OBSOLETE_ENDPOINT"
}
]
}
}
}
}
}
}
},
"/v1/events-by-filter": {
"post": {
"tags": [
"Events"
],
"summary": "Get events within a date range (Obsolete).",
"description": "This endpoint is obsolete and was terminated on 2026-02-01. Please use '/v1/events-by-filter-paginated' endpoint instead.
\nThis method will return events that occurred between the provided start and end dates.",
"operationId": "GetEventsByFilter",
"parameters": [
{
"name": "X-TENANT-ID",
"in": "header",
"description": "The UiD of the tenant representing organization",
"required": true,
"schema": {
"type": "string"
},
"example": "b11f8be3-f29b-4959-8964-956d4af7c468"
}
],
"requestBody": {
"description": "Fenergo.Nebula.EventIngress.Ingress.Api.V1.Models.GetEventsByFilterRequest class that represents get events by filter request.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GetEventsByFilterRequest"
}
}
}
},
"responses": {
"200": {
"description": "Successfully return desired events' data.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GetEventSimpleResponseListServiceResponse"
}
}
}
},
"400": {
"description": "The request has missing/invalid values.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorModelListServiceResponse"
}
}
}
},
"403": {
"description": "The service is disabled."
},
"410": {
"description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/StringServiceResponse"
},
"example": {
"data": null,
"messages": [
{
"message": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"type": "Error",
"errorCode": "OBSOLETE_ENDPOINT"
}
]
}
}
}
}
},
"deprecated": true
}
},
"/v1/events-by-filter-paginated": {
"post": {
"tags": [
"Events"
],
"summary": "Get events within a date range.",
"description": "\nThis method will return events that occurred between the provided start and end dates.",
"operationId": "GetEventsByFilterPaginated",
"parameters": [
{
"name": "X-TENANT-ID",
"in": "header",
"description": "The UiD of the tenant representing organization",
"required": true,
"schema": {
"type": "string"
},
"example": "b11f8be3-f29b-4959-8964-956d4af7c468"
}
],
"requestBody": {
"description": "Fenergo.Nebula.EventIngress.Ingress.Api.V1.Models.GetEventsByFilterRequest class that represents get events by filter request.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GetEventsByFilterRequest"
}
}
}
},
"responses": {
"200": {
"description": "Successfully return desired events' data.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GetEventSimpleResponsePaginatedResponseServiceResponse"
}
}
}
},
"400": {
"description": "The request has missing/invalid values.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorModelListServiceResponse"
}
}
}
},
"403": {
"description": "The service is disabled."
},
"410": {
"description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/StringServiceResponse"
},
"example": {
"data": null,
"messages": [
{
"message": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"type": "Error",
"errorCode": "OBSOLETE_ENDPOINT"
}
]
}
}
}
}
}
}
},
"/v1/events/{eventId}/messageUrl": {
"get": {
"tags": [
"Events"
],
"summary": "Get processed or received message of ingress event.",
"description": "\nThis method will return an Ingress Event's S3 message.\r\n\n\r\n Warning: Method not to be used in any integrations. It's purpose is to facilitate manual investigations via Integration Hub. The file contents/schema it returns is expected to change overtime as new functionality is released.",
"operationId": "GetEventMessageUrl",
"parameters": [
{
"name": "eventId",
"in": "path",
"description": "Id of an event",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "type",
"in": "query",
"description": "Type of an event's message",
"schema": {
"$ref": "#/components/schemas/EventMessageType"
}
},
{
"name": "X-TENANT-ID",
"in": "header",
"description": "The UiD of the tenant representing organization",
"required": true,
"schema": {
"type": "string"
},
"example": "b11f8be3-f29b-4959-8964-956d4af7c468"
}
],
"responses": {
"200": {
"description": "successfully return desired event's message.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/StringServiceResponse"
}
}
}
},
"400": {
"description": "The request has missing/invalid values.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorModelListServiceResponse"
}
}
}
},
"403": {
"description": "The service is disabled."
},
"410": {
"description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/StringServiceResponse"
},
"example": {
"data": null,
"messages": [
{
"message": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"type": "Error",
"errorCode": "OBSOLETE_ENDPOINT"
}
]
}
}
}
}
}
}
},
"/v1/events": {
"post": {
"tags": [
"Events"
],
"summary": "Send an ingress event.",
"description": "\nThis method will publish the event to event bridge in order to communicate with Business Process.",
"operationId": "SendEvent",
"parameters": [
{
"name": "X-TENANT-ID",
"in": "header",
"description": "The UiD of the tenant representing organization",
"required": true,
"schema": {
"type": "string"
},
"example": "b11f8be3-f29b-4959-8964-956d4af7c468"
}
],
"requestBody": {
"description": "Fenergo.Nebula.EventIngress.Ingress.Commands.Dto.Command.SendEventRequestDto class that represents send event request.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SendEventRequestDto"
},
"examples": {
"Create Entity Request": {
"value": {"eventType":"externaldata","eventSubtype":"createentity","correlationId":"ad67fe8e-09de-4aa2-997f-7c0a5a63c507","source":"Test Organization","payload":{"type":"Individual","targetEntity":"Related Party","properties":{"firstName":{"type":"Single","value":"Tom"},"dateOfBirth":{"type":"Single","value":"2021-07-15"},"address":{"type":"Collection","dataGroupId":"674ccef1-cfdc-46af-97f8-340b24ab7f43","collections":{"54a25d24-1a4b-45c6-a5b4-980e5d3a1df5":{"properties":{"country":"Spain","city":"Madrid","street":"C. de Sevilla"}},"93468632-1a9e-4ad0-b2e1-c5ec0f65d7b2":{"properties":{"country":"Spain","city":"Barcelona","street":"Carrer de Girona"}}}}},"dataSources":{"entityDataMetadata":{"entityType":"string"},"eventIngress":{"eventType":"string","eventSubtype":"string"},"changedFields":{"changedFields":[{"key":"string"}]},"relatedClient":{"properties":{"firstName":{"type":"Single","value":"Tom"},"dateOfBirth":{"type":"Single","value":"2021-07-15"},"address":{"type":"Collection","dataGroupId":"674ccef1-cfdc-46af-97f8-340b24ab7f43","collections":{"54a25d24-1a4b-45c6-a5b4-980e5d3a1df5":{"properties":{"country":"Spain","city":"Madrid","street":"C. de Sevilla"}},"93468632-1a9e-4ad0-b2e1-c5ec0f65d7b2":{"properties":{"country":"Spain","city":"Barcelona","street":"Carrer de Girona"}}}}}}},"policyJurisdiction":"Global","policyJurisdictions":["string"],"alternateId":"1124efd2-3423-40f5-9bdb-fae66c7fa88a","category":["string"],"accessLayers":{"geographic":["Global"],"businessRelated":["Enterprise"]}}}
},
"Update Entity Request": {
"value": {"eventType":"externaldata","eventSubtype":"updateentity","entityId":"af2c0eca-bf1c-460d-afc0-046f61233d4f","correlationId":"29c7aebf-fcb2-4016-af91-53033bd4f3f4","source":"Test Organization","payload":{"type":"Individual","targetEntity":"Related Party","properties":{"firstName":{"type":"Single","value":"Tom"},"dateOfBirth":{"type":"Single","value":"2021-07-15"},"address":{"type":"Collection","dataGroupId":"674ccef1-cfdc-46af-97f8-340b24ab7f43","collections":{"54a25d24-1a4b-45c6-a5b4-980e5d3a1df5":{"properties":{"country":"Spain","city":"Madrid","street":"C. de Sevilla"}},"93468632-1a9e-4ad0-b2e1-c5ec0f65d7b2":{"properties":{"country":"Spain","city":"Barcelona","street":"Carrer de Girona"}}}}},"dataSources":{"entityDataMetadata":{"entityType":"string"},"eventIngress":{"eventType":"string","eventSubtype":"string"},"changedFields":{"changedFields":[{"key":"string"}]},"relatedClient":{"properties":{"firstName":{"type":"Single","value":"Tom"},"dateOfBirth":{"type":"Single","value":"2021-07-15"},"address":{"type":"Collection","dataGroupId":"674ccef1-cfdc-46af-97f8-340b24ab7f43","collections":{"54a25d24-1a4b-45c6-a5b4-980e5d3a1df5":{"properties":{"country":"Spain","city":"Madrid","street":"C. de Sevilla"}},"93468632-1a9e-4ad0-b2e1-c5ec0f65d7b2":{"properties":{"country":"Spain","city":"Barcelona","street":"Carrer de Girona"}}}}}}},"policyJurisdiction":"Global","policyJurisdictions":["string"],"alternateId":"1124efd2-3423-40f5-9bdb-fae66c7fa88a","category":["string"],"accessLayers":{"geographic":["Global"],"businessRelated":["Enterprise"]}}}
},
"Create Alert": {
"value": {"eventType":"transactionmonitoring","eventSubtype":"createalert","entityId":"c9d4fe5a-97b5-45b1-a7d4-1b4e0b4c2c57","correlationId":"fcf2f6e7-da52-4625-92f8-d9adfb6ddf71","source":"Test Organization","payload":{"externalId":"c511988c-4dba-41fb-977c-ddc997e8c606","hashId":"d3e0fb42-58ad-4e39-8293-5271222bd34b","creationDate":"2025-01-01T00:00:00","type":"AML|ENT|FRD|EPA","mainEntityId":"6476c1f7-537f-4965-8f6d-b989fe17c185","transactionIds":["7581e2ab-4ac7-4f0c-8569-0504ba008b9f"],"ruleId":"rule-xyz","ruleName":"rule-xyz-name","ruleDescription":"rule-description-xyz","ruleVersion":"0","source":"TM|External","alertScore":"10"}}
},
"Retrigger Alert": {
"value": {"eventType":"transactionmonitoring","eventSubtype":"retriggeralert","correlationId":"966c7801-917e-4d13-92fd-6623bcb5759c","source":"Test Organization","payload":{"alertId":"9d117a2c-ecb2-478d-ae84-6dec3dd5ece1"}}
}
}
}
}
},
"responses": {
"202": {
"description": "The request has been accepted for further processing.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SendEventResponseServiceResponse"
}
}
}
},
"400": {
"description": "The request has missing/invalid values.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorModelListServiceResponse"
}
}
}
},
"403": {
"description": "The service is disabled."
},
"410": {
"description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/StringServiceResponse"
},
"example": {
"data": null,
"messages": [
{
"message": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"type": "Error",
"errorCode": "OBSOLETE_ENDPOINT"
}
]
}
}
}
}
}
}
},
"/v1/events/types": {
"get": {
"tags": [
"Events"
],
"summary": "Request event types.",
"description": "This endpoint is obsolete and was terminated on 2024-04-30. Please use '/v1/event-types' endpoint instead.
\nThis method will return a list of allowed event types with event subtypes.",
"operationId": "GetEventTypes",
"parameters": [
{
"name": "X-TENANT-ID",
"in": "header",
"description": "The UiD of the tenant representing organization",
"required": true,
"schema": {
"type": "string"
},
"example": "b11f8be3-f29b-4959-8964-956d4af7c468"
}
],
"responses": {
"200": {
"description": "Success. The list of event types with event subtypes is returned.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GetEventTypesResponseServiceResponse"
}
}
}
},
"403": {
"description": "The service is disabled."
},
"410": {
"description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/StringServiceResponse"
},
"example": {
"data": null,
"messages": [
{
"message": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"type": "Error",
"errorCode": "OBSOLETE_ENDPOINT"
}
]
}
}
}
}
},
"deprecated": true
}
},
"/v1/event-types": {
"get": {
"tags": [
"EventTypes"
],
"summary": "List all available event types, event subtypes, and event subtypes' business process mappings.",
"description": "\nThis method will return a list of allowed event types with event subtypes.",
"operationId": "ListEventTypes",
"parameters": [
{
"name": "X-TENANT-ID",
"in": "header",
"description": "The UiD of the tenant representing organization",
"required": true,
"schema": {
"type": "string"
},
"example": "b11f8be3-f29b-4959-8964-956d4af7c468"
}
],
"responses": {
"200": {
"description": "Success. The list of event types with event subtypes is returned.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/EventTypeDtoListServiceResponse"
}
}
}
},
"403": {
"description": "The service is disabled."
},
"410": {
"description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/StringServiceResponse"
},
"example": {
"data": null,
"messages": [
{
"message": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"type": "Error",
"errorCode": "OBSOLETE_ENDPOINT"
}
]
}
}
}
}
}
},
"post": {
"tags": [
"EventTypes"
],
"summary": "Add a new event type, event subtypes, and map event subtypes to business processes.",
"description": "\nThis method creates a new even type and event subtypes, and maps provided event subtypes to business processes.",
"operationId": "AddEventType",
"parameters": [
{
"name": "X-TENANT-ID",
"in": "header",
"description": "The UiD of the tenant representing organization",
"required": true,
"schema": {
"type": "string"
},
"example": "b11f8be3-f29b-4959-8964-956d4af7c468"
}
],
"requestBody": {
"description": "Fenergo.Nebula.EventIngress.Ingress.Api.V1.Models.AddEventTypeRequest class that represents add event type request.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AddEventTypeRequest"
}
}
}
},
"responses": {
"400": {
"description": "The request has missing/invalid values.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorModelListServiceResponse"
}
}
}
},
"200": {
"description": "The event type and event subtypes are created successfully."
},
"409": {
"description": "The event type or subtype already exists.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceResponse"
}
}
}
},
"403": {
"description": "The service is disabled."
},
"410": {
"description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/StringServiceResponse"
},
"example": {
"data": null,
"messages": [
{
"message": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"type": "Error",
"errorCode": "OBSOLETE_ENDPOINT"
}
]
}
}
}
}
}
},
"put": {
"tags": [
"EventTypes"
],
"summary": "Update an existing event type, event subtypes, and event subtypes' business process mappings.",
"description": "\nThis method updates an existing even type and event subtypes.",
"operationId": "UpdateEventType",
"parameters": [
{
"name": "X-TENANT-ID",
"in": "header",
"description": "The UiD of the tenant representing organization",
"required": true,
"schema": {
"type": "string"
},
"example": "b11f8be3-f29b-4959-8964-956d4af7c468"
}
],
"requestBody": {
"description": "Fenergo.Nebula.EventIngress.Ingress.Api.V1.Models.UpdateEventTypeRequest class that represents update event type request.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateEventTypeRequest"
}
}
}
},
"responses": {
"400": {
"description": "The request has missing/invalid values.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorModelListServiceResponse"
}
}
}
},
"200": {
"description": "The event type and event subtypes are updated successfully."
},
"409": {
"description": "Conflict",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceResponse"
}
}
}
},
"404": {
"description": "The event type doesn't exist.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceResponse"
}
}
}
},
"403": {
"description": "The service is disabled."
},
"410": {
"description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/StringServiceResponse"
},
"example": {
"data": null,
"messages": [
{
"message": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"type": "Error",
"errorCode": "OBSOLETE_ENDPOINT"
}
]
}
}
}
}
}
}
},
"/v1/event-types/{eventType}": {
"delete": {
"tags": [
"EventTypes"
],
"summary": "Delete an existing event type, event subtypes, and event subtypes' business process mappings.",
"description": "\nThis method deletes an existing even type and event subtypes.",
"operationId": "DeleteEventType",
"parameters": [
{
"name": "eventType",
"in": "path",
"description": "The key of the event type to be deleted.",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "X-TENANT-ID",
"in": "header",
"description": "The UiD of the tenant representing organization",
"required": true,
"schema": {
"type": "string"
},
"example": "b11f8be3-f29b-4959-8964-956d4af7c468"
}
],
"responses": {
"400": {
"description": "The request has missing/invalid values.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ValidationErrorModelListServiceResponse"
}
}
}
},
"200": {
"description": "The event type and event subtypes are updated successfully."
},
"404": {
"description": "The event type doesn't exist.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceResponse"
}
}
}
},
"403": {
"description": "The service is disabled."
},
"410": {
"description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/StringServiceResponse"
},
"example": {
"data": null,
"messages": [
{
"message": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"type": "Error",
"errorCode": "OBSOLETE_ENDPOINT"
}
]
}
}
}
}
}
}
}
},
"components": {
"schemas": {
"AddEventTypeRequest": {
"type": "object",
"properties": {
"key": {
"type": "string",
"description": "The event type's key e.g. \"externaldata\"",
"nullable": true,
"example": "externaldata"
},
"displayName": {
"type": "string",
"description": "The event type's display name e.g. \"External Data\"",
"nullable": true,
"example": "External Data"
},
"eventSubtypes": {
"type": "array",
"items": {
"$ref": "#/components/schemas/EventSubtypeDto"
},
"description": "Supported event subtypes",
"nullable": true
}
},
"additionalProperties": false,
"description": "Add Event Ingress event type request."
},
"BusinessProcessTypeDto": {
"type": "object",
"properties": {
"key": {
"type": "string",
"description": "The business process type's key e.g. \"createentity\"",
"nullable": true,
"example": "createentity"
},
"displayName": {
"type": "string",
"description": "The business process type's display name e.g. \"Create Entity\"",
"nullable": true,
"example": "Create Entity"
}
},
"additionalProperties": false,
"description": "Represents the model for supported business process types."
},
"BusinessProcessTypeDtoListServiceResponse": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BusinessProcessTypeDto"
},
"nullable": true
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceResponseMessage"
},
"nullable": true
}
},
"additionalProperties": false
},
"EventChangeDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The unique identifier for the event change.",
"nullable": true,
"example": "123e4567-e89b-12d3-a456-426614174000"
},
"createdAt": {
"type": "string",
"description": "The time when the event change was created.",
"format": "date-time",
"example": "2021-07-01T12:00:00Z"
},
"eventId": {
"type": "string",
"description": "The id of an event change.",
"nullable": true,
"example": "123e4567-e89b-12d3-a456-426614174000"
},
"entityId": {
"type": "string",
"description": "The id of a related entity.",
"nullable": true,
"example": "123e4567-e89b-12d3-a456-426614174000"
},
"taskId": {
"type": "string",
"description": "The id of a related task - if any exists.",
"nullable": true,
"example": "123e4567-e89b-12d3-a456-426614174000"
},
"processingStatus": {
"type": "string",
"description": "The processing status of an event change.",
"nullable": true,
"example": "Processed"
},
"journeyId": {
"type": "string",
"description": "The id of a related journey - if any exists.",
"nullable": true,
"example": "123e4567-e89b-12d3-a456-426614174000"
},
"externalIdentifier": {
"type": "string",
"description": "The External Identifier provided in event as entityResolver - if any exists.\r\nUses the format {ExternalDataKey}:{ExternalSystemId}",
"nullable": true,
"example": "MDMId:123456"
},
"action": {
"type": "string",
"description": "The Entity Action performed - Create or Update",
"nullable": true,
"example": "Created"
}
},
"additionalProperties": false
},
"EventDataSimple": {
"type": "object",
"properties": {
"eventIdentifier": {
"type": "string",
"description": "Identifier of the event",
"nullable": true
},
"integrationName": {
"type": "string",
"description": "Integration name",
"nullable": true
}
},
"additionalProperties": false,
"description": "Represents the model for ingress events."
},
"EventMessageType": {
"enum": [
"Received",
"Processed"
],
"type": "string"
},
"EventStatusDetailsDto": {
"type": "object",
"properties": {
"cause": {
"type": "string",
"description": "Cause of failure",
"nullable": true
},
"details": {
"type": "array",
"items": {
"$ref": "#/components/schemas/EventStatusResponseDetailsDto"
},
"description": "Additional information about the failure",
"nullable": true
},
"warnings": {
"type": "array",
"items": {
"$ref": "#/components/schemas/EventStatusWarningDto"
},
"description": "Warnings from event processing",
"nullable": true
}
},
"additionalProperties": false
},
"EventStatusDto": {
"type": "object",
"properties": {
"status": {
"type": "string",
"description": "The status of an event",
"nullable": true,
"example": "Processing"
},
"statusDetails": {
"$ref": "#/components/schemas/EventStatusDetailsDto"
}
},
"additionalProperties": false
},
"EventStatusResponseDetailsDto": {
"type": "object",
"properties": {
"correlationKey": {
"type": "string",
"description": "Correlation Key",
"nullable": true
},
"id": {
"type": "string",
"description": "Identifier",
"nullable": true
},
"message": {
"type": "string",
"description": "Message",
"nullable": true
}
},
"additionalProperties": false
},
"EventStatusWarningDto": {
"type": "object",
"properties": {
"origin": {
"type": "string",
"description": "Origin of warning",
"nullable": true
},
"message": {
"type": "string",
"description": "Message",
"nullable": true
}
},
"additionalProperties": false
},
"EventSubtypeDto": {
"type": "object",
"properties": {
"key": {
"type": "string",
"nullable": true
},
"displayName": {
"type": "string",
"nullable": true
},
"businessProcessType": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"EventSubtypeModel": {
"type": "object",
"properties": {
"key": {
"type": "string",
"description": "The event subtype's key e.g. \"createentity\"",
"nullable": true,
"example": "createentity"
},
"displayName": {
"type": "string",
"description": "The event subtype's display name e.g. \"Create Entity\"",
"nullable": true,
"example": "Create Entity"
}
},
"additionalProperties": false,
"description": "Represents the model for supported event subtypes"
},
"EventTypeDto": {
"type": "object",
"properties": {
"key": {
"type": "string",
"nullable": true
},
"displayName": {
"type": "string",
"nullable": true
},
"isSystemDefined": {
"type": "boolean"
},
"eventSubtypes": {
"type": "array",
"items": {
"$ref": "#/components/schemas/EventSubtypeDto"
},
"nullable": true
}
},
"additionalProperties": false
},
"EventTypeDtoListServiceResponse": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/EventTypeDto"
},
"nullable": true
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceResponseMessage"
},
"nullable": true
}
},
"additionalProperties": false
},
"EventTypeModel": {
"type": "object",
"properties": {
"key": {
"type": "string",
"description": "The event type's key e.g. \"externaldata\"",
"nullable": true,
"example": "externaldata"
},
"displayName": {
"type": "string",
"description": "The event type's display name e.g. \"External Data\"",
"nullable": true,
"example": "External Data"
},
"eventSubtypes": {
"type": "array",
"items": {
"$ref": "#/components/schemas/EventSubtypeModel"
},
"description": "Supported event subtypes",
"nullable": true
}
},
"additionalProperties": false,
"description": "Represents the model for supported event types."
},
"GetEventResponse": {
"type": "object",
"properties": {
"eventId": {
"type": "string",
"description": "The id of an event",
"nullable": true,
"example": "123e4567-e89b-12d3-a456-426614174000"
},
"source": {
"type": "string",
"description": "The source of an event",
"nullable": true,
"example": "externaldata"
},
"status": {
"$ref": "#/components/schemas/EventStatusDto"
},
"eventType": {
"type": "string",
"description": "The type of an event e.g. \"externaldata\"",
"nullable": true,
"example": "externaldata"
},
"eventSubtype": {
"type": "string",
"description": "The subtype of an event e.g. \"dataimport\"",
"nullable": true,
"example": "dataimport"
},
"correlationId": {
"type": "string",
"description": "The correlationId of an event",
"nullable": true,
"example": "123e4567-e89b-12d3-a456-426614174000"
},
"priority": {
"type": "integer",
"description": "The priority of an event",
"format": "int32",
"nullable": true,
"example": 2
},
"entityId": {
"type": "string",
"description": "The id of a related entity - if any exists",
"nullable": true,
"example": "123e4567-e89b-12d3-a456-426614174000"
},
"receivedTime": {
"type": "string",
"description": "The time when an event was received in EventIngress",
"format": "date-time",
"example": "2021-07-01T12:00:00Z"
},
"processedTime": {
"type": "string",
"description": "The time when an event was processed in EventIngress",
"format": "date-time",
"nullable": true,
"example": "2021-07-01T12:00:00Z"
},
"eventData": {
"description": "The generic data of an event",
"nullable": true
},
"entities": {
"type": "array",
"items": {
"$ref": "#/components/schemas/EventChangeDto"
},
"description": "The entities related to an event",
"nullable": true
}
},
"additionalProperties": false,
"description": "Represents the model for ingress events."
},
"GetEventResponseServiceResponse": {
"type": "object",
"properties": {
"data": {
"$ref": "#/components/schemas/GetEventResponse"
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceResponseMessage"
},
"nullable": true
}
},
"additionalProperties": false
},
"GetEventSimpleResponse": {
"required": [
"eventId",
"eventSubtype",
"eventType",
"receivedTime",
"source"
],
"type": "object",
"properties": {
"eventId": {
"minLength": 1,
"type": "string",
"description": "The id of an event",
"example": "123e4567-e89b-12d3-a456-426614174000"
},
"source": {
"minLength": 1,
"type": "string",
"description": "The source of an event",
"example": "externaldata"
},
"status": {
"$ref": "#/components/schemas/EventStatusDto"
},
"eventType": {
"minLength": 1,
"type": "string",
"description": "The type of an event e.g. \"externaldata\"",
"example": "externaldata"
},
"eventSubtype": {
"minLength": 1,
"type": "string",
"description": "The subtype of an event e.g. \"dataimport\"",
"example": "dataimport"
},
"correlationId": {
"type": "string",
"description": "The correlationId of an event",
"nullable": true,
"example": "123e4567-e89b-12d3-a456-426614174000"
},
"priority": {
"type": "integer",
"description": "The priority of an event",
"format": "int32",
"nullable": true,
"example": 2
},
"entityId": {
"type": "string",
"description": "The id of a related entity - if any exists",
"nullable": true,
"example": "123e4567-e89b-12d3-a456-426614174000"
},
"receivedTime": {
"type": "string",
"description": "The time when an event was received in EventIngress",
"format": "date-time",
"example": "2021-07-01T12:00:00Z"
},
"eventData": {
"$ref": "#/components/schemas/EventDataSimple"
},
"processedTime": {
"type": "string",
"description": "The time when an event was processed in EventIngress",
"format": "date-time",
"nullable": true,
"example": "2021-07-01T12:00:00Z"
}
},
"additionalProperties": false,
"description": "Represents the model for ingress events."
},
"GetEventSimpleResponseListServiceResponse": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/GetEventSimpleResponse"
},
"nullable": true
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceResponseMessage"
},
"nullable": true
}
},
"additionalProperties": false
},
"GetEventSimpleResponsePaginatedResponse": {
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"$ref": "#/components/schemas/GetEventSimpleResponse"
},
"nullable": true
},
"nextToken": {
"type": "string",
"nullable": true
},
"hasNextPage": {
"type": "boolean"
}
},
"additionalProperties": false
},
"GetEventSimpleResponsePaginatedResponseServiceResponse": {
"type": "object",
"properties": {
"data": {
"$ref": "#/components/schemas/GetEventSimpleResponsePaginatedResponse"
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceResponseMessage"
},
"nullable": true
}
},
"additionalProperties": false
},
"GetEventTypesResponse": {
"type": "object",
"properties": {
"eventTypes": {
"type": "array",
"items": {
"$ref": "#/components/schemas/EventTypeModel"
},
"description": "Supported Event Types",
"nullable": true
}
},
"additionalProperties": false,
"description": "Represents a response containing all supported event types and subtypes"
},
"GetEventTypesResponseServiceResponse": {
"type": "object",
"properties": {
"data": {
"$ref": "#/components/schemas/GetEventTypesResponse"
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceResponseMessage"
},
"nullable": true
}
},
"additionalProperties": false
},
"GetEventsByFilterRequest": {
"type": "object",
"properties": {
"startDate": {
"type": "string",
"description": "The date from which to start the search",
"format": "date-time"
},
"endDate": {
"type": "string",
"description": "The date to which to end the search",
"format": "date-time"
},
"pager": {
"$ref": "#/components/schemas/Pager"
}
},
"additionalProperties": false,
"description": "Represents a request to send ingress event"
},
"Pager": {
"required": [
"first"
],
"type": "object",
"properties": {
"first": {
"type": "integer",
"format": "int32"
},
"after": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"SendEventRequestDto": {
"type": "object",
"properties": {
"eventType": {
"type": "string",
"nullable": true
},
"eventSubtype": {
"type": "string",
"nullable": true
},
"entityId": {
"type": "string",
"format": "uuid",
"nullable": true
},
"source": {
"maxLength": 256,
"type": "string",
"nullable": true
},
"payload": {
"nullable": true
},
"correlationId": {
"maxLength": 512,
"type": "string",
"nullable": true
},
"priority": {
"type": "integer",
"format": "int32",
"nullable": true
}
},
"additionalProperties": false
},
"SendEventResponse": {
"type": "object",
"properties": {
"eventId": {
"type": "string",
"description": "Id of an event",
"format": "uuid"
},
"timeStamp": {
"type": "string",
"description": "DateTime of an event",
"format": "date-time"
}
},
"additionalProperties": false,
"description": "Represents a response of ingress event"
},
"SendEventResponseServiceResponse": {
"type": "object",
"properties": {
"data": {
"$ref": "#/components/schemas/SendEventResponse"
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceResponseMessage"
},
"nullable": true
}
},
"additionalProperties": false
},
"ServiceResponse": {
"type": "object",
"properties": {
"data": {
"type": "string",
"nullable": true
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceResponseMessage"
},
"nullable": true
}
},
"additionalProperties": false
},
"ServiceResponseMessage": {
"type": "object",
"properties": {
"message": {
"type": "string",
"nullable": true
},
"type": {
"type": "string",
"nullable": true
},
"errorCode": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"StringServiceResponse": {
"type": "object",
"properties": {
"data": {
"type": "string",
"nullable": true
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceResponseMessage"
},
"nullable": true
}
},
"additionalProperties": false
},
"UpdateEventTypeRequest": {
"type": "object",
"properties": {
"key": {
"type": "string",
"description": "The event type's key e.g. \"externaldata\"",
"nullable": true,
"example": "externaldata"
},
"displayName": {
"type": "string",
"description": "The event type's display name e.g. \"External Data\"",
"nullable": true,
"example": "External Data"
},
"eventSubtypes": {
"type": "array",
"items": {
"$ref": "#/components/schemas/EventSubtypeDto"
},
"description": "Supported event subtypes",
"nullable": true
}
},
"additionalProperties": false,
"description": "Update Event Ingress event type request."
},
"ValidationErrorModel": {
"type": "object",
"properties": {
"propertyName": {
"type": "string",
"nullable": true
},
"errorMessage": {
"type": "string",
"nullable": true
},
"attemptedValue": {
"nullable": true
},
"errorCode": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"ValidationErrorModelListServiceResponse": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ValidationErrorModel"
},
"nullable": true
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceResponseMessage"
},
"nullable": true
}
},
"additionalProperties": false
}
},
"securitySchemes": {
"Bearer": {
"type": "apiKey",
"description": "Please insert JWT with Bearer into field",
"name": "Authorization",
"in": "header"
}
}
},
"security": [
{
"Bearer": [ ]
}
]
}