openapi: 3.2.0
info:
title: Aptean Integration Platform Event Definitions API
version: '1.0'
security:
- Bearer: []
tags:
- name: Event Definitions
paths:
/v1/event-definitions:
post:
tags:
- Event Definitions
summary: Creates new event definition(s)
parameters:
- name: x-aptean-tenant
in: header
description: Tenant ID for authorization.
required: true
schema:
type: string
format: uuid
- name: x-aptean-user
in: header
description: User making the call if any.
schema:
type: string
- name: x-aptean-product
in: header
description: Product ID for authorization.
schema:
type: string
format: uuid
- name: x-aptean-apim
in: header
description: API key for authorization.
schema:
type: string
requestBody:
description: Event definitions to create.
content:
application/json:
schema:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.Requests.NewEventDefinitionsRequest'
text/json:
schema:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.Requests.NewEventDefinitionsRequest'
application/*+json:
schema:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.Requests.NewEventDefinitionsRequest'
responses:
'201':
description: Created
content:
text/plain:
schema:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.Responses.AipSuccessResponse_1_Aptean.ATG.IntegrationPlatform.Api.Resources.EventDefinition'
application/json:
schema:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.Responses.AipSuccessResponse_1_Aptean.ATG.IntegrationPlatform.Api.Resources.EventDefinition'
text/json:
schema:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.Responses.AipSuccessResponse_1_Aptean.ATG.IntegrationPlatform.Api.Resources.EventDefinition'
'400':
description: Bad Request
content:
text/plain:
schema:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.Responses.AipWarningResponse'
application/json:
schema:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.Responses.AipWarningResponse'
text/json:
schema:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.Responses.AipWarningResponse'
'500':
description: Internal Server Error
content:
text/plain:
schema:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.Responses.AipErrorResponse'
application/json:
schema:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.Responses.AipErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.Responses.AipErrorResponse'
'401':
description: Unauthorized
content:
text/plain:
schema:
$ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails'
application/json:
schema:
$ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails'
text/json:
schema:
$ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails'
operationId: postV1EventDefinitions
x-operation-id-source: derived
get:
tags:
- Event Definitions
summary: Returns a collection of event definitions assigned to a particular product
parameters:
- name: productId
in: query
description: The productId.
required: true
schema:
type: string
format: uuid
- name: x-aptean-tenant
in: header
description: Tenant ID for authorization.
schema:
type: string
format: uuid
- name: x-aptean-product
in: header
description: Product ID for authorization.
schema:
type: string
format: uuid
- name: x-aptean-apim
in: header
description: API key for authorization.
schema:
type: string
responses:
'200':
description: OK
content:
text/plain:
schema:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.Responses.AipSuccessResponse_1_Aptean.ATG.IntegrationPlatform.Api.Resources.EventDefinition'
application/json:
schema:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.Responses.AipSuccessResponse_1_Aptean.ATG.IntegrationPlatform.Api.Resources.EventDefinition'
text/json:
schema:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.Responses.AipSuccessResponse_1_Aptean.ATG.IntegrationPlatform.Api.Resources.EventDefinition'
'400':
description: Bad Request
content:
text/plain:
schema:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.Responses.AipWarningResponse'
application/json:
schema:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.Responses.AipWarningResponse'
text/json:
schema:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.Responses.AipWarningResponse'
'500':
description: Internal Server Error
content:
text/plain:
schema:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.Responses.AipErrorResponse'
application/json:
schema:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.Responses.AipErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.Responses.AipErrorResponse'
'401':
description: Unauthorized
content:
text/plain:
schema:
$ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails'
application/json:
schema:
$ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails'
text/json:
schema:
$ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails'
operationId: getV1EventDefinitions
x-operation-id-source: derived
/v1/event-definitions/{id}:
put:
tags:
- Event Definitions
summary: Updates an existing event definition
parameters:
- name: x-aptean-tenant
in: header
description: Tenant ID for authorization.
required: true
schema:
type: string
format: uuid
- name: x-aptean-user
in: header
description: User making the call if any.
schema:
type: string
- name: id
in: path
description: Id of the event definition.
required: true
schema:
type: string
format: uuid
- name: x-aptean-product
in: header
description: Product ID for authorization.
schema:
type: string
format: uuid
- name: x-aptean-apim
in: header
description: API key for authorization.
schema:
type: string
requestBody:
description: Existing event definition request model.
content:
application/json:
schema:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.Requests.UpdateEventDefinitionRequest'
text/json:
schema:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.Requests.UpdateEventDefinitionRequest'
application/*+json:
schema:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.Requests.UpdateEventDefinitionRequest'
responses:
'200':
description: OK
content:
text/plain:
schema:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.Responses.AipSuccessResponse_1_Aptean.ATG.IntegrationPlatform.Api.Resources.EventDefinition'
application/json:
schema:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.Responses.AipSuccessResponse_1_Aptean.ATG.IntegrationPlatform.Api.Resources.EventDefinition'
text/json:
schema:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.Responses.AipSuccessResponse_1_Aptean.ATG.IntegrationPlatform.Api.Resources.EventDefinition'
'400':
description: Bad Request
content:
text/plain:
schema:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.Responses.AipWarningResponse'
application/json:
schema:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.Responses.AipWarningResponse'
text/json:
schema:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.Responses.AipWarningResponse'
'500':
description: Internal Server Error
content:
text/plain:
schema:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.Responses.AipErrorResponse'
application/json:
schema:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.Responses.AipErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.Responses.AipErrorResponse'
'401':
description: Unauthorized
content:
text/plain:
schema:
$ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails'
application/json:
schema:
$ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails'
text/json:
schema:
$ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails'
operationId: putV1EventDefinitionsById
x-operation-id-source: derived
components:
schemas:
Aptean.ATG.IntegrationPlatform.Api.Resources.EventDefinition:
type: object
properties:
id:
type: string
description: Gets or sets the unique identifier.
format: uuid
createdBy:
type:
- string
- 'null'
description: Gets the created by property.
createdTimestamp:
type: string
description: Gets or sets timestamp that indicates when this document got created.
format: date-time
modifiedBy:
type:
- string
- 'null'
description: Gets the modified by property.
modifiedTimestamp:
type:
- string
- 'null'
description: Gets or sets timestamp that indicates when this document got last modified.
format: date-time
name:
type:
- string
- 'null'
description: Gets or sets human readable name for the event.
description:
type:
- string
- 'null'
description: Gets or sets what the event is representing, and when it's raised.
type:
type:
- string
- 'null'
description: Gets or sets the technical definition to identify the type of the event.
productId:
type: string
description: The productId to which this event is assigned to.
format: uuid
productVersion:
type:
- string
- 'null'
description: Product version.
payloadSchema:
type: object
description: Gets or sets the JSON schemas for the event. This schema will be validated against the event which is published. If the published event doesn't match the schema, the event will be rejected.
settings:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.EventDefinitionSettings'
additionalProperties: false
description: Representation of the Event definition.
Aptean.ATG.IntegrationPlatform.Api.Resources.Requests.EventDefinitionRequest:
required:
- name
- settings
- type
type: object
properties:
name:
minLength: 1
type: string
description: Name of the event.
description:
type:
- string
- 'null'
description: Description of the event.
type:
minLength: 1
pattern: ^[a-z0-9-]*$
type: string
description: 'Event Type which is unique in the system.
erp-salesorder-created'
payloadSchema:
type: object
description: 'Schema of the data to publish in JSON format.
When data is published it is validated against this schema.'
settings:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.EventDefinitionSettings'
additionalProperties: false
description: EventDefinition Specification to create.
Aptean.ATG.IntegrationPlatform.Api.Resources.Responses.AipWarningResponse:
type: object
properties:
warnings:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails'
description: Gets or sets the collection of warnings for executed action.
additionalProperties: false
description: Warning AIP response.
? Aptean.ATG.IntegrationPlatform.Api.Resources.Responses.AipSuccessResponse_1_Aptean.ATG.IntegrationPlatform.Api.Resources.EventDefinition
: type: object
properties:
warnings:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails'
description: Gets or sets the collection of warnings for executed action.
items:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.EventDefinition'
description: The collection of items.
additionalProperties: false
description: 'Success typed AIP response.
Type of the item.'
Aptean.ATG.IntegrationPlatform.Api.Resources.Responses.AipErrorResponse:
type: object
properties:
warnings:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails'
description: Gets or sets the collection of warnings for executed action.
errors:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails'
description: Gets or sets the collection of errors for executed action.
additionalProperties: false
description: Error AIP response.
Aptean.ATG.IntegrationPlatform.Api.Resources.Requests.UpdateEventDefinitionRequest:
required:
- name
type: object
properties:
name:
minLength: 1
type: string
description: Gets the name.
description:
type:
- string
- 'null'
description: Gets the description.
payloadSchema:
type: object
description: Gets the payload schema.
additionalProperties: false
description: Update event definition request.
Aptean.ATG.IntegrationPlatform.Api.Resources.EventDefinitionSettings:
required:
- retryable
type: object
properties:
timeToLive:
type: string
description: Gets or sets ttl for the event.
format: duration
example: 0.00:00:00
retryable:
type: boolean
description: Gets or sets a value indicating whether an event is retryable.
additionalProperties: false
description: EventDefinitionSettings Specification to create.
Aptean.ATG.IntegrationPlatform.Api.Resources.Requests.NewEventDefinitionsRequest:
required:
- eventDefinitions
- productId
type: object
properties:
productId:
type: string
description: Gets the product id.
format: uuid
productVersion:
maxLength: 20
type:
- string
- 'null'
description: Product version.
eventDefinitions:
type: array
items:
$ref: '#/components/schemas/Aptean.ATG.IntegrationPlatform.Api.Resources.Requests.EventDefinitionRequest'
description: The event definitions to register.
additionalProperties: false
description: New event definition request.
Microsoft.AspNetCore.Mvc.ProblemDetails:
type: object
properties:
type:
type:
- string
- 'null'
title:
type:
- string
- 'null'
status:
type:
- integer
- 'null'
format: int32
detail:
type:
- string
- 'null'
instance:
type:
- string
- 'null'
additionalProperties: {}
securitySchemes:
Bearer:
type: http
description: 'JWT Authorization header using the Bearer scheme. Example: "Authorization: Bearer {token}"'
scheme: bearer