EVENT GUIDE

aifitapp-aicoach-service

AI-powered fitness coaching service that generates personalized evidence-based training programs and nutrition plans, manages chatbowt interactions with full validation chains, handles dynamic program modifications via AI tool calls, tracks weaight measurements, enforces moderation and quotas, and provides admin endpoints for moderation history and usage analytics.a

Architectural Design Credit and Contact Information

The architectural design of this microservice is credited to . For inquiries, feedback, or further information regarding the architecture, please direct your communication to:

Email:

We encourage open communication and welcome any questions or discussions related to the architectural aspects of this microservice.

Documentation Scope

Welcome to the official documentation for the AiCoach Service Event descriptions. This guide is dedicated to detailing how to subscribe to and listen for state changes within the AiCoach Service, offering an exclusive focus on event subscription mechanisms.

Intended Audience

This documentation is aimed at developers and integrators looking to monitor AiCoach Service state changes. It is especially relevant for those wishing to implement or enhance business logic based on interactions with AiCoach objects.

Overview

This section provides detailed instructions on monitoring service events, covering payload structures and demonstrating typical use cases through examples.

Authentication and Authorization

Access to the AiCoach service’s events is facilitated through the project’s Kafka server, which is not accessible to the public. Subscription to a Kafka topic requires being on the same network and possessing valid Kafka user credentials. This document presupposes that readers have existing access to the Kafka server.

Additionally, the service offers a public subscription option via REST for real-time data management in frontend applications, secured through REST API authentication and authorization mechanisms. To subscribe to service events via the REST API, please consult the Realtime REST API Guide.

Database Events

Database events are triggered at the database layer, automatically and atomically, in response to any modifications at the data level. These events serve to notify subscribers about the creation, update, or deletion of objects within the database, distinct from any overarching business logic.

Listening to database events is particularly beneficial for those focused on tracking changes at the database level. A typical use case for subscribing to database events is to replicate the data store of one service within another service’s scope, ensuring data consistency and syncronization across services.

For example, while a business operation such as “approve membership” might generate a high-level business event like membership-approved, the underlying database changes could involve multiple state updates to different entities. These might be published as separate events, such as dbevent-member-updated and dbevent-user-updated, reflecting the granular changes at the database level.

Such detailed eventing provides a robust foundation for building responsive, data-driven applications, enabling fine-grained observability and reaction to the dynamics of the data landscape. It also facilitates the architectural pattern of event sourcing, where state changes are captured as a sequence of events, allowing for high-fidelity data replication and history replay for analytical or auditing purposes.

DbEvent chatMessage-created

Event topic: appaili-aicoach-service-dbevent-chatmessage-created

This event is triggered upon the creation of a chatMessage data object in the database. The event payload encompasses the newly created data, encapsulated within the root of the paylod.

Event payload:

{"id":"ID","content":"Text","conversationId":"ID","flagged":"Boolean","role":"Enum","role_idx":"Integer","toolCallData":"Text","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

DbEvent chatMessage-updated

Event topic: appaili-aicoach-service-dbevent-chatmessage-updated

Activation of this event follows the update of a chatMessage data object. The payload contains the updated information under the chatMessage attribute, along with the original data prior to update, labeled as old_chatMessage and also you can find the old and new versions of updated-only portion of the data…

Event payload:

{
old_chatMessage:{"id":"ID","content":"Text","conversationId":"ID","flagged":"Boolean","role":"Enum","role_idx":"Integer","toolCallData":"Text","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},
chatMessage:{"id":"ID","content":"Text","conversationId":"ID","flagged":"Boolean","role":"Enum","role_idx":"Integer","toolCallData":"Text","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},
oldDataValues,
newDataValues
}

DbEvent chatMessage-deleted

Event topic: appaili-aicoach-service-dbevent-chatmessage-deleted

This event announces the deletion of a chatMessage data object, covering both hard deletions (permanent removal) and soft deletions (where the isActive attribute is set to false). Regardless of the deletion type, the event payload will present the data as it was immediately before deletion, highlighting an isActive status of false for soft deletions.

Event payload:

{"id":"ID","content":"Text","conversationId":"ID","flagged":"Boolean","role":"Enum","role_idx":"Integer","toolCallData":"Text","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

DbEvent coachConversation-created

Event topic: appaili-aicoach-service-dbevent-coachconversation-created

This event is triggered upon the creation of a coachConversation data object in the database. The event payload encompasses the newly created data, encapsulated within the root of the paylod.

Event payload:

{"id":"ID","status":"Enum","status_idx":"Integer","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

DbEvent coachConversation-updated

Event topic: appaili-aicoach-service-dbevent-coachconversation-updated

Activation of this event follows the update of a coachConversation data object. The payload contains the updated information under the coachConversation attribute, along with the original data prior to update, labeled as old_coachConversation and also you can find the old and new versions of updated-only portion of the data…

Event payload:

{
old_coachConversation:{"id":"ID","status":"Enum","status_idx":"Integer","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},
coachConversation:{"id":"ID","status":"Enum","status_idx":"Integer","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},
oldDataValues,
newDataValues
}

DbEvent coachConversation-deleted

Event topic: appaili-aicoach-service-dbevent-coachconversation-deleted

This event announces the deletion of a coachConversation data object, covering both hard deletions (permanent removal) and soft deletions (where the isActive attribute is set to false). Regardless of the deletion type, the event payload will present the data as it was immediately before deletion, highlighting an isActive status of false for soft deletions.

Event payload:

{"id":"ID","status":"Enum","status_idx":"Integer","userId":"ID","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

DbEvent mealPlan-created

Event topic: appaili-aicoach-service-dbevent-mealplan-created

This event is triggered upon the creation of a mealPlan data object in the database. The event payload encompasses the newly created data, encapsulated within the root of the paylod.

Event payload:

{"id":"ID","carbGrams":"Float","dailyCalorieTarget":"Integer","fatGrams":"Float","notes":"Text","proteinGrams":"Float","restDayCalories":"Integer","restDayCarbGrams":"Float","status":"Enum","status_idx":"Integer","trainingDayCalories":"Integer","trainingDayCarbGrams":"Float","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

DbEvent mealPlan-updated

Event topic: appaili-aicoach-service-dbevent-mealplan-updated

Activation of this event follows the update of a mealPlan data object. The payload contains the updated information under the mealPlan attribute, along with the original data prior to update, labeled as old_mealPlan and also you can find the old and new versions of updated-only portion of the data…

Event payload:

{
old_mealPlan:{"id":"ID","carbGrams":"Float","dailyCalorieTarget":"Integer","fatGrams":"Float","notes":"Text","proteinGrams":"Float","restDayCalories":"Integer","restDayCarbGrams":"Float","status":"Enum","status_idx":"Integer","trainingDayCalories":"Integer","trainingDayCarbGrams":"Float","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},
mealPlan:{"id":"ID","carbGrams":"Float","dailyCalorieTarget":"Integer","fatGrams":"Float","notes":"Text","proteinGrams":"Float","restDayCalories":"Integer","restDayCarbGrams":"Float","status":"Enum","status_idx":"Integer","trainingDayCalories":"Integer","trainingDayCarbGrams":"Float","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},
oldDataValues,
newDataValues
}

DbEvent mealPlan-deleted

Event topic: appaili-aicoach-service-dbevent-mealplan-deleted

This event announces the deletion of a mealPlan data object, covering both hard deletions (permanent removal) and soft deletions (where the isActive attribute is set to false). Regardless of the deletion type, the event payload will present the data as it was immediately before deletion, highlighting an isActive status of false for soft deletions.

Event payload:

{"id":"ID","carbGrams":"Float","dailyCalorieTarget":"Integer","fatGrams":"Float","notes":"Text","proteinGrams":"Float","restDayCalories":"Integer","restDayCarbGrams":"Float","status":"Enum","status_idx":"Integer","trainingDayCalories":"Integer","trainingDayCarbGrams":"Float","userId":"ID","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

DbEvent moderationRecord-created

Event topic: appaili-aicoach-service-dbevent-moderationrecord-created

This event is triggered upon the creation of a moderationRecord data object in the database. The event payload encompasses the newly created data, encapsulated within the root of the paylod.

Event payload:

{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

DbEvent moderationRecord-updated

Event topic: appaili-aicoach-service-dbevent-moderationrecord-updated

Activation of this event follows the update of a moderationRecord data object. The payload contains the updated information under the moderationRecord attribute, along with the original data prior to update, labeled as old_moderationRecord and also you can find the old and new versions of updated-only portion of the data…

Event payload:

{
old_moderationRecord:{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},
moderationRecord:{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},
oldDataValues,
newDataValues
}

DbEvent moderationRecord-deleted

Event topic: appaili-aicoach-service-dbevent-moderationrecord-deleted

This event announces the deletion of a moderationRecord data object, covering both hard deletions (permanent removal) and soft deletions (where the isActive attribute is set to false). Regardless of the deletion type, the event payload will present the data as it was immediately before deletion, highlighting an isActive status of false for soft deletions.

Event payload:

{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":false}

DbEvent planMeal-created

Event topic: appaili-aicoach-service-dbevent-planmeal-created

This event is triggered upon the creation of a planMeal data object in the database. The event payload encompasses the newly created data, encapsulated within the root of the paylod.

Event payload:

{"id":"ID","carbs":"Float","fat":"Float","foods":"Text","mealLabel":"String","mealPlanId":"ID","protein":"Float","sortOrder":"Integer","totalCalories":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

DbEvent planMeal-updated

Event topic: appaili-aicoach-service-dbevent-planmeal-updated

Activation of this event follows the update of a planMeal data object. The payload contains the updated information under the planMeal attribute, along with the original data prior to update, labeled as old_planMeal and also you can find the old and new versions of updated-only portion of the data…

Event payload:

{
old_planMeal:{"id":"ID","carbs":"Float","fat":"Float","foods":"Text","mealLabel":"String","mealPlanId":"ID","protein":"Float","sortOrder":"Integer","totalCalories":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},
planMeal:{"id":"ID","carbs":"Float","fat":"Float","foods":"Text","mealLabel":"String","mealPlanId":"ID","protein":"Float","sortOrder":"Integer","totalCalories":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},
oldDataValues,
newDataValues
}

DbEvent planMeal-deleted

Event topic: appaili-aicoach-service-dbevent-planmeal-deleted

This event announces the deletion of a planMeal data object, covering both hard deletions (permanent removal) and soft deletions (where the isActive attribute is set to false). Regardless of the deletion type, the event payload will present the data as it was immediately before deletion, highlighting an isActive status of false for soft deletions.

Event payload:

{"id":"ID","carbs":"Float","fat":"Float","foods":"Text","mealLabel":"String","mealPlanId":"ID","protein":"Float","sortOrder":"Integer","totalCalories":"Integer","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

DbEvent programExercise-created

Event topic: appaili-aicoach-service-dbevent-programexercise-created

This event is triggered upon the creation of a programExercise data object in the database. The event payload encompasses the newly created data, encapsulated within the root of the paylod.

Event payload:

{"id":"ID","dayLabel":"String","exerciseName":"String","movementType":"Enum","movementType_idx":"Integer","muscleGroup":"String","progressionRule":"Text","repMax":"Integer","repMin":"Integer","rirTarget":"Integer","sets":"Integer","sortOrder":"Integer","trainingProgramId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

DbEvent programExercise-updated

Event topic: appaili-aicoach-service-dbevent-programexercise-updated

Activation of this event follows the update of a programExercise data object. The payload contains the updated information under the programExercise attribute, along with the original data prior to update, labeled as old_programExercise and also you can find the old and new versions of updated-only portion of the data…

Event payload:

{
old_programExercise:{"id":"ID","dayLabel":"String","exerciseName":"String","movementType":"Enum","movementType_idx":"Integer","muscleGroup":"String","progressionRule":"Text","repMax":"Integer","repMin":"Integer","rirTarget":"Integer","sets":"Integer","sortOrder":"Integer","trainingProgramId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},
programExercise:{"id":"ID","dayLabel":"String","exerciseName":"String","movementType":"Enum","movementType_idx":"Integer","muscleGroup":"String","progressionRule":"Text","repMax":"Integer","repMin":"Integer","rirTarget":"Integer","sets":"Integer","sortOrder":"Integer","trainingProgramId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},
oldDataValues,
newDataValues
}

DbEvent programExercise-deleted

Event topic: appaili-aicoach-service-dbevent-programexercise-deleted

This event announces the deletion of a programExercise data object, covering both hard deletions (permanent removal) and soft deletions (where the isActive attribute is set to false). Regardless of the deletion type, the event payload will present the data as it was immediately before deletion, highlighting an isActive status of false for soft deletions.

Event payload:

{"id":"ID","dayLabel":"String","exerciseName":"String","movementType":"Enum","movementType_idx":"Integer","muscleGroup":"String","progressionRule":"Text","repMax":"Integer","repMin":"Integer","rirTarget":"Integer","sets":"Integer","sortOrder":"Integer","trainingProgramId":"ID","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

DbEvent quotaConfig-created

Event topic: appaili-aicoach-service-dbevent-quotaconfig-created

This event is triggered upon the creation of a quotaConfig data object in the database. The event payload encompasses the newly created data, encapsulated within the root of the paylod.

Event payload:

{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

DbEvent quotaConfig-updated

Event topic: appaili-aicoach-service-dbevent-quotaconfig-updated

Activation of this event follows the update of a quotaConfig data object. The payload contains the updated information under the quotaConfig attribute, along with the original data prior to update, labeled as old_quotaConfig and also you can find the old and new versions of updated-only portion of the data…

Event payload:

{
old_quotaConfig:{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},
quotaConfig:{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},
oldDataValues,
newDataValues
}

DbEvent quotaConfig-deleted

Event topic: appaili-aicoach-service-dbevent-quotaconfig-deleted

This event announces the deletion of a quotaConfig data object, covering both hard deletions (permanent removal) and soft deletions (where the isActive attribute is set to false). Regardless of the deletion type, the event payload will present the data as it was immediately before deletion, highlighting an isActive status of false for soft deletions.

Event payload:

{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

DbEvent trainingProgram-created

Event topic: appaili-aicoach-service-dbevent-trainingprogram-created

This event is triggered upon the creation of a trainingProgram data object in the database. The event payload encompasses the newly created data, encapsulated within the root of the paylod.

Event payload:

{"id":"ID","cardioDurationMinutes":"Integer","cardioFrequencyPerWeek":"Integer","cardioType":"String","dailyStepTarget":"Integer","deloadIntervalWeeks":"Integer","notes":"Text","splitType":"String","status":"Enum","status_idx":"Integer","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

DbEvent trainingProgram-updated

Event topic: appaili-aicoach-service-dbevent-trainingprogram-updated

Activation of this event follows the update of a trainingProgram data object. The payload contains the updated information under the trainingProgram attribute, along with the original data prior to update, labeled as old_trainingProgram and also you can find the old and new versions of updated-only portion of the data…

Event payload:

{
old_trainingProgram:{"id":"ID","cardioDurationMinutes":"Integer","cardioFrequencyPerWeek":"Integer","cardioType":"String","dailyStepTarget":"Integer","deloadIntervalWeeks":"Integer","notes":"Text","splitType":"String","status":"Enum","status_idx":"Integer","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},
trainingProgram:{"id":"ID","cardioDurationMinutes":"Integer","cardioFrequencyPerWeek":"Integer","cardioType":"String","dailyStepTarget":"Integer","deloadIntervalWeeks":"Integer","notes":"Text","splitType":"String","status":"Enum","status_idx":"Integer","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},
oldDataValues,
newDataValues
}

DbEvent trainingProgram-deleted

Event topic: appaili-aicoach-service-dbevent-trainingprogram-deleted

This event announces the deletion of a trainingProgram data object, covering both hard deletions (permanent removal) and soft deletions (where the isActive attribute is set to false). Regardless of the deletion type, the event payload will present the data as it was immediately before deletion, highlighting an isActive status of false for soft deletions.

Event payload:

{"id":"ID","cardioDurationMinutes":"Integer","cardioFrequencyPerWeek":"Integer","cardioType":"String","dailyStepTarget":"Integer","deloadIntervalWeeks":"Integer","notes":"Text","splitType":"String","status":"Enum","status_idx":"Integer","userId":"ID","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

DbEvent userQuota-created

Event topic: appaili-aicoach-service-dbevent-userquota-created

This event is triggered upon the creation of a userQuota data object in the database. The event payload encompasses the newly created data, encapsulated within the root of the paylod.

Event payload:

{"id":"ID","messageCount":"Integer","periodEnd":"Date","periodStart":"Date","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

DbEvent userQuota-updated

Event topic: appaili-aicoach-service-dbevent-userquota-updated

Activation of this event follows the update of a userQuota data object. The payload contains the updated information under the userQuota attribute, along with the original data prior to update, labeled as old_userQuota and also you can find the old and new versions of updated-only portion of the data…

Event payload:

{
old_userQuota:{"id":"ID","messageCount":"Integer","periodEnd":"Date","periodStart":"Date","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},
userQuota:{"id":"ID","messageCount":"Integer","periodEnd":"Date","periodStart":"Date","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},
oldDataValues,
newDataValues
}

DbEvent userQuota-deleted

Event topic: appaili-aicoach-service-dbevent-userquota-deleted

This event announces the deletion of a userQuota data object, covering both hard deletions (permanent removal) and soft deletions (where the isActive attribute is set to false). Regardless of the deletion type, the event payload will present the data as it was immediately before deletion, highlighting an isActive status of false for soft deletions.

Event payload:

{"id":"ID","messageCount":"Integer","periodEnd":"Date","periodStart":"Date","userId":"ID","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

DbEvent weightLog-created

Event topic: appaili-aicoach-service-dbevent-weightlog-created

This event is triggered upon the creation of a weightLog data object in the database. The event payload encompasses the newly created data, encapsulated within the root of the paylod.

Event payload:

{"id":"ID","measuredAt":"Date","userId":"ID","weightKg":"Float","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

DbEvent weightLog-updated

Event topic: appaili-aicoach-service-dbevent-weightlog-updated

Activation of this event follows the update of a weightLog data object. The payload contains the updated information under the weightLog attribute, along with the original data prior to update, labeled as old_weightLog and also you can find the old and new versions of updated-only portion of the data…

Event payload:

{
old_weightLog:{"id":"ID","measuredAt":"Date","userId":"ID","weightKg":"Float","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},
weightLog:{"id":"ID","measuredAt":"Date","userId":"ID","weightKg":"Float","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},
oldDataValues,
newDataValues
}

DbEvent weightLog-deleted

Event topic: appaili-aicoach-service-dbevent-weightlog-deleted

This event announces the deletion of a weightLog data object, covering both hard deletions (permanent removal) and soft deletions (where the isActive attribute is set to false). Regardless of the deletion type, the event payload will present the data as it was immediately before deletion, highlighting an isActive status of false for soft deletions.

Event payload:

{"id":"ID","measuredAt":"Date","userId":"ID","weightKg":"Float","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

DbEvent banAppeals-created

Event topic: appaili-aicoach-service-dbevent-banappeals-created

This event is triggered upon the creation of a banAppeals data object in the database. The event payload encompasses the newly created data, encapsulated within the root of the paylod.

Event payload:

{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

DbEvent banAppeals-updated

Event topic: appaili-aicoach-service-dbevent-banappeals-updated

Activation of this event follows the update of a banAppeals data object. The payload contains the updated information under the banAppeals attribute, along with the original data prior to update, labeled as old_banAppeals and also you can find the old and new versions of updated-only portion of the data…

Event payload:

{
old_banAppeals:{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},
banAppeals:{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},
oldDataValues,
newDataValues
}

DbEvent banAppeals-deleted

Event topic: appaili-aicoach-service-dbevent-banappeals-deleted

This event announces the deletion of a banAppeals data object, covering both hard deletions (permanent removal) and soft deletions (where the isActive attribute is set to false). Regardless of the deletion type, the event payload will present the data as it was immediately before deletion, highlighting an isActive status of false for soft deletions.

Event payload:

{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

DbEvent additionalQuota-created

Event topic: appaili-aicoach-service-dbevent-additionalquota-created

This event is triggered upon the creation of a additionalQuota data object in the database. The event payload encompasses the newly created data, encapsulated within the root of the paylod.

Event payload:

{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

DbEvent additionalQuota-updated

Event topic: appaili-aicoach-service-dbevent-additionalquota-updated

Activation of this event follows the update of a additionalQuota data object. The payload contains the updated information under the additionalQuota attribute, along with the original data prior to update, labeled as old_additionalQuota and also you can find the old and new versions of updated-only portion of the data…

Event payload:

{
old_additionalQuota:{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},
additionalQuota:{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},
oldDataValues,
newDataValues
}

DbEvent additionalQuota-deleted

Event topic: appaili-aicoach-service-dbevent-additionalquota-deleted

This event announces the deletion of a additionalQuota data object, covering both hard deletions (permanent removal) and soft deletions (where the isActive attribute is set to false). Regardless of the deletion type, the event payload will present the data as it was immediately before deletion, highlighting an isActive status of false for soft deletions.

Event payload:

{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

DbEvent sys_additionalQuotaPayment-created

Event topic: appaili-aicoach-service-dbevent-sys_additionalquotapayment-created

This event is triggered upon the creation of a sys_additionalQuotaPayment data object in the database. The event payload encompasses the newly created data, encapsulated within the root of the paylod.

Event payload:

{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

DbEvent sys_additionalQuotaPayment-updated

Event topic: appaili-aicoach-service-dbevent-sys_additionalquotapayment-updated

Activation of this event follows the update of a sys_additionalQuotaPayment data object. The payload contains the updated information under the sys_additionalQuotaPayment attribute, along with the original data prior to update, labeled as old_sys_additionalQuotaPayment and also you can find the old and new versions of updated-only portion of the data…

Event payload:

{
old_sys_additionalQuotaPayment:{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},
sys_additionalQuotaPayment:{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},
oldDataValues,
newDataValues
}

DbEvent sys_additionalQuotaPayment-deleted

Event topic: appaili-aicoach-service-dbevent-sys_additionalquotapayment-deleted

This event announces the deletion of a sys_additionalQuotaPayment data object, covering both hard deletions (permanent removal) and soft deletions (where the isActive attribute is set to false). Regardless of the deletion type, the event payload will present the data as it was immediately before deletion, highlighting an isActive status of false for soft deletions.

Event payload:

{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

DbEvent sys_paymentCustomer-created

Event topic: appaili-aicoach-service-dbevent-sys_paymentcustomer-created

This event is triggered upon the creation of a sys_paymentCustomer data object in the database. The event payload encompasses the newly created data, encapsulated within the root of the paylod.

Event payload:

{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

DbEvent sys_paymentCustomer-updated

Event topic: appaili-aicoach-service-dbevent-sys_paymentcustomer-updated

Activation of this event follows the update of a sys_paymentCustomer data object. The payload contains the updated information under the sys_paymentCustomer attribute, along with the original data prior to update, labeled as old_sys_paymentCustomer and also you can find the old and new versions of updated-only portion of the data…

Event payload:

{
old_sys_paymentCustomer:{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},
sys_paymentCustomer:{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},
oldDataValues,
newDataValues
}

DbEvent sys_paymentCustomer-deleted

Event topic: appaili-aicoach-service-dbevent-sys_paymentcustomer-deleted

This event announces the deletion of a sys_paymentCustomer data object, covering both hard deletions (permanent removal) and soft deletions (where the isActive attribute is set to false). Regardless of the deletion type, the event payload will present the data as it was immediately before deletion, highlighting an isActive status of false for soft deletions.

Event payload:

{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

DbEvent sys_paymentMethod-created

Event topic: appaili-aicoach-service-dbevent-sys_paymentmethod-created

This event is triggered upon the creation of a sys_paymentMethod data object in the database. The event payload encompasses the newly created data, encapsulated within the root of the paylod.

Event payload:

{"id":"ID","paymentMethodId":"String","userId":"ID","customerId":"String","cardHolderName":"String","cardHolderZip":"String","platform":"String","cardInfo":"Object","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

DbEvent sys_paymentMethod-updated

Event topic: appaili-aicoach-service-dbevent-sys_paymentmethod-updated

Activation of this event follows the update of a sys_paymentMethod data object. The payload contains the updated information under the sys_paymentMethod attribute, along with the original data prior to update, labeled as old_sys_paymentMethod and also you can find the old and new versions of updated-only portion of the data…

Event payload:

{
old_sys_paymentMethod:{"id":"ID","paymentMethodId":"String","userId":"ID","customerId":"String","cardHolderName":"String","cardHolderZip":"String","platform":"String","cardInfo":"Object","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},
sys_paymentMethod:{"id":"ID","paymentMethodId":"String","userId":"ID","customerId":"String","cardHolderName":"String","cardHolderZip":"String","platform":"String","cardInfo":"Object","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},
oldDataValues,
newDataValues
}

DbEvent sys_paymentMethod-deleted

Event topic: appaili-aicoach-service-dbevent-sys_paymentmethod-deleted

This event announces the deletion of a sys_paymentMethod data object, covering both hard deletions (permanent removal) and soft deletions (where the isActive attribute is set to false). Regardless of the deletion type, the event payload will present the data as it was immediately before deletion, highlighting an isActive status of false for soft deletions.

Event payload:

{"id":"ID","paymentMethodId":"String","userId":"ID","customerId":"String","cardHolderName":"String","cardHolderZip":"String","platform":"String","cardInfo":"Object","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

ElasticSearch Index Events

Within the AiCoach service, most data objects are mirrored in ElasticSearch indices, ensuring these indices remain syncronized with their database counterparts through creation, updates, and deletions. These indices serve dual purposes: they act as a data source for external services and furnish aggregated data tailored to enhance frontend user experiences. Consequently, an ElasticSearch index might encapsulate data in its original form or aggregate additional information from other data objects.

These aggregations can include both one-to-one and one-to-many relationships not only with database objects within the same service but also across different services. This capability allows developers to access comprehensive, aggregated data efficiently. By subscribing to ElasticSearch index events, developers are notified when an index is updated and can directly obtain the aggregated entity within the event payload, bypassing the need for separate ElasticSearch queries.

It’s noteworthy that some services may augment another service’s index by appending to the entity’s extends object. In such scenarios, an *-extended event will contain only the newly added data. Should you require the complete dataset, you would need to retrieve the full ElasticSearch index entity using the provided ID.

This approach to indexing and event handling facilitates a modular, interconnected architecture where services can seamlessly integrate and react to changes, enriching the overall data ecosystem and enabling more dynamic, responsive applications.

Index Event chatmessage-created

Event topic: elastic-index-aifitapp_chatmessage-created

Event payload:

{"id":"ID","content":"Text","conversationId":"ID","flagged":"Boolean","role":"Enum","role_idx":"Integer","toolCallData":"Text","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event chatmessage-updated

Event topic: elastic-index-aifitapp_chatmessage-created

Event payload:

{"id":"ID","content":"Text","conversationId":"ID","flagged":"Boolean","role":"Enum","role_idx":"Integer","toolCallData":"Text","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event chatmessage-deleted

Event topic: elastic-index-aifitapp_chatmessage-deleted

Event payload:

{"id":"ID","content":"Text","conversationId":"ID","flagged":"Boolean","role":"Enum","role_idx":"Integer","toolCallData":"Text","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event chatmessage-extended

Event topic: elastic-index-aifitapp_chatmessage-extended

Event payload:

{
  id: id,
  extends: {
    [extendName]: "Object",
    [extendName + "_count"]: "Number",
  },
}

Route Events

Route events are emitted following the successful execution of a route. While most routes perform CRUD (Create, Read, Update, Delete) operations on data objects, resulting in route events that closely resemble database events, there are distinctions worth noting. A single route execution might trigger multiple CRUD actions and ElasticSearch indexing operations. However, for those primarily concerned with the overarching business logic and its outcomes, listening to the consolidated route event, published once at the conclusion of the route’s execution, is more pertinent.

Moreover, routes often deliver aggregated data beyond the primary database object, catering to specific client needs. For instance, creating a data object via a route might not only return the entity’s data but also route-specific metrics, such as the executing user’s permissions related to the entity. Alternatively, a route might automatically generate default child entities following the creation of a parent object. Consequently, the route event encapsulates a unified dataset encompassing both the parent and its children, in contrast to individual events triggered for each entity created. Therefore, subscribing to route events can offer a richer, more contextually relevant set of information aligned with business logic.

The payload of a route event mirrors the REST response JSON of the route, providing a direct and comprehensive reflection of the data and metadata communicated to the client. This ensures that subscribers to route events receive a payload that encapsulates both the primary data involved and any additional information deemed significant at the business level, facilitating a deeper understanding and integration of the service’s functional outcomes.

Route Event chatmessage-created

Event topic : appaili-aicoach-service-chatmessage-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the chatMessage data object itself.

The following JSON included in the payload illustrates the fullest representation of the chatMessage object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"chatMessage","method":"POST","action":"create","appVersion":"Version","rowCount":1,"chatMessage":{"id":"ID","content":"Text","conversationId":"ID","flagged":"Boolean","role":"Enum","role_idx":"Integer","toolCallData":"Text","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event coachconversation-created

Event topic : appaili-aicoach-service-coachconversation-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the coachConversation data object itself.

The following JSON included in the payload illustrates the fullest representation of the coachConversation object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"coachConversation","method":"POST","action":"create","appVersion":"Version","rowCount":1,"coachConversation":{"id":"ID","status":"Enum","status_idx":"Integer","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"activeSubscriptions":"Object"}

Route Event quotaconfig-created

Event topic : appaili-aicoach-service-quotaconfig-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the quotaConfig data object itself.

The following JSON included in the payload illustrates the fullest representation of the quotaConfig object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"quotaConfig","method":"POST","action":"create","appVersion":"Version","rowCount":1,"quotaConfig":{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event weightlog-created

Event topic : appaili-aicoach-service-weightlog-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the weightLog data object itself.

The following JSON included in the payload illustrates the fullest representation of the weightLog object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"weightLog","method":"POST","action":"create","appVersion":"Version","rowCount":1,"weightLog":{"id":"ID","measuredAt":"Date","userId":"ID","weightKg":"Float","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event quotaconfig-updated

Event topic : appaili-aicoach-service-quotaconfig-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the quotaConfig data object itself.

The following JSON included in the payload illustrates the fullest representation of the quotaConfig object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"quotaConfig","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"quotaConfig":{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event moderationrecord-deleted

Event topic : appaili-aicoach-service-moderationrecord-deleted

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecord data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecord object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecord","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"moderationRecord":{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":false}}

Route Event deletemealplan-done

Event topic : appaili-aicoach-service-deletemealplan-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the mealPlan data object itself.

The following JSON included in the payload illustrates the fullest representation of the mealPlan object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"mealPlan","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"mealPlan":{"id":"ID","carbGrams":"Float","dailyCalorieTarget":"Integer","fatGrams":"Float","notes":"Text","proteinGrams":"Float","restDayCalories":"Integer","restDayCarbGrams":"Float","status":"Enum","status_idx":"Integer","trainingDayCalories":"Integer","trainingDayCarbGrams":"Float","userId":"ID","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event deletetrainingprogram-done

Event topic : appaili-aicoach-service-deletetrainingprogram-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the trainingProgram data object itself.

The following JSON included in the payload illustrates the fullest representation of the trainingProgram object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"trainingProgram","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"trainingProgram":{"id":"ID","cardioDurationMinutes":"Integer","cardioFrequencyPerWeek":"Integer","cardioType":"String","dailyStepTarget":"Integer","deloadIntervalWeeks":"Integer","notes":"Text","splitType":"String","status":"Enum","status_idx":"Integer","userId":"ID","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event moderationrecord-updated

Event topic : appaili-aicoach-service-moderationrecord-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecord data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecord object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecord","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"moderationRecord":{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":true}}

Route Event listmymoderationrecords-done

Event topic : appaili-aicoach-service-listmymoderationrecords-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecords data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecords object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecords","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","moderationRecords":[{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":true},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event banappeals-listed

Event topic : appaili-aicoach-service-banappeals-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppealses data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppealses object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppealses","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","banAppealses":[{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","showmoderationRecord":[{"offenseType":"String","reason":"Text","userId":"ID","content":"String"},{},{}]},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event banappeal-created

Event topic : appaili-aicoach-service-banappeal-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppeals data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppeals object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppeals","method":"POST","action":"create","appVersion":"Version","rowCount":1,"banAppeals":{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event banappeal-updated

Event topic : appaili-aicoach-service-banappeal-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppeals data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppeals object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppeals","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"banAppeals":{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquota-created

Event topic : appaili-aicoach-service-additionalquota-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"POST","action":"create","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event myadditionalquota-retrived

Event topic : appaili-aicoach-service-myadditionalquota-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"GET","action":"get","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"myaddQuota":"Object"}

Route Event additionalquotapayment-retrived

Event topic : appaili-aicoach-service-additionalquotapayment-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayments-listed

Event topic : appaili-aicoach-service-additionalquotapayments-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayments data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayments object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayments","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_additionalQuotaPayments":[{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event additionalquotapayment-created

Event topic : appaili-aicoach-service-additionalquotapayment-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"POST","action":"create","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-updated

Event topic : appaili-aicoach-service-additionalquotapayment-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-deleted

Event topic : appaili-aicoach-service-additionalquotapayment-deleted

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapaymentbyorderid-retrived

Event topic : appaili-aicoach-service-additionalquotapaymentbyorderid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapaymentbypaymentid-retrived

Event topic : appaili-aicoach-service-additionalquotapaymentbypaymentid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-started

Event topic : appaili-aicoach-service-additionalquotapayment-started

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event additionalquotapayment-refreshed

Event topic : appaili-aicoach-service-additionalquotapayment-refreshed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event additionalquotapayment-calledback

Event topic : appaili-aicoach-service-additionalquotapayment-calledback

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"POST","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event paymentcustomerbyuserid-retrived

Event topic : appaili-aicoach-service-paymentcustomerbyuserid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentCustomer data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentCustomer object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentCustomer","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_paymentCustomer":{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event paymentcustomers-listed

Event topic : appaili-aicoach-service-paymentcustomers-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentCustomers data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentCustomers object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentCustomers","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_paymentCustomers":[{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event paymentcustomermethods-listed

Event topic : appaili-aicoach-service-paymentcustomermethods-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentMethods data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentMethods object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentMethods","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_paymentMethods":[{"id":"ID","paymentMethodId":"String","userId":"ID","customerId":"String","cardHolderName":"String","cardHolderZip":"String","platform":"String","cardInfo":"Object","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Index Event coachconversation-created

Event topic: elastic-index-aifitapp_coachconversation-created

Event payload:

{"id":"ID","status":"Enum","status_idx":"Integer","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event coachconversation-updated

Event topic: elastic-index-aifitapp_coachconversation-created

Event payload:

{"id":"ID","status":"Enum","status_idx":"Integer","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event coachconversation-deleted

Event topic: elastic-index-aifitapp_coachconversation-deleted

Event payload:

{"id":"ID","status":"Enum","status_idx":"Integer","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event coachconversation-extended

Event topic: elastic-index-aifitapp_coachconversation-extended

Event payload:

{
  id: id,
  extends: {
    [extendName]: "Object",
    [extendName + "_count"]: "Number",
  },
}

Route Events

Route events are emitted following the successful execution of a route. While most routes perform CRUD (Create, Read, Update, Delete) operations on data objects, resulting in route events that closely resemble database events, there are distinctions worth noting. A single route execution might trigger multiple CRUD actions and ElasticSearch indexing operations. However, for those primarily concerned with the overarching business logic and its outcomes, listening to the consolidated route event, published once at the conclusion of the route’s execution, is more pertinent.

Moreover, routes often deliver aggregated data beyond the primary database object, catering to specific client needs. For instance, creating a data object via a route might not only return the entity’s data but also route-specific metrics, such as the executing user’s permissions related to the entity. Alternatively, a route might automatically generate default child entities following the creation of a parent object. Consequently, the route event encapsulates a unified dataset encompassing both the parent and its children, in contrast to individual events triggered for each entity created. Therefore, subscribing to route events can offer a richer, more contextually relevant set of information aligned with business logic.

The payload of a route event mirrors the REST response JSON of the route, providing a direct and comprehensive reflection of the data and metadata communicated to the client. This ensures that subscribers to route events receive a payload that encapsulates both the primary data involved and any additional information deemed significant at the business level, facilitating a deeper understanding and integration of the service’s functional outcomes.

Route Event chatmessage-created

Event topic : appaili-aicoach-service-chatmessage-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the chatMessage data object itself.

The following JSON included in the payload illustrates the fullest representation of the chatMessage object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"chatMessage","method":"POST","action":"create","appVersion":"Version","rowCount":1,"chatMessage":{"id":"ID","content":"Text","conversationId":"ID","flagged":"Boolean","role":"Enum","role_idx":"Integer","toolCallData":"Text","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event coachconversation-created

Event topic : appaili-aicoach-service-coachconversation-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the coachConversation data object itself.

The following JSON included in the payload illustrates the fullest representation of the coachConversation object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"coachConversation","method":"POST","action":"create","appVersion":"Version","rowCount":1,"coachConversation":{"id":"ID","status":"Enum","status_idx":"Integer","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"activeSubscriptions":"Object"}

Route Event quotaconfig-created

Event topic : appaili-aicoach-service-quotaconfig-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the quotaConfig data object itself.

The following JSON included in the payload illustrates the fullest representation of the quotaConfig object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"quotaConfig","method":"POST","action":"create","appVersion":"Version","rowCount":1,"quotaConfig":{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event weightlog-created

Event topic : appaili-aicoach-service-weightlog-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the weightLog data object itself.

The following JSON included in the payload illustrates the fullest representation of the weightLog object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"weightLog","method":"POST","action":"create","appVersion":"Version","rowCount":1,"weightLog":{"id":"ID","measuredAt":"Date","userId":"ID","weightKg":"Float","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event quotaconfig-updated

Event topic : appaili-aicoach-service-quotaconfig-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the quotaConfig data object itself.

The following JSON included in the payload illustrates the fullest representation of the quotaConfig object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"quotaConfig","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"quotaConfig":{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event moderationrecord-deleted

Event topic : appaili-aicoach-service-moderationrecord-deleted

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecord data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecord object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecord","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"moderationRecord":{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":false}}

Route Event deletemealplan-done

Event topic : appaili-aicoach-service-deletemealplan-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the mealPlan data object itself.

The following JSON included in the payload illustrates the fullest representation of the mealPlan object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"mealPlan","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"mealPlan":{"id":"ID","carbGrams":"Float","dailyCalorieTarget":"Integer","fatGrams":"Float","notes":"Text","proteinGrams":"Float","restDayCalories":"Integer","restDayCarbGrams":"Float","status":"Enum","status_idx":"Integer","trainingDayCalories":"Integer","trainingDayCarbGrams":"Float","userId":"ID","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event deletetrainingprogram-done

Event topic : appaili-aicoach-service-deletetrainingprogram-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the trainingProgram data object itself.

The following JSON included in the payload illustrates the fullest representation of the trainingProgram object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"trainingProgram","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"trainingProgram":{"id":"ID","cardioDurationMinutes":"Integer","cardioFrequencyPerWeek":"Integer","cardioType":"String","dailyStepTarget":"Integer","deloadIntervalWeeks":"Integer","notes":"Text","splitType":"String","status":"Enum","status_idx":"Integer","userId":"ID","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event moderationrecord-updated

Event topic : appaili-aicoach-service-moderationrecord-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecord data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecord object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecord","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"moderationRecord":{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":true}}

Route Event listmymoderationrecords-done

Event topic : appaili-aicoach-service-listmymoderationrecords-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecords data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecords object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecords","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","moderationRecords":[{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":true},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event banappeals-listed

Event topic : appaili-aicoach-service-banappeals-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppealses data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppealses object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppealses","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","banAppealses":[{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","showmoderationRecord":[{"offenseType":"String","reason":"Text","userId":"ID","content":"String"},{},{}]},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event banappeal-created

Event topic : appaili-aicoach-service-banappeal-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppeals data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppeals object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppeals","method":"POST","action":"create","appVersion":"Version","rowCount":1,"banAppeals":{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event banappeal-updated

Event topic : appaili-aicoach-service-banappeal-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppeals data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppeals object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppeals","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"banAppeals":{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquota-created

Event topic : appaili-aicoach-service-additionalquota-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"POST","action":"create","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event myadditionalquota-retrived

Event topic : appaili-aicoach-service-myadditionalquota-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"GET","action":"get","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"myaddQuota":"Object"}

Route Event additionalquotapayment-retrived

Event topic : appaili-aicoach-service-additionalquotapayment-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayments-listed

Event topic : appaili-aicoach-service-additionalquotapayments-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayments data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayments object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayments","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_additionalQuotaPayments":[{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event additionalquotapayment-created

Event topic : appaili-aicoach-service-additionalquotapayment-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"POST","action":"create","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-updated

Event topic : appaili-aicoach-service-additionalquotapayment-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-deleted

Event topic : appaili-aicoach-service-additionalquotapayment-deleted

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapaymentbyorderid-retrived

Event topic : appaili-aicoach-service-additionalquotapaymentbyorderid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapaymentbypaymentid-retrived

Event topic : appaili-aicoach-service-additionalquotapaymentbypaymentid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-started

Event topic : appaili-aicoach-service-additionalquotapayment-started

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event additionalquotapayment-refreshed

Event topic : appaili-aicoach-service-additionalquotapayment-refreshed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event additionalquotapayment-calledback

Event topic : appaili-aicoach-service-additionalquotapayment-calledback

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"POST","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event paymentcustomerbyuserid-retrived

Event topic : appaili-aicoach-service-paymentcustomerbyuserid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentCustomer data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentCustomer object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentCustomer","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_paymentCustomer":{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event paymentcustomers-listed

Event topic : appaili-aicoach-service-paymentcustomers-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentCustomers data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentCustomers object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentCustomers","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_paymentCustomers":[{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event paymentcustomermethods-listed

Event topic : appaili-aicoach-service-paymentcustomermethods-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentMethods data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentMethods object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentMethods","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_paymentMethods":[{"id":"ID","paymentMethodId":"String","userId":"ID","customerId":"String","cardHolderName":"String","cardHolderZip":"String","platform":"String","cardInfo":"Object","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Index Event mealplan-created

Event topic: elastic-index-aifitapp_mealplan-created

Event payload:

{"id":"ID","carbGrams":"Float","dailyCalorieTarget":"Integer","fatGrams":"Float","notes":"Text","proteinGrams":"Float","restDayCalories":"Integer","restDayCarbGrams":"Float","status":"Enum","status_idx":"Integer","trainingDayCalories":"Integer","trainingDayCarbGrams":"Float","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event mealplan-updated

Event topic: elastic-index-aifitapp_mealplan-created

Event payload:

{"id":"ID","carbGrams":"Float","dailyCalorieTarget":"Integer","fatGrams":"Float","notes":"Text","proteinGrams":"Float","restDayCalories":"Integer","restDayCarbGrams":"Float","status":"Enum","status_idx":"Integer","trainingDayCalories":"Integer","trainingDayCarbGrams":"Float","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event mealplan-deleted

Event topic: elastic-index-aifitapp_mealplan-deleted

Event payload:

{"id":"ID","carbGrams":"Float","dailyCalorieTarget":"Integer","fatGrams":"Float","notes":"Text","proteinGrams":"Float","restDayCalories":"Integer","restDayCarbGrams":"Float","status":"Enum","status_idx":"Integer","trainingDayCalories":"Integer","trainingDayCarbGrams":"Float","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event mealplan-extended

Event topic: elastic-index-aifitapp_mealplan-extended

Event payload:

{
  id: id,
  extends: {
    [extendName]: "Object",
    [extendName + "_count"]: "Number",
  },
}

Route Events

Route events are emitted following the successful execution of a route. While most routes perform CRUD (Create, Read, Update, Delete) operations on data objects, resulting in route events that closely resemble database events, there are distinctions worth noting. A single route execution might trigger multiple CRUD actions and ElasticSearch indexing operations. However, for those primarily concerned with the overarching business logic and its outcomes, listening to the consolidated route event, published once at the conclusion of the route’s execution, is more pertinent.

Moreover, routes often deliver aggregated data beyond the primary database object, catering to specific client needs. For instance, creating a data object via a route might not only return the entity’s data but also route-specific metrics, such as the executing user’s permissions related to the entity. Alternatively, a route might automatically generate default child entities following the creation of a parent object. Consequently, the route event encapsulates a unified dataset encompassing both the parent and its children, in contrast to individual events triggered for each entity created. Therefore, subscribing to route events can offer a richer, more contextually relevant set of information aligned with business logic.

The payload of a route event mirrors the REST response JSON of the route, providing a direct and comprehensive reflection of the data and metadata communicated to the client. This ensures that subscribers to route events receive a payload that encapsulates both the primary data involved and any additional information deemed significant at the business level, facilitating a deeper understanding and integration of the service’s functional outcomes.

Route Event chatmessage-created

Event topic : appaili-aicoach-service-chatmessage-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the chatMessage data object itself.

The following JSON included in the payload illustrates the fullest representation of the chatMessage object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"chatMessage","method":"POST","action":"create","appVersion":"Version","rowCount":1,"chatMessage":{"id":"ID","content":"Text","conversationId":"ID","flagged":"Boolean","role":"Enum","role_idx":"Integer","toolCallData":"Text","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event coachconversation-created

Event topic : appaili-aicoach-service-coachconversation-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the coachConversation data object itself.

The following JSON included in the payload illustrates the fullest representation of the coachConversation object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"coachConversation","method":"POST","action":"create","appVersion":"Version","rowCount":1,"coachConversation":{"id":"ID","status":"Enum","status_idx":"Integer","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"activeSubscriptions":"Object"}

Route Event quotaconfig-created

Event topic : appaili-aicoach-service-quotaconfig-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the quotaConfig data object itself.

The following JSON included in the payload illustrates the fullest representation of the quotaConfig object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"quotaConfig","method":"POST","action":"create","appVersion":"Version","rowCount":1,"quotaConfig":{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event weightlog-created

Event topic : appaili-aicoach-service-weightlog-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the weightLog data object itself.

The following JSON included in the payload illustrates the fullest representation of the weightLog object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"weightLog","method":"POST","action":"create","appVersion":"Version","rowCount":1,"weightLog":{"id":"ID","measuredAt":"Date","userId":"ID","weightKg":"Float","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event quotaconfig-updated

Event topic : appaili-aicoach-service-quotaconfig-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the quotaConfig data object itself.

The following JSON included in the payload illustrates the fullest representation of the quotaConfig object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"quotaConfig","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"quotaConfig":{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event moderationrecord-deleted

Event topic : appaili-aicoach-service-moderationrecord-deleted

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecord data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecord object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecord","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"moderationRecord":{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":false}}

Route Event deletemealplan-done

Event topic : appaili-aicoach-service-deletemealplan-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the mealPlan data object itself.

The following JSON included in the payload illustrates the fullest representation of the mealPlan object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"mealPlan","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"mealPlan":{"id":"ID","carbGrams":"Float","dailyCalorieTarget":"Integer","fatGrams":"Float","notes":"Text","proteinGrams":"Float","restDayCalories":"Integer","restDayCarbGrams":"Float","status":"Enum","status_idx":"Integer","trainingDayCalories":"Integer","trainingDayCarbGrams":"Float","userId":"ID","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event deletetrainingprogram-done

Event topic : appaili-aicoach-service-deletetrainingprogram-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the trainingProgram data object itself.

The following JSON included in the payload illustrates the fullest representation of the trainingProgram object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"trainingProgram","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"trainingProgram":{"id":"ID","cardioDurationMinutes":"Integer","cardioFrequencyPerWeek":"Integer","cardioType":"String","dailyStepTarget":"Integer","deloadIntervalWeeks":"Integer","notes":"Text","splitType":"String","status":"Enum","status_idx":"Integer","userId":"ID","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event moderationrecord-updated

Event topic : appaili-aicoach-service-moderationrecord-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecord data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecord object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecord","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"moderationRecord":{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":true}}

Route Event listmymoderationrecords-done

Event topic : appaili-aicoach-service-listmymoderationrecords-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecords data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecords object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecords","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","moderationRecords":[{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":true},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event banappeals-listed

Event topic : appaili-aicoach-service-banappeals-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppealses data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppealses object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppealses","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","banAppealses":[{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","showmoderationRecord":[{"offenseType":"String","reason":"Text","userId":"ID","content":"String"},{},{}]},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event banappeal-created

Event topic : appaili-aicoach-service-banappeal-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppeals data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppeals object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppeals","method":"POST","action":"create","appVersion":"Version","rowCount":1,"banAppeals":{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event banappeal-updated

Event topic : appaili-aicoach-service-banappeal-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppeals data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppeals object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppeals","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"banAppeals":{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquota-created

Event topic : appaili-aicoach-service-additionalquota-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"POST","action":"create","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event myadditionalquota-retrived

Event topic : appaili-aicoach-service-myadditionalquota-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"GET","action":"get","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"myaddQuota":"Object"}

Route Event additionalquotapayment-retrived

Event topic : appaili-aicoach-service-additionalquotapayment-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayments-listed

Event topic : appaili-aicoach-service-additionalquotapayments-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayments data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayments object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayments","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_additionalQuotaPayments":[{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event additionalquotapayment-created

Event topic : appaili-aicoach-service-additionalquotapayment-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"POST","action":"create","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-updated

Event topic : appaili-aicoach-service-additionalquotapayment-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-deleted

Event topic : appaili-aicoach-service-additionalquotapayment-deleted

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapaymentbyorderid-retrived

Event topic : appaili-aicoach-service-additionalquotapaymentbyorderid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapaymentbypaymentid-retrived

Event topic : appaili-aicoach-service-additionalquotapaymentbypaymentid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-started

Event topic : appaili-aicoach-service-additionalquotapayment-started

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event additionalquotapayment-refreshed

Event topic : appaili-aicoach-service-additionalquotapayment-refreshed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event additionalquotapayment-calledback

Event topic : appaili-aicoach-service-additionalquotapayment-calledback

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"POST","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event paymentcustomerbyuserid-retrived

Event topic : appaili-aicoach-service-paymentcustomerbyuserid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentCustomer data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentCustomer object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentCustomer","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_paymentCustomer":{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event paymentcustomers-listed

Event topic : appaili-aicoach-service-paymentcustomers-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentCustomers data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentCustomers object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentCustomers","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_paymentCustomers":[{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event paymentcustomermethods-listed

Event topic : appaili-aicoach-service-paymentcustomermethods-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentMethods data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentMethods object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentMethods","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_paymentMethods":[{"id":"ID","paymentMethodId":"String","userId":"ID","customerId":"String","cardHolderName":"String","cardHolderZip":"String","platform":"String","cardInfo":"Object","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Index Event moderationrecord-created

Event topic: elastic-index-aifitapp_moderationrecord-created

Event payload:

{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event moderationrecord-updated

Event topic: elastic-index-aifitapp_moderationrecord-created

Event payload:

{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event moderationrecord-deleted

Event topic: elastic-index-aifitapp_moderationrecord-deleted

Event payload:

{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event moderationrecord-extended

Event topic: elastic-index-aifitapp_moderationrecord-extended

Event payload:

{
  id: id,
  extends: {
    [extendName]: "Object",
    [extendName + "_count"]: "Number",
  },
}

Route Events

Route events are emitted following the successful execution of a route. While most routes perform CRUD (Create, Read, Update, Delete) operations on data objects, resulting in route events that closely resemble database events, there are distinctions worth noting. A single route execution might trigger multiple CRUD actions and ElasticSearch indexing operations. However, for those primarily concerned with the overarching business logic and its outcomes, listening to the consolidated route event, published once at the conclusion of the route’s execution, is more pertinent.

Moreover, routes often deliver aggregated data beyond the primary database object, catering to specific client needs. For instance, creating a data object via a route might not only return the entity’s data but also route-specific metrics, such as the executing user’s permissions related to the entity. Alternatively, a route might automatically generate default child entities following the creation of a parent object. Consequently, the route event encapsulates a unified dataset encompassing both the parent and its children, in contrast to individual events triggered for each entity created. Therefore, subscribing to route events can offer a richer, more contextually relevant set of information aligned with business logic.

The payload of a route event mirrors the REST response JSON of the route, providing a direct and comprehensive reflection of the data and metadata communicated to the client. This ensures that subscribers to route events receive a payload that encapsulates both the primary data involved and any additional information deemed significant at the business level, facilitating a deeper understanding and integration of the service’s functional outcomes.

Route Event chatmessage-created

Event topic : appaili-aicoach-service-chatmessage-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the chatMessage data object itself.

The following JSON included in the payload illustrates the fullest representation of the chatMessage object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"chatMessage","method":"POST","action":"create","appVersion":"Version","rowCount":1,"chatMessage":{"id":"ID","content":"Text","conversationId":"ID","flagged":"Boolean","role":"Enum","role_idx":"Integer","toolCallData":"Text","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event coachconversation-created

Event topic : appaili-aicoach-service-coachconversation-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the coachConversation data object itself.

The following JSON included in the payload illustrates the fullest representation of the coachConversation object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"coachConversation","method":"POST","action":"create","appVersion":"Version","rowCount":1,"coachConversation":{"id":"ID","status":"Enum","status_idx":"Integer","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"activeSubscriptions":"Object"}

Route Event quotaconfig-created

Event topic : appaili-aicoach-service-quotaconfig-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the quotaConfig data object itself.

The following JSON included in the payload illustrates the fullest representation of the quotaConfig object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"quotaConfig","method":"POST","action":"create","appVersion":"Version","rowCount":1,"quotaConfig":{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event weightlog-created

Event topic : appaili-aicoach-service-weightlog-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the weightLog data object itself.

The following JSON included in the payload illustrates the fullest representation of the weightLog object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"weightLog","method":"POST","action":"create","appVersion":"Version","rowCount":1,"weightLog":{"id":"ID","measuredAt":"Date","userId":"ID","weightKg":"Float","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event quotaconfig-updated

Event topic : appaili-aicoach-service-quotaconfig-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the quotaConfig data object itself.

The following JSON included in the payload illustrates the fullest representation of the quotaConfig object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"quotaConfig","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"quotaConfig":{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event moderationrecord-deleted

Event topic : appaili-aicoach-service-moderationrecord-deleted

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecord data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecord object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecord","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"moderationRecord":{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":false}}

Route Event deletemealplan-done

Event topic : appaili-aicoach-service-deletemealplan-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the mealPlan data object itself.

The following JSON included in the payload illustrates the fullest representation of the mealPlan object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"mealPlan","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"mealPlan":{"id":"ID","carbGrams":"Float","dailyCalorieTarget":"Integer","fatGrams":"Float","notes":"Text","proteinGrams":"Float","restDayCalories":"Integer","restDayCarbGrams":"Float","status":"Enum","status_idx":"Integer","trainingDayCalories":"Integer","trainingDayCarbGrams":"Float","userId":"ID","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event deletetrainingprogram-done

Event topic : appaili-aicoach-service-deletetrainingprogram-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the trainingProgram data object itself.

The following JSON included in the payload illustrates the fullest representation of the trainingProgram object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"trainingProgram","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"trainingProgram":{"id":"ID","cardioDurationMinutes":"Integer","cardioFrequencyPerWeek":"Integer","cardioType":"String","dailyStepTarget":"Integer","deloadIntervalWeeks":"Integer","notes":"Text","splitType":"String","status":"Enum","status_idx":"Integer","userId":"ID","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event moderationrecord-updated

Event topic : appaili-aicoach-service-moderationrecord-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecord data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecord object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecord","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"moderationRecord":{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":true}}

Route Event listmymoderationrecords-done

Event topic : appaili-aicoach-service-listmymoderationrecords-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecords data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecords object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecords","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","moderationRecords":[{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":true},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event banappeals-listed

Event topic : appaili-aicoach-service-banappeals-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppealses data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppealses object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppealses","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","banAppealses":[{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","showmoderationRecord":[{"offenseType":"String","reason":"Text","userId":"ID","content":"String"},{},{}]},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event banappeal-created

Event topic : appaili-aicoach-service-banappeal-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppeals data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppeals object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppeals","method":"POST","action":"create","appVersion":"Version","rowCount":1,"banAppeals":{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event banappeal-updated

Event topic : appaili-aicoach-service-banappeal-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppeals data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppeals object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppeals","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"banAppeals":{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquota-created

Event topic : appaili-aicoach-service-additionalquota-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"POST","action":"create","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event myadditionalquota-retrived

Event topic : appaili-aicoach-service-myadditionalquota-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"GET","action":"get","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"myaddQuota":"Object"}

Route Event additionalquotapayment-retrived

Event topic : appaili-aicoach-service-additionalquotapayment-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayments-listed

Event topic : appaili-aicoach-service-additionalquotapayments-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayments data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayments object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayments","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_additionalQuotaPayments":[{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event additionalquotapayment-created

Event topic : appaili-aicoach-service-additionalquotapayment-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"POST","action":"create","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-updated

Event topic : appaili-aicoach-service-additionalquotapayment-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-deleted

Event topic : appaili-aicoach-service-additionalquotapayment-deleted

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapaymentbyorderid-retrived

Event topic : appaili-aicoach-service-additionalquotapaymentbyorderid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapaymentbypaymentid-retrived

Event topic : appaili-aicoach-service-additionalquotapaymentbypaymentid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-started

Event topic : appaili-aicoach-service-additionalquotapayment-started

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event additionalquotapayment-refreshed

Event topic : appaili-aicoach-service-additionalquotapayment-refreshed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event additionalquotapayment-calledback

Event topic : appaili-aicoach-service-additionalquotapayment-calledback

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"POST","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event paymentcustomerbyuserid-retrived

Event topic : appaili-aicoach-service-paymentcustomerbyuserid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentCustomer data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentCustomer object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentCustomer","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_paymentCustomer":{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event paymentcustomers-listed

Event topic : appaili-aicoach-service-paymentcustomers-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentCustomers data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentCustomers object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentCustomers","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_paymentCustomers":[{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event paymentcustomermethods-listed

Event topic : appaili-aicoach-service-paymentcustomermethods-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentMethods data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentMethods object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentMethods","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_paymentMethods":[{"id":"ID","paymentMethodId":"String","userId":"ID","customerId":"String","cardHolderName":"String","cardHolderZip":"String","platform":"String","cardInfo":"Object","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Index Event planmeal-created

Event topic: elastic-index-aifitapp_planmeal-created

Event payload:

{"id":"ID","carbs":"Float","fat":"Float","foods":"Text","mealLabel":"String","mealPlanId":"ID","protein":"Float","sortOrder":"Integer","totalCalories":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event planmeal-updated

Event topic: elastic-index-aifitapp_planmeal-created

Event payload:

{"id":"ID","carbs":"Float","fat":"Float","foods":"Text","mealLabel":"String","mealPlanId":"ID","protein":"Float","sortOrder":"Integer","totalCalories":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event planmeal-deleted

Event topic: elastic-index-aifitapp_planmeal-deleted

Event payload:

{"id":"ID","carbs":"Float","fat":"Float","foods":"Text","mealLabel":"String","mealPlanId":"ID","protein":"Float","sortOrder":"Integer","totalCalories":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event planmeal-extended

Event topic: elastic-index-aifitapp_planmeal-extended

Event payload:

{
  id: id,
  extends: {
    [extendName]: "Object",
    [extendName + "_count"]: "Number",
  },
}

Route Events

Route events are emitted following the successful execution of a route. While most routes perform CRUD (Create, Read, Update, Delete) operations on data objects, resulting in route events that closely resemble database events, there are distinctions worth noting. A single route execution might trigger multiple CRUD actions and ElasticSearch indexing operations. However, for those primarily concerned with the overarching business logic and its outcomes, listening to the consolidated route event, published once at the conclusion of the route’s execution, is more pertinent.

Moreover, routes often deliver aggregated data beyond the primary database object, catering to specific client needs. For instance, creating a data object via a route might not only return the entity’s data but also route-specific metrics, such as the executing user’s permissions related to the entity. Alternatively, a route might automatically generate default child entities following the creation of a parent object. Consequently, the route event encapsulates a unified dataset encompassing both the parent and its children, in contrast to individual events triggered for each entity created. Therefore, subscribing to route events can offer a richer, more contextually relevant set of information aligned with business logic.

The payload of a route event mirrors the REST response JSON of the route, providing a direct and comprehensive reflection of the data and metadata communicated to the client. This ensures that subscribers to route events receive a payload that encapsulates both the primary data involved and any additional information deemed significant at the business level, facilitating a deeper understanding and integration of the service’s functional outcomes.

Route Event chatmessage-created

Event topic : appaili-aicoach-service-chatmessage-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the chatMessage data object itself.

The following JSON included in the payload illustrates the fullest representation of the chatMessage object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"chatMessage","method":"POST","action":"create","appVersion":"Version","rowCount":1,"chatMessage":{"id":"ID","content":"Text","conversationId":"ID","flagged":"Boolean","role":"Enum","role_idx":"Integer","toolCallData":"Text","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event coachconversation-created

Event topic : appaili-aicoach-service-coachconversation-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the coachConversation data object itself.

The following JSON included in the payload illustrates the fullest representation of the coachConversation object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"coachConversation","method":"POST","action":"create","appVersion":"Version","rowCount":1,"coachConversation":{"id":"ID","status":"Enum","status_idx":"Integer","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"activeSubscriptions":"Object"}

Route Event quotaconfig-created

Event topic : appaili-aicoach-service-quotaconfig-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the quotaConfig data object itself.

The following JSON included in the payload illustrates the fullest representation of the quotaConfig object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"quotaConfig","method":"POST","action":"create","appVersion":"Version","rowCount":1,"quotaConfig":{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event weightlog-created

Event topic : appaili-aicoach-service-weightlog-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the weightLog data object itself.

The following JSON included in the payload illustrates the fullest representation of the weightLog object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"weightLog","method":"POST","action":"create","appVersion":"Version","rowCount":1,"weightLog":{"id":"ID","measuredAt":"Date","userId":"ID","weightKg":"Float","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event quotaconfig-updated

Event topic : appaili-aicoach-service-quotaconfig-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the quotaConfig data object itself.

The following JSON included in the payload illustrates the fullest representation of the quotaConfig object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"quotaConfig","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"quotaConfig":{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event moderationrecord-deleted

Event topic : appaili-aicoach-service-moderationrecord-deleted

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecord data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecord object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecord","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"moderationRecord":{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":false}}

Route Event deletemealplan-done

Event topic : appaili-aicoach-service-deletemealplan-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the mealPlan data object itself.

The following JSON included in the payload illustrates the fullest representation of the mealPlan object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"mealPlan","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"mealPlan":{"id":"ID","carbGrams":"Float","dailyCalorieTarget":"Integer","fatGrams":"Float","notes":"Text","proteinGrams":"Float","restDayCalories":"Integer","restDayCarbGrams":"Float","status":"Enum","status_idx":"Integer","trainingDayCalories":"Integer","trainingDayCarbGrams":"Float","userId":"ID","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event deletetrainingprogram-done

Event topic : appaili-aicoach-service-deletetrainingprogram-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the trainingProgram data object itself.

The following JSON included in the payload illustrates the fullest representation of the trainingProgram object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"trainingProgram","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"trainingProgram":{"id":"ID","cardioDurationMinutes":"Integer","cardioFrequencyPerWeek":"Integer","cardioType":"String","dailyStepTarget":"Integer","deloadIntervalWeeks":"Integer","notes":"Text","splitType":"String","status":"Enum","status_idx":"Integer","userId":"ID","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event moderationrecord-updated

Event topic : appaili-aicoach-service-moderationrecord-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecord data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecord object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecord","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"moderationRecord":{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":true}}

Route Event listmymoderationrecords-done

Event topic : appaili-aicoach-service-listmymoderationrecords-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecords data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecords object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecords","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","moderationRecords":[{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":true},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event banappeals-listed

Event topic : appaili-aicoach-service-banappeals-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppealses data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppealses object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppealses","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","banAppealses":[{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","showmoderationRecord":[{"offenseType":"String","reason":"Text","userId":"ID","content":"String"},{},{}]},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event banappeal-created

Event topic : appaili-aicoach-service-banappeal-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppeals data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppeals object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppeals","method":"POST","action":"create","appVersion":"Version","rowCount":1,"banAppeals":{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event banappeal-updated

Event topic : appaili-aicoach-service-banappeal-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppeals data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppeals object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppeals","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"banAppeals":{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquota-created

Event topic : appaili-aicoach-service-additionalquota-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"POST","action":"create","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event myadditionalquota-retrived

Event topic : appaili-aicoach-service-myadditionalquota-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"GET","action":"get","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"myaddQuota":"Object"}

Route Event additionalquotapayment-retrived

Event topic : appaili-aicoach-service-additionalquotapayment-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayments-listed

Event topic : appaili-aicoach-service-additionalquotapayments-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayments data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayments object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayments","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_additionalQuotaPayments":[{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event additionalquotapayment-created

Event topic : appaili-aicoach-service-additionalquotapayment-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"POST","action":"create","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-updated

Event topic : appaili-aicoach-service-additionalquotapayment-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-deleted

Event topic : appaili-aicoach-service-additionalquotapayment-deleted

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapaymentbyorderid-retrived

Event topic : appaili-aicoach-service-additionalquotapaymentbyorderid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapaymentbypaymentid-retrived

Event topic : appaili-aicoach-service-additionalquotapaymentbypaymentid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-started

Event topic : appaili-aicoach-service-additionalquotapayment-started

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event additionalquotapayment-refreshed

Event topic : appaili-aicoach-service-additionalquotapayment-refreshed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event additionalquotapayment-calledback

Event topic : appaili-aicoach-service-additionalquotapayment-calledback

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"POST","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event paymentcustomerbyuserid-retrived

Event topic : appaili-aicoach-service-paymentcustomerbyuserid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentCustomer data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentCustomer object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentCustomer","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_paymentCustomer":{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event paymentcustomers-listed

Event topic : appaili-aicoach-service-paymentcustomers-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentCustomers data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentCustomers object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentCustomers","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_paymentCustomers":[{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event paymentcustomermethods-listed

Event topic : appaili-aicoach-service-paymentcustomermethods-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentMethods data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentMethods object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentMethods","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_paymentMethods":[{"id":"ID","paymentMethodId":"String","userId":"ID","customerId":"String","cardHolderName":"String","cardHolderZip":"String","platform":"String","cardInfo":"Object","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Index Event programexercise-created

Event topic: elastic-index-aifitapp_programexercise-created

Event payload:

{"id":"ID","dayLabel":"String","exerciseName":"String","movementType":"Enum","movementType_idx":"Integer","muscleGroup":"String","progressionRule":"Text","repMax":"Integer","repMin":"Integer","rirTarget":"Integer","sets":"Integer","sortOrder":"Integer","trainingProgramId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event programexercise-updated

Event topic: elastic-index-aifitapp_programexercise-created

Event payload:

{"id":"ID","dayLabel":"String","exerciseName":"String","movementType":"Enum","movementType_idx":"Integer","muscleGroup":"String","progressionRule":"Text","repMax":"Integer","repMin":"Integer","rirTarget":"Integer","sets":"Integer","sortOrder":"Integer","trainingProgramId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event programexercise-deleted

Event topic: elastic-index-aifitapp_programexercise-deleted

Event payload:

{"id":"ID","dayLabel":"String","exerciseName":"String","movementType":"Enum","movementType_idx":"Integer","muscleGroup":"String","progressionRule":"Text","repMax":"Integer","repMin":"Integer","rirTarget":"Integer","sets":"Integer","sortOrder":"Integer","trainingProgramId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event programexercise-extended

Event topic: elastic-index-aifitapp_programexercise-extended

Event payload:

{
  id: id,
  extends: {
    [extendName]: "Object",
    [extendName + "_count"]: "Number",
  },
}

Route Events

Route events are emitted following the successful execution of a route. While most routes perform CRUD (Create, Read, Update, Delete) operations on data objects, resulting in route events that closely resemble database events, there are distinctions worth noting. A single route execution might trigger multiple CRUD actions and ElasticSearch indexing operations. However, for those primarily concerned with the overarching business logic and its outcomes, listening to the consolidated route event, published once at the conclusion of the route’s execution, is more pertinent.

Moreover, routes often deliver aggregated data beyond the primary database object, catering to specific client needs. For instance, creating a data object via a route might not only return the entity’s data but also route-specific metrics, such as the executing user’s permissions related to the entity. Alternatively, a route might automatically generate default child entities following the creation of a parent object. Consequently, the route event encapsulates a unified dataset encompassing both the parent and its children, in contrast to individual events triggered for each entity created. Therefore, subscribing to route events can offer a richer, more contextually relevant set of information aligned with business logic.

The payload of a route event mirrors the REST response JSON of the route, providing a direct and comprehensive reflection of the data and metadata communicated to the client. This ensures that subscribers to route events receive a payload that encapsulates both the primary data involved and any additional information deemed significant at the business level, facilitating a deeper understanding and integration of the service’s functional outcomes.

Route Event chatmessage-created

Event topic : appaili-aicoach-service-chatmessage-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the chatMessage data object itself.

The following JSON included in the payload illustrates the fullest representation of the chatMessage object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"chatMessage","method":"POST","action":"create","appVersion":"Version","rowCount":1,"chatMessage":{"id":"ID","content":"Text","conversationId":"ID","flagged":"Boolean","role":"Enum","role_idx":"Integer","toolCallData":"Text","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event coachconversation-created

Event topic : appaili-aicoach-service-coachconversation-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the coachConversation data object itself.

The following JSON included in the payload illustrates the fullest representation of the coachConversation object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"coachConversation","method":"POST","action":"create","appVersion":"Version","rowCount":1,"coachConversation":{"id":"ID","status":"Enum","status_idx":"Integer","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"activeSubscriptions":"Object"}

Route Event quotaconfig-created

Event topic : appaili-aicoach-service-quotaconfig-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the quotaConfig data object itself.

The following JSON included in the payload illustrates the fullest representation of the quotaConfig object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"quotaConfig","method":"POST","action":"create","appVersion":"Version","rowCount":1,"quotaConfig":{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event weightlog-created

Event topic : appaili-aicoach-service-weightlog-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the weightLog data object itself.

The following JSON included in the payload illustrates the fullest representation of the weightLog object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"weightLog","method":"POST","action":"create","appVersion":"Version","rowCount":1,"weightLog":{"id":"ID","measuredAt":"Date","userId":"ID","weightKg":"Float","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event quotaconfig-updated

Event topic : appaili-aicoach-service-quotaconfig-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the quotaConfig data object itself.

The following JSON included in the payload illustrates the fullest representation of the quotaConfig object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"quotaConfig","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"quotaConfig":{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event moderationrecord-deleted

Event topic : appaili-aicoach-service-moderationrecord-deleted

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecord data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecord object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecord","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"moderationRecord":{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":false}}

Route Event deletemealplan-done

Event topic : appaili-aicoach-service-deletemealplan-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the mealPlan data object itself.

The following JSON included in the payload illustrates the fullest representation of the mealPlan object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"mealPlan","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"mealPlan":{"id":"ID","carbGrams":"Float","dailyCalorieTarget":"Integer","fatGrams":"Float","notes":"Text","proteinGrams":"Float","restDayCalories":"Integer","restDayCarbGrams":"Float","status":"Enum","status_idx":"Integer","trainingDayCalories":"Integer","trainingDayCarbGrams":"Float","userId":"ID","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event deletetrainingprogram-done

Event topic : appaili-aicoach-service-deletetrainingprogram-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the trainingProgram data object itself.

The following JSON included in the payload illustrates the fullest representation of the trainingProgram object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"trainingProgram","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"trainingProgram":{"id":"ID","cardioDurationMinutes":"Integer","cardioFrequencyPerWeek":"Integer","cardioType":"String","dailyStepTarget":"Integer","deloadIntervalWeeks":"Integer","notes":"Text","splitType":"String","status":"Enum","status_idx":"Integer","userId":"ID","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event moderationrecord-updated

Event topic : appaili-aicoach-service-moderationrecord-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecord data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecord object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecord","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"moderationRecord":{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":true}}

Route Event listmymoderationrecords-done

Event topic : appaili-aicoach-service-listmymoderationrecords-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecords data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecords object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecords","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","moderationRecords":[{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":true},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event banappeals-listed

Event topic : appaili-aicoach-service-banappeals-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppealses data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppealses object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppealses","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","banAppealses":[{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","showmoderationRecord":[{"offenseType":"String","reason":"Text","userId":"ID","content":"String"},{},{}]},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event banappeal-created

Event topic : appaili-aicoach-service-banappeal-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppeals data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppeals object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppeals","method":"POST","action":"create","appVersion":"Version","rowCount":1,"banAppeals":{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event banappeal-updated

Event topic : appaili-aicoach-service-banappeal-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppeals data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppeals object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppeals","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"banAppeals":{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquota-created

Event topic : appaili-aicoach-service-additionalquota-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"POST","action":"create","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event myadditionalquota-retrived

Event topic : appaili-aicoach-service-myadditionalquota-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"GET","action":"get","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"myaddQuota":"Object"}

Route Event additionalquotapayment-retrived

Event topic : appaili-aicoach-service-additionalquotapayment-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayments-listed

Event topic : appaili-aicoach-service-additionalquotapayments-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayments data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayments object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayments","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_additionalQuotaPayments":[{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event additionalquotapayment-created

Event topic : appaili-aicoach-service-additionalquotapayment-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"POST","action":"create","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-updated

Event topic : appaili-aicoach-service-additionalquotapayment-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-deleted

Event topic : appaili-aicoach-service-additionalquotapayment-deleted

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapaymentbyorderid-retrived

Event topic : appaili-aicoach-service-additionalquotapaymentbyorderid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapaymentbypaymentid-retrived

Event topic : appaili-aicoach-service-additionalquotapaymentbypaymentid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-started

Event topic : appaili-aicoach-service-additionalquotapayment-started

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event additionalquotapayment-refreshed

Event topic : appaili-aicoach-service-additionalquotapayment-refreshed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event additionalquotapayment-calledback

Event topic : appaili-aicoach-service-additionalquotapayment-calledback

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"POST","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event paymentcustomerbyuserid-retrived

Event topic : appaili-aicoach-service-paymentcustomerbyuserid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentCustomer data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentCustomer object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentCustomer","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_paymentCustomer":{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event paymentcustomers-listed

Event topic : appaili-aicoach-service-paymentcustomers-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentCustomers data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentCustomers object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentCustomers","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_paymentCustomers":[{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event paymentcustomermethods-listed

Event topic : appaili-aicoach-service-paymentcustomermethods-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentMethods data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentMethods object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentMethods","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_paymentMethods":[{"id":"ID","paymentMethodId":"String","userId":"ID","customerId":"String","cardHolderName":"String","cardHolderZip":"String","platform":"String","cardInfo":"Object","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Index Event quotaconfig-created

Event topic: elastic-index-aifitapp_quotaconfig-created

Event payload:

{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event quotaconfig-updated

Event topic: elastic-index-aifitapp_quotaconfig-created

Event payload:

{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event quotaconfig-deleted

Event topic: elastic-index-aifitapp_quotaconfig-deleted

Event payload:

{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event quotaconfig-extended

Event topic: elastic-index-aifitapp_quotaconfig-extended

Event payload:

{
  id: id,
  extends: {
    [extendName]: "Object",
    [extendName + "_count"]: "Number",
  },
}

Route Events

Route events are emitted following the successful execution of a route. While most routes perform CRUD (Create, Read, Update, Delete) operations on data objects, resulting in route events that closely resemble database events, there are distinctions worth noting. A single route execution might trigger multiple CRUD actions and ElasticSearch indexing operations. However, for those primarily concerned with the overarching business logic and its outcomes, listening to the consolidated route event, published once at the conclusion of the route’s execution, is more pertinent.

Moreover, routes often deliver aggregated data beyond the primary database object, catering to specific client needs. For instance, creating a data object via a route might not only return the entity’s data but also route-specific metrics, such as the executing user’s permissions related to the entity. Alternatively, a route might automatically generate default child entities following the creation of a parent object. Consequently, the route event encapsulates a unified dataset encompassing both the parent and its children, in contrast to individual events triggered for each entity created. Therefore, subscribing to route events can offer a richer, more contextually relevant set of information aligned with business logic.

The payload of a route event mirrors the REST response JSON of the route, providing a direct and comprehensive reflection of the data and metadata communicated to the client. This ensures that subscribers to route events receive a payload that encapsulates both the primary data involved and any additional information deemed significant at the business level, facilitating a deeper understanding and integration of the service’s functional outcomes.

Route Event chatmessage-created

Event topic : appaili-aicoach-service-chatmessage-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the chatMessage data object itself.

The following JSON included in the payload illustrates the fullest representation of the chatMessage object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"chatMessage","method":"POST","action":"create","appVersion":"Version","rowCount":1,"chatMessage":{"id":"ID","content":"Text","conversationId":"ID","flagged":"Boolean","role":"Enum","role_idx":"Integer","toolCallData":"Text","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event coachconversation-created

Event topic : appaili-aicoach-service-coachconversation-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the coachConversation data object itself.

The following JSON included in the payload illustrates the fullest representation of the coachConversation object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"coachConversation","method":"POST","action":"create","appVersion":"Version","rowCount":1,"coachConversation":{"id":"ID","status":"Enum","status_idx":"Integer","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"activeSubscriptions":"Object"}

Route Event quotaconfig-created

Event topic : appaili-aicoach-service-quotaconfig-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the quotaConfig data object itself.

The following JSON included in the payload illustrates the fullest representation of the quotaConfig object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"quotaConfig","method":"POST","action":"create","appVersion":"Version","rowCount":1,"quotaConfig":{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event weightlog-created

Event topic : appaili-aicoach-service-weightlog-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the weightLog data object itself.

The following JSON included in the payload illustrates the fullest representation of the weightLog object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"weightLog","method":"POST","action":"create","appVersion":"Version","rowCount":1,"weightLog":{"id":"ID","measuredAt":"Date","userId":"ID","weightKg":"Float","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event quotaconfig-updated

Event topic : appaili-aicoach-service-quotaconfig-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the quotaConfig data object itself.

The following JSON included in the payload illustrates the fullest representation of the quotaConfig object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"quotaConfig","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"quotaConfig":{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event moderationrecord-deleted

Event topic : appaili-aicoach-service-moderationrecord-deleted

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecord data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecord object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecord","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"moderationRecord":{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":false}}

Route Event deletemealplan-done

Event topic : appaili-aicoach-service-deletemealplan-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the mealPlan data object itself.

The following JSON included in the payload illustrates the fullest representation of the mealPlan object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"mealPlan","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"mealPlan":{"id":"ID","carbGrams":"Float","dailyCalorieTarget":"Integer","fatGrams":"Float","notes":"Text","proteinGrams":"Float","restDayCalories":"Integer","restDayCarbGrams":"Float","status":"Enum","status_idx":"Integer","trainingDayCalories":"Integer","trainingDayCarbGrams":"Float","userId":"ID","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event deletetrainingprogram-done

Event topic : appaili-aicoach-service-deletetrainingprogram-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the trainingProgram data object itself.

The following JSON included in the payload illustrates the fullest representation of the trainingProgram object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"trainingProgram","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"trainingProgram":{"id":"ID","cardioDurationMinutes":"Integer","cardioFrequencyPerWeek":"Integer","cardioType":"String","dailyStepTarget":"Integer","deloadIntervalWeeks":"Integer","notes":"Text","splitType":"String","status":"Enum","status_idx":"Integer","userId":"ID","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event moderationrecord-updated

Event topic : appaili-aicoach-service-moderationrecord-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecord data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecord object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecord","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"moderationRecord":{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":true}}

Route Event listmymoderationrecords-done

Event topic : appaili-aicoach-service-listmymoderationrecords-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecords data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecords object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecords","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","moderationRecords":[{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":true},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event banappeals-listed

Event topic : appaili-aicoach-service-banappeals-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppealses data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppealses object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppealses","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","banAppealses":[{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","showmoderationRecord":[{"offenseType":"String","reason":"Text","userId":"ID","content":"String"},{},{}]},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event banappeal-created

Event topic : appaili-aicoach-service-banappeal-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppeals data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppeals object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppeals","method":"POST","action":"create","appVersion":"Version","rowCount":1,"banAppeals":{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event banappeal-updated

Event topic : appaili-aicoach-service-banappeal-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppeals data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppeals object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppeals","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"banAppeals":{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquota-created

Event topic : appaili-aicoach-service-additionalquota-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"POST","action":"create","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event myadditionalquota-retrived

Event topic : appaili-aicoach-service-myadditionalquota-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"GET","action":"get","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"myaddQuota":"Object"}

Route Event additionalquotapayment-retrived

Event topic : appaili-aicoach-service-additionalquotapayment-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayments-listed

Event topic : appaili-aicoach-service-additionalquotapayments-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayments data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayments object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayments","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_additionalQuotaPayments":[{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event additionalquotapayment-created

Event topic : appaili-aicoach-service-additionalquotapayment-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"POST","action":"create","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-updated

Event topic : appaili-aicoach-service-additionalquotapayment-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-deleted

Event topic : appaili-aicoach-service-additionalquotapayment-deleted

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapaymentbyorderid-retrived

Event topic : appaili-aicoach-service-additionalquotapaymentbyorderid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapaymentbypaymentid-retrived

Event topic : appaili-aicoach-service-additionalquotapaymentbypaymentid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-started

Event topic : appaili-aicoach-service-additionalquotapayment-started

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event additionalquotapayment-refreshed

Event topic : appaili-aicoach-service-additionalquotapayment-refreshed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event additionalquotapayment-calledback

Event topic : appaili-aicoach-service-additionalquotapayment-calledback

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"POST","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event paymentcustomerbyuserid-retrived

Event topic : appaili-aicoach-service-paymentcustomerbyuserid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentCustomer data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentCustomer object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentCustomer","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_paymentCustomer":{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event paymentcustomers-listed

Event topic : appaili-aicoach-service-paymentcustomers-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentCustomers data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentCustomers object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentCustomers","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_paymentCustomers":[{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event paymentcustomermethods-listed

Event topic : appaili-aicoach-service-paymentcustomermethods-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentMethods data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentMethods object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentMethods","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_paymentMethods":[{"id":"ID","paymentMethodId":"String","userId":"ID","customerId":"String","cardHolderName":"String","cardHolderZip":"String","platform":"String","cardInfo":"Object","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Index Event trainingprogram-created

Event topic: elastic-index-aifitapp_trainingprogram-created

Event payload:

{"id":"ID","cardioDurationMinutes":"Integer","cardioFrequencyPerWeek":"Integer","cardioType":"String","dailyStepTarget":"Integer","deloadIntervalWeeks":"Integer","notes":"Text","splitType":"String","status":"Enum","status_idx":"Integer","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event trainingprogram-updated

Event topic: elastic-index-aifitapp_trainingprogram-created

Event payload:

{"id":"ID","cardioDurationMinutes":"Integer","cardioFrequencyPerWeek":"Integer","cardioType":"String","dailyStepTarget":"Integer","deloadIntervalWeeks":"Integer","notes":"Text","splitType":"String","status":"Enum","status_idx":"Integer","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event trainingprogram-deleted

Event topic: elastic-index-aifitapp_trainingprogram-deleted

Event payload:

{"id":"ID","cardioDurationMinutes":"Integer","cardioFrequencyPerWeek":"Integer","cardioType":"String","dailyStepTarget":"Integer","deloadIntervalWeeks":"Integer","notes":"Text","splitType":"String","status":"Enum","status_idx":"Integer","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event trainingprogram-extended

Event topic: elastic-index-aifitapp_trainingprogram-extended

Event payload:

{
  id: id,
  extends: {
    [extendName]: "Object",
    [extendName + "_count"]: "Number",
  },
}

Route Events

Route events are emitted following the successful execution of a route. While most routes perform CRUD (Create, Read, Update, Delete) operations on data objects, resulting in route events that closely resemble database events, there are distinctions worth noting. A single route execution might trigger multiple CRUD actions and ElasticSearch indexing operations. However, for those primarily concerned with the overarching business logic and its outcomes, listening to the consolidated route event, published once at the conclusion of the route’s execution, is more pertinent.

Moreover, routes often deliver aggregated data beyond the primary database object, catering to specific client needs. For instance, creating a data object via a route might not only return the entity’s data but also route-specific metrics, such as the executing user’s permissions related to the entity. Alternatively, a route might automatically generate default child entities following the creation of a parent object. Consequently, the route event encapsulates a unified dataset encompassing both the parent and its children, in contrast to individual events triggered for each entity created. Therefore, subscribing to route events can offer a richer, more contextually relevant set of information aligned with business logic.

The payload of a route event mirrors the REST response JSON of the route, providing a direct and comprehensive reflection of the data and metadata communicated to the client. This ensures that subscribers to route events receive a payload that encapsulates both the primary data involved and any additional information deemed significant at the business level, facilitating a deeper understanding and integration of the service’s functional outcomes.

Route Event chatmessage-created

Event topic : appaili-aicoach-service-chatmessage-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the chatMessage data object itself.

The following JSON included in the payload illustrates the fullest representation of the chatMessage object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"chatMessage","method":"POST","action":"create","appVersion":"Version","rowCount":1,"chatMessage":{"id":"ID","content":"Text","conversationId":"ID","flagged":"Boolean","role":"Enum","role_idx":"Integer","toolCallData":"Text","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event coachconversation-created

Event topic : appaili-aicoach-service-coachconversation-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the coachConversation data object itself.

The following JSON included in the payload illustrates the fullest representation of the coachConversation object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"coachConversation","method":"POST","action":"create","appVersion":"Version","rowCount":1,"coachConversation":{"id":"ID","status":"Enum","status_idx":"Integer","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"activeSubscriptions":"Object"}

Route Event quotaconfig-created

Event topic : appaili-aicoach-service-quotaconfig-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the quotaConfig data object itself.

The following JSON included in the payload illustrates the fullest representation of the quotaConfig object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"quotaConfig","method":"POST","action":"create","appVersion":"Version","rowCount":1,"quotaConfig":{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event weightlog-created

Event topic : appaili-aicoach-service-weightlog-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the weightLog data object itself.

The following JSON included in the payload illustrates the fullest representation of the weightLog object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"weightLog","method":"POST","action":"create","appVersion":"Version","rowCount":1,"weightLog":{"id":"ID","measuredAt":"Date","userId":"ID","weightKg":"Float","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event quotaconfig-updated

Event topic : appaili-aicoach-service-quotaconfig-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the quotaConfig data object itself.

The following JSON included in the payload illustrates the fullest representation of the quotaConfig object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"quotaConfig","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"quotaConfig":{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event moderationrecord-deleted

Event topic : appaili-aicoach-service-moderationrecord-deleted

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecord data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecord object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecord","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"moderationRecord":{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":false}}

Route Event deletemealplan-done

Event topic : appaili-aicoach-service-deletemealplan-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the mealPlan data object itself.

The following JSON included in the payload illustrates the fullest representation of the mealPlan object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"mealPlan","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"mealPlan":{"id":"ID","carbGrams":"Float","dailyCalorieTarget":"Integer","fatGrams":"Float","notes":"Text","proteinGrams":"Float","restDayCalories":"Integer","restDayCarbGrams":"Float","status":"Enum","status_idx":"Integer","trainingDayCalories":"Integer","trainingDayCarbGrams":"Float","userId":"ID","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event deletetrainingprogram-done

Event topic : appaili-aicoach-service-deletetrainingprogram-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the trainingProgram data object itself.

The following JSON included in the payload illustrates the fullest representation of the trainingProgram object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"trainingProgram","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"trainingProgram":{"id":"ID","cardioDurationMinutes":"Integer","cardioFrequencyPerWeek":"Integer","cardioType":"String","dailyStepTarget":"Integer","deloadIntervalWeeks":"Integer","notes":"Text","splitType":"String","status":"Enum","status_idx":"Integer","userId":"ID","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event moderationrecord-updated

Event topic : appaili-aicoach-service-moderationrecord-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecord data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecord object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecord","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"moderationRecord":{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":true}}

Route Event listmymoderationrecords-done

Event topic : appaili-aicoach-service-listmymoderationrecords-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecords data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecords object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecords","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","moderationRecords":[{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":true},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event banappeals-listed

Event topic : appaili-aicoach-service-banappeals-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppealses data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppealses object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppealses","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","banAppealses":[{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","showmoderationRecord":[{"offenseType":"String","reason":"Text","userId":"ID","content":"String"},{},{}]},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event banappeal-created

Event topic : appaili-aicoach-service-banappeal-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppeals data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppeals object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppeals","method":"POST","action":"create","appVersion":"Version","rowCount":1,"banAppeals":{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event banappeal-updated

Event topic : appaili-aicoach-service-banappeal-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppeals data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppeals object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppeals","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"banAppeals":{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquota-created

Event topic : appaili-aicoach-service-additionalquota-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"POST","action":"create","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event myadditionalquota-retrived

Event topic : appaili-aicoach-service-myadditionalquota-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"GET","action":"get","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"myaddQuota":"Object"}

Route Event additionalquotapayment-retrived

Event topic : appaili-aicoach-service-additionalquotapayment-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayments-listed

Event topic : appaili-aicoach-service-additionalquotapayments-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayments data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayments object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayments","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_additionalQuotaPayments":[{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event additionalquotapayment-created

Event topic : appaili-aicoach-service-additionalquotapayment-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"POST","action":"create","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-updated

Event topic : appaili-aicoach-service-additionalquotapayment-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-deleted

Event topic : appaili-aicoach-service-additionalquotapayment-deleted

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapaymentbyorderid-retrived

Event topic : appaili-aicoach-service-additionalquotapaymentbyorderid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapaymentbypaymentid-retrived

Event topic : appaili-aicoach-service-additionalquotapaymentbypaymentid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-started

Event topic : appaili-aicoach-service-additionalquotapayment-started

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event additionalquotapayment-refreshed

Event topic : appaili-aicoach-service-additionalquotapayment-refreshed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event additionalquotapayment-calledback

Event topic : appaili-aicoach-service-additionalquotapayment-calledback

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"POST","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event paymentcustomerbyuserid-retrived

Event topic : appaili-aicoach-service-paymentcustomerbyuserid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentCustomer data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentCustomer object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentCustomer","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_paymentCustomer":{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event paymentcustomers-listed

Event topic : appaili-aicoach-service-paymentcustomers-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentCustomers data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentCustomers object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentCustomers","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_paymentCustomers":[{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event paymentcustomermethods-listed

Event topic : appaili-aicoach-service-paymentcustomermethods-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentMethods data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentMethods object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentMethods","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_paymentMethods":[{"id":"ID","paymentMethodId":"String","userId":"ID","customerId":"String","cardHolderName":"String","cardHolderZip":"String","platform":"String","cardInfo":"Object","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Index Event userquota-created

Event topic: elastic-index-aifitapp_userquota-created

Event payload:

{"id":"ID","messageCount":"Integer","periodEnd":"Date","periodStart":"Date","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event userquota-updated

Event topic: elastic-index-aifitapp_userquota-created

Event payload:

{"id":"ID","messageCount":"Integer","periodEnd":"Date","periodStart":"Date","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event userquota-deleted

Event topic: elastic-index-aifitapp_userquota-deleted

Event payload:

{"id":"ID","messageCount":"Integer","periodEnd":"Date","periodStart":"Date","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event userquota-extended

Event topic: elastic-index-aifitapp_userquota-extended

Event payload:

{
  id: id,
  extends: {
    [extendName]: "Object",
    [extendName + "_count"]: "Number",
  },
}

Route Events

Route events are emitted following the successful execution of a route. While most routes perform CRUD (Create, Read, Update, Delete) operations on data objects, resulting in route events that closely resemble database events, there are distinctions worth noting. A single route execution might trigger multiple CRUD actions and ElasticSearch indexing operations. However, for those primarily concerned with the overarching business logic and its outcomes, listening to the consolidated route event, published once at the conclusion of the route’s execution, is more pertinent.

Moreover, routes often deliver aggregated data beyond the primary database object, catering to specific client needs. For instance, creating a data object via a route might not only return the entity’s data but also route-specific metrics, such as the executing user’s permissions related to the entity. Alternatively, a route might automatically generate default child entities following the creation of a parent object. Consequently, the route event encapsulates a unified dataset encompassing both the parent and its children, in contrast to individual events triggered for each entity created. Therefore, subscribing to route events can offer a richer, more contextually relevant set of information aligned with business logic.

The payload of a route event mirrors the REST response JSON of the route, providing a direct and comprehensive reflection of the data and metadata communicated to the client. This ensures that subscribers to route events receive a payload that encapsulates both the primary data involved and any additional information deemed significant at the business level, facilitating a deeper understanding and integration of the service’s functional outcomes.

Route Event chatmessage-created

Event topic : appaili-aicoach-service-chatmessage-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the chatMessage data object itself.

The following JSON included in the payload illustrates the fullest representation of the chatMessage object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"chatMessage","method":"POST","action":"create","appVersion":"Version","rowCount":1,"chatMessage":{"id":"ID","content":"Text","conversationId":"ID","flagged":"Boolean","role":"Enum","role_idx":"Integer","toolCallData":"Text","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event coachconversation-created

Event topic : appaili-aicoach-service-coachconversation-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the coachConversation data object itself.

The following JSON included in the payload illustrates the fullest representation of the coachConversation object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"coachConversation","method":"POST","action":"create","appVersion":"Version","rowCount":1,"coachConversation":{"id":"ID","status":"Enum","status_idx":"Integer","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"activeSubscriptions":"Object"}

Route Event quotaconfig-created

Event topic : appaili-aicoach-service-quotaconfig-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the quotaConfig data object itself.

The following JSON included in the payload illustrates the fullest representation of the quotaConfig object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"quotaConfig","method":"POST","action":"create","appVersion":"Version","rowCount":1,"quotaConfig":{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event weightlog-created

Event topic : appaili-aicoach-service-weightlog-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the weightLog data object itself.

The following JSON included in the payload illustrates the fullest representation of the weightLog object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"weightLog","method":"POST","action":"create","appVersion":"Version","rowCount":1,"weightLog":{"id":"ID","measuredAt":"Date","userId":"ID","weightKg":"Float","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event quotaconfig-updated

Event topic : appaili-aicoach-service-quotaconfig-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the quotaConfig data object itself.

The following JSON included in the payload illustrates the fullest representation of the quotaConfig object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"quotaConfig","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"quotaConfig":{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event moderationrecord-deleted

Event topic : appaili-aicoach-service-moderationrecord-deleted

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecord data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecord object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecord","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"moderationRecord":{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":false}}

Route Event deletemealplan-done

Event topic : appaili-aicoach-service-deletemealplan-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the mealPlan data object itself.

The following JSON included in the payload illustrates the fullest representation of the mealPlan object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"mealPlan","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"mealPlan":{"id":"ID","carbGrams":"Float","dailyCalorieTarget":"Integer","fatGrams":"Float","notes":"Text","proteinGrams":"Float","restDayCalories":"Integer","restDayCarbGrams":"Float","status":"Enum","status_idx":"Integer","trainingDayCalories":"Integer","trainingDayCarbGrams":"Float","userId":"ID","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event deletetrainingprogram-done

Event topic : appaili-aicoach-service-deletetrainingprogram-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the trainingProgram data object itself.

The following JSON included in the payload illustrates the fullest representation of the trainingProgram object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"trainingProgram","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"trainingProgram":{"id":"ID","cardioDurationMinutes":"Integer","cardioFrequencyPerWeek":"Integer","cardioType":"String","dailyStepTarget":"Integer","deloadIntervalWeeks":"Integer","notes":"Text","splitType":"String","status":"Enum","status_idx":"Integer","userId":"ID","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event moderationrecord-updated

Event topic : appaili-aicoach-service-moderationrecord-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecord data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecord object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecord","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"moderationRecord":{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":true}}

Route Event listmymoderationrecords-done

Event topic : appaili-aicoach-service-listmymoderationrecords-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecords data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecords object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecords","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","moderationRecords":[{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":true},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event banappeals-listed

Event topic : appaili-aicoach-service-banappeals-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppealses data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppealses object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppealses","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","banAppealses":[{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","showmoderationRecord":[{"offenseType":"String","reason":"Text","userId":"ID","content":"String"},{},{}]},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event banappeal-created

Event topic : appaili-aicoach-service-banappeal-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppeals data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppeals object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppeals","method":"POST","action":"create","appVersion":"Version","rowCount":1,"banAppeals":{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event banappeal-updated

Event topic : appaili-aicoach-service-banappeal-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppeals data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppeals object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppeals","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"banAppeals":{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquota-created

Event topic : appaili-aicoach-service-additionalquota-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"POST","action":"create","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event myadditionalquota-retrived

Event topic : appaili-aicoach-service-myadditionalquota-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"GET","action":"get","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"myaddQuota":"Object"}

Route Event additionalquotapayment-retrived

Event topic : appaili-aicoach-service-additionalquotapayment-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayments-listed

Event topic : appaili-aicoach-service-additionalquotapayments-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayments data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayments object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayments","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_additionalQuotaPayments":[{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event additionalquotapayment-created

Event topic : appaili-aicoach-service-additionalquotapayment-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"POST","action":"create","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-updated

Event topic : appaili-aicoach-service-additionalquotapayment-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-deleted

Event topic : appaili-aicoach-service-additionalquotapayment-deleted

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapaymentbyorderid-retrived

Event topic : appaili-aicoach-service-additionalquotapaymentbyorderid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapaymentbypaymentid-retrived

Event topic : appaili-aicoach-service-additionalquotapaymentbypaymentid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-started

Event topic : appaili-aicoach-service-additionalquotapayment-started

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event additionalquotapayment-refreshed

Event topic : appaili-aicoach-service-additionalquotapayment-refreshed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event additionalquotapayment-calledback

Event topic : appaili-aicoach-service-additionalquotapayment-calledback

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"POST","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event paymentcustomerbyuserid-retrived

Event topic : appaili-aicoach-service-paymentcustomerbyuserid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentCustomer data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentCustomer object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentCustomer","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_paymentCustomer":{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event paymentcustomers-listed

Event topic : appaili-aicoach-service-paymentcustomers-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentCustomers data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentCustomers object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentCustomers","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_paymentCustomers":[{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event paymentcustomermethods-listed

Event topic : appaili-aicoach-service-paymentcustomermethods-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentMethods data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentMethods object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentMethods","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_paymentMethods":[{"id":"ID","paymentMethodId":"String","userId":"ID","customerId":"String","cardHolderName":"String","cardHolderZip":"String","platform":"String","cardInfo":"Object","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Index Event weightlog-created

Event topic: elastic-index-aifitapp_weightlog-created

Event payload:

{"id":"ID","measuredAt":"Date","userId":"ID","weightKg":"Float","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event weightlog-updated

Event topic: elastic-index-aifitapp_weightlog-created

Event payload:

{"id":"ID","measuredAt":"Date","userId":"ID","weightKg":"Float","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event weightlog-deleted

Event topic: elastic-index-aifitapp_weightlog-deleted

Event payload:

{"id":"ID","measuredAt":"Date","userId":"ID","weightKg":"Float","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event weightlog-extended

Event topic: elastic-index-aifitapp_weightlog-extended

Event payload:

{
  id: id,
  extends: {
    [extendName]: "Object",
    [extendName + "_count"]: "Number",
  },
}

Route Events

Route events are emitted following the successful execution of a route. While most routes perform CRUD (Create, Read, Update, Delete) operations on data objects, resulting in route events that closely resemble database events, there are distinctions worth noting. A single route execution might trigger multiple CRUD actions and ElasticSearch indexing operations. However, for those primarily concerned with the overarching business logic and its outcomes, listening to the consolidated route event, published once at the conclusion of the route’s execution, is more pertinent.

Moreover, routes often deliver aggregated data beyond the primary database object, catering to specific client needs. For instance, creating a data object via a route might not only return the entity’s data but also route-specific metrics, such as the executing user’s permissions related to the entity. Alternatively, a route might automatically generate default child entities following the creation of a parent object. Consequently, the route event encapsulates a unified dataset encompassing both the parent and its children, in contrast to individual events triggered for each entity created. Therefore, subscribing to route events can offer a richer, more contextually relevant set of information aligned with business logic.

The payload of a route event mirrors the REST response JSON of the route, providing a direct and comprehensive reflection of the data and metadata communicated to the client. This ensures that subscribers to route events receive a payload that encapsulates both the primary data involved and any additional information deemed significant at the business level, facilitating a deeper understanding and integration of the service’s functional outcomes.

Route Event chatmessage-created

Event topic : appaili-aicoach-service-chatmessage-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the chatMessage data object itself.

The following JSON included in the payload illustrates the fullest representation of the chatMessage object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"chatMessage","method":"POST","action":"create","appVersion":"Version","rowCount":1,"chatMessage":{"id":"ID","content":"Text","conversationId":"ID","flagged":"Boolean","role":"Enum","role_idx":"Integer","toolCallData":"Text","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event coachconversation-created

Event topic : appaili-aicoach-service-coachconversation-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the coachConversation data object itself.

The following JSON included in the payload illustrates the fullest representation of the coachConversation object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"coachConversation","method":"POST","action":"create","appVersion":"Version","rowCount":1,"coachConversation":{"id":"ID","status":"Enum","status_idx":"Integer","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"activeSubscriptions":"Object"}

Route Event quotaconfig-created

Event topic : appaili-aicoach-service-quotaconfig-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the quotaConfig data object itself.

The following JSON included in the payload illustrates the fullest representation of the quotaConfig object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"quotaConfig","method":"POST","action":"create","appVersion":"Version","rowCount":1,"quotaConfig":{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event weightlog-created

Event topic : appaili-aicoach-service-weightlog-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the weightLog data object itself.

The following JSON included in the payload illustrates the fullest representation of the weightLog object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"weightLog","method":"POST","action":"create","appVersion":"Version","rowCount":1,"weightLog":{"id":"ID","measuredAt":"Date","userId":"ID","weightKg":"Float","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event quotaconfig-updated

Event topic : appaili-aicoach-service-quotaconfig-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the quotaConfig data object itself.

The following JSON included in the payload illustrates the fullest representation of the quotaConfig object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"quotaConfig","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"quotaConfig":{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event moderationrecord-deleted

Event topic : appaili-aicoach-service-moderationrecord-deleted

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecord data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecord object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecord","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"moderationRecord":{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":false}}

Route Event deletemealplan-done

Event topic : appaili-aicoach-service-deletemealplan-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the mealPlan data object itself.

The following JSON included in the payload illustrates the fullest representation of the mealPlan object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"mealPlan","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"mealPlan":{"id":"ID","carbGrams":"Float","dailyCalorieTarget":"Integer","fatGrams":"Float","notes":"Text","proteinGrams":"Float","restDayCalories":"Integer","restDayCarbGrams":"Float","status":"Enum","status_idx":"Integer","trainingDayCalories":"Integer","trainingDayCarbGrams":"Float","userId":"ID","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event deletetrainingprogram-done

Event topic : appaili-aicoach-service-deletetrainingprogram-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the trainingProgram data object itself.

The following JSON included in the payload illustrates the fullest representation of the trainingProgram object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"trainingProgram","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"trainingProgram":{"id":"ID","cardioDurationMinutes":"Integer","cardioFrequencyPerWeek":"Integer","cardioType":"String","dailyStepTarget":"Integer","deloadIntervalWeeks":"Integer","notes":"Text","splitType":"String","status":"Enum","status_idx":"Integer","userId":"ID","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event moderationrecord-updated

Event topic : appaili-aicoach-service-moderationrecord-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecord data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecord object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecord","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"moderationRecord":{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":true}}

Route Event listmymoderationrecords-done

Event topic : appaili-aicoach-service-listmymoderationrecords-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecords data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecords object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecords","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","moderationRecords":[{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":true},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event banappeals-listed

Event topic : appaili-aicoach-service-banappeals-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppealses data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppealses object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppealses","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","banAppealses":[{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","showmoderationRecord":[{"offenseType":"String","reason":"Text","userId":"ID","content":"String"},{},{}]},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event banappeal-created

Event topic : appaili-aicoach-service-banappeal-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppeals data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppeals object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppeals","method":"POST","action":"create","appVersion":"Version","rowCount":1,"banAppeals":{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event banappeal-updated

Event topic : appaili-aicoach-service-banappeal-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppeals data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppeals object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppeals","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"banAppeals":{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquota-created

Event topic : appaili-aicoach-service-additionalquota-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"POST","action":"create","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event myadditionalquota-retrived

Event topic : appaili-aicoach-service-myadditionalquota-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"GET","action":"get","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"myaddQuota":"Object"}

Route Event additionalquotapayment-retrived

Event topic : appaili-aicoach-service-additionalquotapayment-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayments-listed

Event topic : appaili-aicoach-service-additionalquotapayments-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayments data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayments object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayments","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_additionalQuotaPayments":[{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event additionalquotapayment-created

Event topic : appaili-aicoach-service-additionalquotapayment-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"POST","action":"create","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-updated

Event topic : appaili-aicoach-service-additionalquotapayment-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-deleted

Event topic : appaili-aicoach-service-additionalquotapayment-deleted

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapaymentbyorderid-retrived

Event topic : appaili-aicoach-service-additionalquotapaymentbyorderid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapaymentbypaymentid-retrived

Event topic : appaili-aicoach-service-additionalquotapaymentbypaymentid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-started

Event topic : appaili-aicoach-service-additionalquotapayment-started

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event additionalquotapayment-refreshed

Event topic : appaili-aicoach-service-additionalquotapayment-refreshed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event additionalquotapayment-calledback

Event topic : appaili-aicoach-service-additionalquotapayment-calledback

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"POST","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event paymentcustomerbyuserid-retrived

Event topic : appaili-aicoach-service-paymentcustomerbyuserid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentCustomer data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentCustomer object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentCustomer","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_paymentCustomer":{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event paymentcustomers-listed

Event topic : appaili-aicoach-service-paymentcustomers-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentCustomers data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentCustomers object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentCustomers","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_paymentCustomers":[{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event paymentcustomermethods-listed

Event topic : appaili-aicoach-service-paymentcustomermethods-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentMethods data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentMethods object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentMethods","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_paymentMethods":[{"id":"ID","paymentMethodId":"String","userId":"ID","customerId":"String","cardHolderName":"String","cardHolderZip":"String","platform":"String","cardInfo":"Object","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Index Event banappeals-created

Event topic: elastic-index-aifitapp_banappeals-created

Event payload:

{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event banappeals-updated

Event topic: elastic-index-aifitapp_banappeals-created

Event payload:

{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event banappeals-deleted

Event topic: elastic-index-aifitapp_banappeals-deleted

Event payload:

{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event banappeals-extended

Event topic: elastic-index-aifitapp_banappeals-extended

Event payload:

{
  id: id,
  extends: {
    [extendName]: "Object",
    [extendName + "_count"]: "Number",
  },
}

Route Events

Route events are emitted following the successful execution of a route. While most routes perform CRUD (Create, Read, Update, Delete) operations on data objects, resulting in route events that closely resemble database events, there are distinctions worth noting. A single route execution might trigger multiple CRUD actions and ElasticSearch indexing operations. However, for those primarily concerned with the overarching business logic and its outcomes, listening to the consolidated route event, published once at the conclusion of the route’s execution, is more pertinent.

Moreover, routes often deliver aggregated data beyond the primary database object, catering to specific client needs. For instance, creating a data object via a route might not only return the entity’s data but also route-specific metrics, such as the executing user’s permissions related to the entity. Alternatively, a route might automatically generate default child entities following the creation of a parent object. Consequently, the route event encapsulates a unified dataset encompassing both the parent and its children, in contrast to individual events triggered for each entity created. Therefore, subscribing to route events can offer a richer, more contextually relevant set of information aligned with business logic.

The payload of a route event mirrors the REST response JSON of the route, providing a direct and comprehensive reflection of the data and metadata communicated to the client. This ensures that subscribers to route events receive a payload that encapsulates both the primary data involved and any additional information deemed significant at the business level, facilitating a deeper understanding and integration of the service’s functional outcomes.

Route Event chatmessage-created

Event topic : appaili-aicoach-service-chatmessage-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the chatMessage data object itself.

The following JSON included in the payload illustrates the fullest representation of the chatMessage object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"chatMessage","method":"POST","action":"create","appVersion":"Version","rowCount":1,"chatMessage":{"id":"ID","content":"Text","conversationId":"ID","flagged":"Boolean","role":"Enum","role_idx":"Integer","toolCallData":"Text","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event coachconversation-created

Event topic : appaili-aicoach-service-coachconversation-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the coachConversation data object itself.

The following JSON included in the payload illustrates the fullest representation of the coachConversation object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"coachConversation","method":"POST","action":"create","appVersion":"Version","rowCount":1,"coachConversation":{"id":"ID","status":"Enum","status_idx":"Integer","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"activeSubscriptions":"Object"}

Route Event quotaconfig-created

Event topic : appaili-aicoach-service-quotaconfig-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the quotaConfig data object itself.

The following JSON included in the payload illustrates the fullest representation of the quotaConfig object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"quotaConfig","method":"POST","action":"create","appVersion":"Version","rowCount":1,"quotaConfig":{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event weightlog-created

Event topic : appaili-aicoach-service-weightlog-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the weightLog data object itself.

The following JSON included in the payload illustrates the fullest representation of the weightLog object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"weightLog","method":"POST","action":"create","appVersion":"Version","rowCount":1,"weightLog":{"id":"ID","measuredAt":"Date","userId":"ID","weightKg":"Float","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event quotaconfig-updated

Event topic : appaili-aicoach-service-quotaconfig-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the quotaConfig data object itself.

The following JSON included in the payload illustrates the fullest representation of the quotaConfig object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"quotaConfig","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"quotaConfig":{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event moderationrecord-deleted

Event topic : appaili-aicoach-service-moderationrecord-deleted

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecord data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecord object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecord","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"moderationRecord":{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":false}}

Route Event deletemealplan-done

Event topic : appaili-aicoach-service-deletemealplan-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the mealPlan data object itself.

The following JSON included in the payload illustrates the fullest representation of the mealPlan object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"mealPlan","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"mealPlan":{"id":"ID","carbGrams":"Float","dailyCalorieTarget":"Integer","fatGrams":"Float","notes":"Text","proteinGrams":"Float","restDayCalories":"Integer","restDayCarbGrams":"Float","status":"Enum","status_idx":"Integer","trainingDayCalories":"Integer","trainingDayCarbGrams":"Float","userId":"ID","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event deletetrainingprogram-done

Event topic : appaili-aicoach-service-deletetrainingprogram-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the trainingProgram data object itself.

The following JSON included in the payload illustrates the fullest representation of the trainingProgram object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"trainingProgram","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"trainingProgram":{"id":"ID","cardioDurationMinutes":"Integer","cardioFrequencyPerWeek":"Integer","cardioType":"String","dailyStepTarget":"Integer","deloadIntervalWeeks":"Integer","notes":"Text","splitType":"String","status":"Enum","status_idx":"Integer","userId":"ID","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event moderationrecord-updated

Event topic : appaili-aicoach-service-moderationrecord-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecord data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecord object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecord","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"moderationRecord":{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":true}}

Route Event listmymoderationrecords-done

Event topic : appaili-aicoach-service-listmymoderationrecords-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecords data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecords object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecords","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","moderationRecords":[{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":true},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event banappeals-listed

Event topic : appaili-aicoach-service-banappeals-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppealses data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppealses object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppealses","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","banAppealses":[{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","showmoderationRecord":[{"offenseType":"String","reason":"Text","userId":"ID","content":"String"},{},{}]},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event banappeal-created

Event topic : appaili-aicoach-service-banappeal-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppeals data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppeals object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppeals","method":"POST","action":"create","appVersion":"Version","rowCount":1,"banAppeals":{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event banappeal-updated

Event topic : appaili-aicoach-service-banappeal-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppeals data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppeals object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppeals","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"banAppeals":{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquota-created

Event topic : appaili-aicoach-service-additionalquota-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"POST","action":"create","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event myadditionalquota-retrived

Event topic : appaili-aicoach-service-myadditionalquota-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"GET","action":"get","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"myaddQuota":"Object"}

Route Event additionalquotapayment-retrived

Event topic : appaili-aicoach-service-additionalquotapayment-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayments-listed

Event topic : appaili-aicoach-service-additionalquotapayments-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayments data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayments object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayments","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_additionalQuotaPayments":[{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event additionalquotapayment-created

Event topic : appaili-aicoach-service-additionalquotapayment-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"POST","action":"create","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-updated

Event topic : appaili-aicoach-service-additionalquotapayment-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-deleted

Event topic : appaili-aicoach-service-additionalquotapayment-deleted

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapaymentbyorderid-retrived

Event topic : appaili-aicoach-service-additionalquotapaymentbyorderid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapaymentbypaymentid-retrived

Event topic : appaili-aicoach-service-additionalquotapaymentbypaymentid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-started

Event topic : appaili-aicoach-service-additionalquotapayment-started

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event additionalquotapayment-refreshed

Event topic : appaili-aicoach-service-additionalquotapayment-refreshed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event additionalquotapayment-calledback

Event topic : appaili-aicoach-service-additionalquotapayment-calledback

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"POST","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event paymentcustomerbyuserid-retrived

Event topic : appaili-aicoach-service-paymentcustomerbyuserid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentCustomer data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentCustomer object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentCustomer","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_paymentCustomer":{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event paymentcustomers-listed

Event topic : appaili-aicoach-service-paymentcustomers-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentCustomers data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentCustomers object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentCustomers","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_paymentCustomers":[{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event paymentcustomermethods-listed

Event topic : appaili-aicoach-service-paymentcustomermethods-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentMethods data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentMethods object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentMethods","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_paymentMethods":[{"id":"ID","paymentMethodId":"String","userId":"ID","customerId":"String","cardHolderName":"String","cardHolderZip":"String","platform":"String","cardInfo":"Object","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Index Event additionalquota-created

Event topic: elastic-index-aifitapp_additionalquota-created

Event payload:

{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event additionalquota-updated

Event topic: elastic-index-aifitapp_additionalquota-created

Event payload:

{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event additionalquota-deleted

Event topic: elastic-index-aifitapp_additionalquota-deleted

Event payload:

{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event additionalquota-extended

Event topic: elastic-index-aifitapp_additionalquota-extended

Event payload:

{
  id: id,
  extends: {
    [extendName]: "Object",
    [extendName + "_count"]: "Number",
  },
}

Route Events

Route events are emitted following the successful execution of a route. While most routes perform CRUD (Create, Read, Update, Delete) operations on data objects, resulting in route events that closely resemble database events, there are distinctions worth noting. A single route execution might trigger multiple CRUD actions and ElasticSearch indexing operations. However, for those primarily concerned with the overarching business logic and its outcomes, listening to the consolidated route event, published once at the conclusion of the route’s execution, is more pertinent.

Moreover, routes often deliver aggregated data beyond the primary database object, catering to specific client needs. For instance, creating a data object via a route might not only return the entity’s data but also route-specific metrics, such as the executing user’s permissions related to the entity. Alternatively, a route might automatically generate default child entities following the creation of a parent object. Consequently, the route event encapsulates a unified dataset encompassing both the parent and its children, in contrast to individual events triggered for each entity created. Therefore, subscribing to route events can offer a richer, more contextually relevant set of information aligned with business logic.

The payload of a route event mirrors the REST response JSON of the route, providing a direct and comprehensive reflection of the data and metadata communicated to the client. This ensures that subscribers to route events receive a payload that encapsulates both the primary data involved and any additional information deemed significant at the business level, facilitating a deeper understanding and integration of the service’s functional outcomes.

Route Event chatmessage-created

Event topic : appaili-aicoach-service-chatmessage-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the chatMessage data object itself.

The following JSON included in the payload illustrates the fullest representation of the chatMessage object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"chatMessage","method":"POST","action":"create","appVersion":"Version","rowCount":1,"chatMessage":{"id":"ID","content":"Text","conversationId":"ID","flagged":"Boolean","role":"Enum","role_idx":"Integer","toolCallData":"Text","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event coachconversation-created

Event topic : appaili-aicoach-service-coachconversation-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the coachConversation data object itself.

The following JSON included in the payload illustrates the fullest representation of the coachConversation object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"coachConversation","method":"POST","action":"create","appVersion":"Version","rowCount":1,"coachConversation":{"id":"ID","status":"Enum","status_idx":"Integer","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"activeSubscriptions":"Object"}

Route Event quotaconfig-created

Event topic : appaili-aicoach-service-quotaconfig-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the quotaConfig data object itself.

The following JSON included in the payload illustrates the fullest representation of the quotaConfig object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"quotaConfig","method":"POST","action":"create","appVersion":"Version","rowCount":1,"quotaConfig":{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event weightlog-created

Event topic : appaili-aicoach-service-weightlog-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the weightLog data object itself.

The following JSON included in the payload illustrates the fullest representation of the weightLog object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"weightLog","method":"POST","action":"create","appVersion":"Version","rowCount":1,"weightLog":{"id":"ID","measuredAt":"Date","userId":"ID","weightKg":"Float","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event quotaconfig-updated

Event topic : appaili-aicoach-service-quotaconfig-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the quotaConfig data object itself.

The following JSON included in the payload illustrates the fullest representation of the quotaConfig object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"quotaConfig","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"quotaConfig":{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event moderationrecord-deleted

Event topic : appaili-aicoach-service-moderationrecord-deleted

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecord data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecord object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecord","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"moderationRecord":{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":false}}

Route Event deletemealplan-done

Event topic : appaili-aicoach-service-deletemealplan-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the mealPlan data object itself.

The following JSON included in the payload illustrates the fullest representation of the mealPlan object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"mealPlan","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"mealPlan":{"id":"ID","carbGrams":"Float","dailyCalorieTarget":"Integer","fatGrams":"Float","notes":"Text","proteinGrams":"Float","restDayCalories":"Integer","restDayCarbGrams":"Float","status":"Enum","status_idx":"Integer","trainingDayCalories":"Integer","trainingDayCarbGrams":"Float","userId":"ID","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event deletetrainingprogram-done

Event topic : appaili-aicoach-service-deletetrainingprogram-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the trainingProgram data object itself.

The following JSON included in the payload illustrates the fullest representation of the trainingProgram object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"trainingProgram","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"trainingProgram":{"id":"ID","cardioDurationMinutes":"Integer","cardioFrequencyPerWeek":"Integer","cardioType":"String","dailyStepTarget":"Integer","deloadIntervalWeeks":"Integer","notes":"Text","splitType":"String","status":"Enum","status_idx":"Integer","userId":"ID","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event moderationrecord-updated

Event topic : appaili-aicoach-service-moderationrecord-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecord data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecord object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecord","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"moderationRecord":{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":true}}

Route Event listmymoderationrecords-done

Event topic : appaili-aicoach-service-listmymoderationrecords-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecords data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecords object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecords","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","moderationRecords":[{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":true},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event banappeals-listed

Event topic : appaili-aicoach-service-banappeals-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppealses data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppealses object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppealses","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","banAppealses":[{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","showmoderationRecord":[{"offenseType":"String","reason":"Text","userId":"ID","content":"String"},{},{}]},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event banappeal-created

Event topic : appaili-aicoach-service-banappeal-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppeals data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppeals object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppeals","method":"POST","action":"create","appVersion":"Version","rowCount":1,"banAppeals":{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event banappeal-updated

Event topic : appaili-aicoach-service-banappeal-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppeals data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppeals object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppeals","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"banAppeals":{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquota-created

Event topic : appaili-aicoach-service-additionalquota-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"POST","action":"create","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event myadditionalquota-retrived

Event topic : appaili-aicoach-service-myadditionalquota-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"GET","action":"get","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"myaddQuota":"Object"}

Route Event additionalquotapayment-retrived

Event topic : appaili-aicoach-service-additionalquotapayment-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayments-listed

Event topic : appaili-aicoach-service-additionalquotapayments-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayments data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayments object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayments","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_additionalQuotaPayments":[{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event additionalquotapayment-created

Event topic : appaili-aicoach-service-additionalquotapayment-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"POST","action":"create","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-updated

Event topic : appaili-aicoach-service-additionalquotapayment-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-deleted

Event topic : appaili-aicoach-service-additionalquotapayment-deleted

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapaymentbyorderid-retrived

Event topic : appaili-aicoach-service-additionalquotapaymentbyorderid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapaymentbypaymentid-retrived

Event topic : appaili-aicoach-service-additionalquotapaymentbypaymentid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-started

Event topic : appaili-aicoach-service-additionalquotapayment-started

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event additionalquotapayment-refreshed

Event topic : appaili-aicoach-service-additionalquotapayment-refreshed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event additionalquotapayment-calledback

Event topic : appaili-aicoach-service-additionalquotapayment-calledback

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"POST","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event paymentcustomerbyuserid-retrived

Event topic : appaili-aicoach-service-paymentcustomerbyuserid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentCustomer data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentCustomer object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentCustomer","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_paymentCustomer":{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event paymentcustomers-listed

Event topic : appaili-aicoach-service-paymentcustomers-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentCustomers data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentCustomers object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentCustomers","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_paymentCustomers":[{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event paymentcustomermethods-listed

Event topic : appaili-aicoach-service-paymentcustomermethods-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentMethods data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentMethods object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentMethods","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_paymentMethods":[{"id":"ID","paymentMethodId":"String","userId":"ID","customerId":"String","cardHolderName":"String","cardHolderZip":"String","platform":"String","cardInfo":"Object","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Index Event sys_additionalquotapayment-created

Event topic: elastic-index-aifitapp_sys_additionalquotapayment-created

Event payload:

{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event sys_additionalquotapayment-updated

Event topic: elastic-index-aifitapp_sys_additionalquotapayment-created

Event payload:

{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event sys_additionalquotapayment-deleted

Event topic: elastic-index-aifitapp_sys_additionalquotapayment-deleted

Event payload:

{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event sys_additionalquotapayment-extended

Event topic: elastic-index-aifitapp_sys_additionalquotapayment-extended

Event payload:

{
  id: id,
  extends: {
    [extendName]: "Object",
    [extendName + "_count"]: "Number",
  },
}

Route Events

Route events are emitted following the successful execution of a route. While most routes perform CRUD (Create, Read, Update, Delete) operations on data objects, resulting in route events that closely resemble database events, there are distinctions worth noting. A single route execution might trigger multiple CRUD actions and ElasticSearch indexing operations. However, for those primarily concerned with the overarching business logic and its outcomes, listening to the consolidated route event, published once at the conclusion of the route’s execution, is more pertinent.

Moreover, routes often deliver aggregated data beyond the primary database object, catering to specific client needs. For instance, creating a data object via a route might not only return the entity’s data but also route-specific metrics, such as the executing user’s permissions related to the entity. Alternatively, a route might automatically generate default child entities following the creation of a parent object. Consequently, the route event encapsulates a unified dataset encompassing both the parent and its children, in contrast to individual events triggered for each entity created. Therefore, subscribing to route events can offer a richer, more contextually relevant set of information aligned with business logic.

The payload of a route event mirrors the REST response JSON of the route, providing a direct and comprehensive reflection of the data and metadata communicated to the client. This ensures that subscribers to route events receive a payload that encapsulates both the primary data involved and any additional information deemed significant at the business level, facilitating a deeper understanding and integration of the service’s functional outcomes.

Route Event chatmessage-created

Event topic : appaili-aicoach-service-chatmessage-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the chatMessage data object itself.

The following JSON included in the payload illustrates the fullest representation of the chatMessage object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"chatMessage","method":"POST","action":"create","appVersion":"Version","rowCount":1,"chatMessage":{"id":"ID","content":"Text","conversationId":"ID","flagged":"Boolean","role":"Enum","role_idx":"Integer","toolCallData":"Text","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event coachconversation-created

Event topic : appaili-aicoach-service-coachconversation-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the coachConversation data object itself.

The following JSON included in the payload illustrates the fullest representation of the coachConversation object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"coachConversation","method":"POST","action":"create","appVersion":"Version","rowCount":1,"coachConversation":{"id":"ID","status":"Enum","status_idx":"Integer","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"activeSubscriptions":"Object"}

Route Event quotaconfig-created

Event topic : appaili-aicoach-service-quotaconfig-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the quotaConfig data object itself.

The following JSON included in the payload illustrates the fullest representation of the quotaConfig object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"quotaConfig","method":"POST","action":"create","appVersion":"Version","rowCount":1,"quotaConfig":{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event weightlog-created

Event topic : appaili-aicoach-service-weightlog-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the weightLog data object itself.

The following JSON included in the payload illustrates the fullest representation of the weightLog object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"weightLog","method":"POST","action":"create","appVersion":"Version","rowCount":1,"weightLog":{"id":"ID","measuredAt":"Date","userId":"ID","weightKg":"Float","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event quotaconfig-updated

Event topic : appaili-aicoach-service-quotaconfig-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the quotaConfig data object itself.

The following JSON included in the payload illustrates the fullest representation of the quotaConfig object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"quotaConfig","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"quotaConfig":{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event moderationrecord-deleted

Event topic : appaili-aicoach-service-moderationrecord-deleted

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecord data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecord object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecord","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"moderationRecord":{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":false}}

Route Event deletemealplan-done

Event topic : appaili-aicoach-service-deletemealplan-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the mealPlan data object itself.

The following JSON included in the payload illustrates the fullest representation of the mealPlan object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"mealPlan","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"mealPlan":{"id":"ID","carbGrams":"Float","dailyCalorieTarget":"Integer","fatGrams":"Float","notes":"Text","proteinGrams":"Float","restDayCalories":"Integer","restDayCarbGrams":"Float","status":"Enum","status_idx":"Integer","trainingDayCalories":"Integer","trainingDayCarbGrams":"Float","userId":"ID","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event deletetrainingprogram-done

Event topic : appaili-aicoach-service-deletetrainingprogram-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the trainingProgram data object itself.

The following JSON included in the payload illustrates the fullest representation of the trainingProgram object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"trainingProgram","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"trainingProgram":{"id":"ID","cardioDurationMinutes":"Integer","cardioFrequencyPerWeek":"Integer","cardioType":"String","dailyStepTarget":"Integer","deloadIntervalWeeks":"Integer","notes":"Text","splitType":"String","status":"Enum","status_idx":"Integer","userId":"ID","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event moderationrecord-updated

Event topic : appaili-aicoach-service-moderationrecord-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecord data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecord object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecord","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"moderationRecord":{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":true}}

Route Event listmymoderationrecords-done

Event topic : appaili-aicoach-service-listmymoderationrecords-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecords data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecords object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecords","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","moderationRecords":[{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":true},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event banappeals-listed

Event topic : appaili-aicoach-service-banappeals-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppealses data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppealses object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppealses","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","banAppealses":[{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","showmoderationRecord":[{"offenseType":"String","reason":"Text","userId":"ID","content":"String"},{},{}]},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event banappeal-created

Event topic : appaili-aicoach-service-banappeal-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppeals data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppeals object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppeals","method":"POST","action":"create","appVersion":"Version","rowCount":1,"banAppeals":{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event banappeal-updated

Event topic : appaili-aicoach-service-banappeal-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppeals data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppeals object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppeals","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"banAppeals":{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquota-created

Event topic : appaili-aicoach-service-additionalquota-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"POST","action":"create","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event myadditionalquota-retrived

Event topic : appaili-aicoach-service-myadditionalquota-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"GET","action":"get","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"myaddQuota":"Object"}

Route Event additionalquotapayment-retrived

Event topic : appaili-aicoach-service-additionalquotapayment-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayments-listed

Event topic : appaili-aicoach-service-additionalquotapayments-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayments data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayments object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayments","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_additionalQuotaPayments":[{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event additionalquotapayment-created

Event topic : appaili-aicoach-service-additionalquotapayment-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"POST","action":"create","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-updated

Event topic : appaili-aicoach-service-additionalquotapayment-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-deleted

Event topic : appaili-aicoach-service-additionalquotapayment-deleted

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapaymentbyorderid-retrived

Event topic : appaili-aicoach-service-additionalquotapaymentbyorderid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapaymentbypaymentid-retrived

Event topic : appaili-aicoach-service-additionalquotapaymentbypaymentid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-started

Event topic : appaili-aicoach-service-additionalquotapayment-started

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event additionalquotapayment-refreshed

Event topic : appaili-aicoach-service-additionalquotapayment-refreshed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event additionalquotapayment-calledback

Event topic : appaili-aicoach-service-additionalquotapayment-calledback

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"POST","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event paymentcustomerbyuserid-retrived

Event topic : appaili-aicoach-service-paymentcustomerbyuserid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentCustomer data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentCustomer object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentCustomer","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_paymentCustomer":{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event paymentcustomers-listed

Event topic : appaili-aicoach-service-paymentcustomers-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentCustomers data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentCustomers object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentCustomers","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_paymentCustomers":[{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event paymentcustomermethods-listed

Event topic : appaili-aicoach-service-paymentcustomermethods-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentMethods data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentMethods object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentMethods","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_paymentMethods":[{"id":"ID","paymentMethodId":"String","userId":"ID","customerId":"String","cardHolderName":"String","cardHolderZip":"String","platform":"String","cardInfo":"Object","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Index Event sys_paymentcustomer-created

Event topic: elastic-index-aifitapp_sys_paymentcustomer-created

Event payload:

{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event sys_paymentcustomer-updated

Event topic: elastic-index-aifitapp_sys_paymentcustomer-created

Event payload:

{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event sys_paymentcustomer-deleted

Event topic: elastic-index-aifitapp_sys_paymentcustomer-deleted

Event payload:

{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event sys_paymentcustomer-extended

Event topic: elastic-index-aifitapp_sys_paymentcustomer-extended

Event payload:

{
  id: id,
  extends: {
    [extendName]: "Object",
    [extendName + "_count"]: "Number",
  },
}

Route Events

Route events are emitted following the successful execution of a route. While most routes perform CRUD (Create, Read, Update, Delete) operations on data objects, resulting in route events that closely resemble database events, there are distinctions worth noting. A single route execution might trigger multiple CRUD actions and ElasticSearch indexing operations. However, for those primarily concerned with the overarching business logic and its outcomes, listening to the consolidated route event, published once at the conclusion of the route’s execution, is more pertinent.

Moreover, routes often deliver aggregated data beyond the primary database object, catering to specific client needs. For instance, creating a data object via a route might not only return the entity’s data but also route-specific metrics, such as the executing user’s permissions related to the entity. Alternatively, a route might automatically generate default child entities following the creation of a parent object. Consequently, the route event encapsulates a unified dataset encompassing both the parent and its children, in contrast to individual events triggered for each entity created. Therefore, subscribing to route events can offer a richer, more contextually relevant set of information aligned with business logic.

The payload of a route event mirrors the REST response JSON of the route, providing a direct and comprehensive reflection of the data and metadata communicated to the client. This ensures that subscribers to route events receive a payload that encapsulates both the primary data involved and any additional information deemed significant at the business level, facilitating a deeper understanding and integration of the service’s functional outcomes.

Route Event chatmessage-created

Event topic : appaili-aicoach-service-chatmessage-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the chatMessage data object itself.

The following JSON included in the payload illustrates the fullest representation of the chatMessage object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"chatMessage","method":"POST","action":"create","appVersion":"Version","rowCount":1,"chatMessage":{"id":"ID","content":"Text","conversationId":"ID","flagged":"Boolean","role":"Enum","role_idx":"Integer","toolCallData":"Text","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event coachconversation-created

Event topic : appaili-aicoach-service-coachconversation-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the coachConversation data object itself.

The following JSON included in the payload illustrates the fullest representation of the coachConversation object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"coachConversation","method":"POST","action":"create","appVersion":"Version","rowCount":1,"coachConversation":{"id":"ID","status":"Enum","status_idx":"Integer","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"activeSubscriptions":"Object"}

Route Event quotaconfig-created

Event topic : appaili-aicoach-service-quotaconfig-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the quotaConfig data object itself.

The following JSON included in the payload illustrates the fullest representation of the quotaConfig object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"quotaConfig","method":"POST","action":"create","appVersion":"Version","rowCount":1,"quotaConfig":{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event weightlog-created

Event topic : appaili-aicoach-service-weightlog-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the weightLog data object itself.

The following JSON included in the payload illustrates the fullest representation of the weightLog object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"weightLog","method":"POST","action":"create","appVersion":"Version","rowCount":1,"weightLog":{"id":"ID","measuredAt":"Date","userId":"ID","weightKg":"Float","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event quotaconfig-updated

Event topic : appaili-aicoach-service-quotaconfig-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the quotaConfig data object itself.

The following JSON included in the payload illustrates the fullest representation of the quotaConfig object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"quotaConfig","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"quotaConfig":{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event moderationrecord-deleted

Event topic : appaili-aicoach-service-moderationrecord-deleted

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecord data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecord object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecord","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"moderationRecord":{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":false}}

Route Event deletemealplan-done

Event topic : appaili-aicoach-service-deletemealplan-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the mealPlan data object itself.

The following JSON included in the payload illustrates the fullest representation of the mealPlan object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"mealPlan","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"mealPlan":{"id":"ID","carbGrams":"Float","dailyCalorieTarget":"Integer","fatGrams":"Float","notes":"Text","proteinGrams":"Float","restDayCalories":"Integer","restDayCarbGrams":"Float","status":"Enum","status_idx":"Integer","trainingDayCalories":"Integer","trainingDayCarbGrams":"Float","userId":"ID","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event deletetrainingprogram-done

Event topic : appaili-aicoach-service-deletetrainingprogram-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the trainingProgram data object itself.

The following JSON included in the payload illustrates the fullest representation of the trainingProgram object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"trainingProgram","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"trainingProgram":{"id":"ID","cardioDurationMinutes":"Integer","cardioFrequencyPerWeek":"Integer","cardioType":"String","dailyStepTarget":"Integer","deloadIntervalWeeks":"Integer","notes":"Text","splitType":"String","status":"Enum","status_idx":"Integer","userId":"ID","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event moderationrecord-updated

Event topic : appaili-aicoach-service-moderationrecord-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecord data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecord object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecord","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"moderationRecord":{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":true}}

Route Event listmymoderationrecords-done

Event topic : appaili-aicoach-service-listmymoderationrecords-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecords data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecords object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecords","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","moderationRecords":[{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":true},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event banappeals-listed

Event topic : appaili-aicoach-service-banappeals-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppealses data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppealses object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppealses","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","banAppealses":[{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","showmoderationRecord":[{"offenseType":"String","reason":"Text","userId":"ID","content":"String"},{},{}]},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event banappeal-created

Event topic : appaili-aicoach-service-banappeal-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppeals data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppeals object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppeals","method":"POST","action":"create","appVersion":"Version","rowCount":1,"banAppeals":{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event banappeal-updated

Event topic : appaili-aicoach-service-banappeal-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppeals data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppeals object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppeals","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"banAppeals":{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquota-created

Event topic : appaili-aicoach-service-additionalquota-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"POST","action":"create","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event myadditionalquota-retrived

Event topic : appaili-aicoach-service-myadditionalquota-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"GET","action":"get","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"myaddQuota":"Object"}

Route Event additionalquotapayment-retrived

Event topic : appaili-aicoach-service-additionalquotapayment-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayments-listed

Event topic : appaili-aicoach-service-additionalquotapayments-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayments data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayments object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayments","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_additionalQuotaPayments":[{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event additionalquotapayment-created

Event topic : appaili-aicoach-service-additionalquotapayment-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"POST","action":"create","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-updated

Event topic : appaili-aicoach-service-additionalquotapayment-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-deleted

Event topic : appaili-aicoach-service-additionalquotapayment-deleted

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapaymentbyorderid-retrived

Event topic : appaili-aicoach-service-additionalquotapaymentbyorderid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapaymentbypaymentid-retrived

Event topic : appaili-aicoach-service-additionalquotapaymentbypaymentid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-started

Event topic : appaili-aicoach-service-additionalquotapayment-started

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event additionalquotapayment-refreshed

Event topic : appaili-aicoach-service-additionalquotapayment-refreshed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event additionalquotapayment-calledback

Event topic : appaili-aicoach-service-additionalquotapayment-calledback

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"POST","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event paymentcustomerbyuserid-retrived

Event topic : appaili-aicoach-service-paymentcustomerbyuserid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentCustomer data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentCustomer object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentCustomer","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_paymentCustomer":{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event paymentcustomers-listed

Event topic : appaili-aicoach-service-paymentcustomers-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentCustomers data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentCustomers object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentCustomers","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_paymentCustomers":[{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event paymentcustomermethods-listed

Event topic : appaili-aicoach-service-paymentcustomermethods-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentMethods data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentMethods object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentMethods","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_paymentMethods":[{"id":"ID","paymentMethodId":"String","userId":"ID","customerId":"String","cardHolderName":"String","cardHolderZip":"String","platform":"String","cardInfo":"Object","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Index Event sys_paymentmethod-created

Event topic: elastic-index-aifitapp_sys_paymentmethod-created

Event payload:

{"id":"ID","paymentMethodId":"String","userId":"ID","customerId":"String","cardHolderName":"String","cardHolderZip":"String","platform":"String","cardInfo":"Object","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event sys_paymentmethod-updated

Event topic: elastic-index-aifitapp_sys_paymentmethod-created

Event payload:

{"id":"ID","paymentMethodId":"String","userId":"ID","customerId":"String","cardHolderName":"String","cardHolderZip":"String","platform":"String","cardInfo":"Object","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event sys_paymentmethod-deleted

Event topic: elastic-index-aifitapp_sys_paymentmethod-deleted

Event payload:

{"id":"ID","paymentMethodId":"String","userId":"ID","customerId":"String","cardHolderName":"String","cardHolderZip":"String","platform":"String","cardInfo":"Object","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}

Index Event sys_paymentmethod-extended

Event topic: elastic-index-aifitapp_sys_paymentmethod-extended

Event payload:

{
  id: id,
  extends: {
    [extendName]: "Object",
    [extendName + "_count"]: "Number",
  },
}

Route Events

Route events are emitted following the successful execution of a route. While most routes perform CRUD (Create, Read, Update, Delete) operations on data objects, resulting in route events that closely resemble database events, there are distinctions worth noting. A single route execution might trigger multiple CRUD actions and ElasticSearch indexing operations. However, for those primarily concerned with the overarching business logic and its outcomes, listening to the consolidated route event, published once at the conclusion of the route’s execution, is more pertinent.

Moreover, routes often deliver aggregated data beyond the primary database object, catering to specific client needs. For instance, creating a data object via a route might not only return the entity’s data but also route-specific metrics, such as the executing user’s permissions related to the entity. Alternatively, a route might automatically generate default child entities following the creation of a parent object. Consequently, the route event encapsulates a unified dataset encompassing both the parent and its children, in contrast to individual events triggered for each entity created. Therefore, subscribing to route events can offer a richer, more contextually relevant set of information aligned with business logic.

The payload of a route event mirrors the REST response JSON of the route, providing a direct and comprehensive reflection of the data and metadata communicated to the client. This ensures that subscribers to route events receive a payload that encapsulates both the primary data involved and any additional information deemed significant at the business level, facilitating a deeper understanding and integration of the service’s functional outcomes.

Route Event chatmessage-created

Event topic : appaili-aicoach-service-chatmessage-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the chatMessage data object itself.

The following JSON included in the payload illustrates the fullest representation of the chatMessage object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"chatMessage","method":"POST","action":"create","appVersion":"Version","rowCount":1,"chatMessage":{"id":"ID","content":"Text","conversationId":"ID","flagged":"Boolean","role":"Enum","role_idx":"Integer","toolCallData":"Text","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event coachconversation-created

Event topic : appaili-aicoach-service-coachconversation-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the coachConversation data object itself.

The following JSON included in the payload illustrates the fullest representation of the coachConversation object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"coachConversation","method":"POST","action":"create","appVersion":"Version","rowCount":1,"coachConversation":{"id":"ID","status":"Enum","status_idx":"Integer","userId":"ID","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"activeSubscriptions":"Object"}

Route Event quotaconfig-created

Event topic : appaili-aicoach-service-quotaconfig-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the quotaConfig data object itself.

The following JSON included in the payload illustrates the fullest representation of the quotaConfig object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"quotaConfig","method":"POST","action":"create","appVersion":"Version","rowCount":1,"quotaConfig":{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event weightlog-created

Event topic : appaili-aicoach-service-weightlog-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the weightLog data object itself.

The following JSON included in the payload illustrates the fullest representation of the weightLog object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"weightLog","method":"POST","action":"create","appVersion":"Version","rowCount":1,"weightLog":{"id":"ID","measuredAt":"Date","userId":"ID","weightKg":"Float","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event quotaconfig-updated

Event topic : appaili-aicoach-service-quotaconfig-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the quotaConfig data object itself.

The following JSON included in the payload illustrates the fullest representation of the quotaConfig object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"quotaConfig","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"quotaConfig":{"id":"ID","quotaLimit":"Integer","quotaPeriod":"Enum","quotaPeriod_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event moderationrecord-deleted

Event topic : appaili-aicoach-service-moderationrecord-deleted

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecord data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecord object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecord","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"moderationRecord":{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":false}}

Route Event deletemealplan-done

Event topic : appaili-aicoach-service-deletemealplan-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the mealPlan data object itself.

The following JSON included in the payload illustrates the fullest representation of the mealPlan object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"mealPlan","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"mealPlan":{"id":"ID","carbGrams":"Float","dailyCalorieTarget":"Integer","fatGrams":"Float","notes":"Text","proteinGrams":"Float","restDayCalories":"Integer","restDayCarbGrams":"Float","status":"Enum","status_idx":"Integer","trainingDayCalories":"Integer","trainingDayCarbGrams":"Float","userId":"ID","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event deletetrainingprogram-done

Event topic : appaili-aicoach-service-deletetrainingprogram-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the trainingProgram data object itself.

The following JSON included in the payload illustrates the fullest representation of the trainingProgram object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"trainingProgram","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"trainingProgram":{"id":"ID","cardioDurationMinutes":"Integer","cardioFrequencyPerWeek":"Integer","cardioType":"String","dailyStepTarget":"Integer","deloadIntervalWeeks":"Integer","notes":"Text","splitType":"String","status":"Enum","status_idx":"Integer","userId":"ID","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event moderationrecord-updated

Event topic : appaili-aicoach-service-moderationrecord-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecord data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecord object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecord","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"moderationRecord":{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":true}}

Route Event listmymoderationrecords-done

Event topic : appaili-aicoach-service-listmymoderationrecords-done

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the moderationRecords data object itself.

The following JSON included in the payload illustrates the fullest representation of the moderationRecords object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"moderationRecords","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","moderationRecords":[{"id":"ID","action":"Enum","action_idx":"Integer","offenseType":"String","reason":"Text","suspensionExpiresAt":"Date","userId":"ID","content":"String","recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","isActive":true},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event banappeals-listed

Event topic : appaili-aicoach-service-banappeals-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppealses data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppealses object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppealses","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","banAppealses":[{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID","showmoderationRecord":[{"offenseType":"String","reason":"Text","userId":"ID","content":"String"},{},{}]},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event banappeal-created

Event topic : appaili-aicoach-service-banappeal-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppeals data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppeals object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppeals","method":"POST","action":"create","appVersion":"Version","rowCount":1,"banAppeals":{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event banappeal-updated

Event topic : appaili-aicoach-service-banappeal-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the banAppeals data object itself.

The following JSON included in the payload illustrates the fullest representation of the banAppeals object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"banAppeals","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"banAppeals":{"id":"ID","moderationRecordId":"ID","userId":"ID","appealReason":"String","status":"Enum","status_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquota-created

Event topic : appaili-aicoach-service-additionalquota-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"POST","action":"create","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event myadditionalquota-retrived

Event topic : appaili-aicoach-service-myadditionalquota-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"GET","action":"get","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"myaddQuota":"Object"}

Route Event additionalquotapayment-retrived

Event topic : appaili-aicoach-service-additionalquotapayment-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayments-listed

Event topic : appaili-aicoach-service-additionalquotapayments-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayments data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayments object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayments","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_additionalQuotaPayments":[{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event additionalquotapayment-created

Event topic : appaili-aicoach-service-additionalquotapayment-created

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"201","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"POST","action":"create","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-updated

Event topic : appaili-aicoach-service-additionalquotapayment-updated

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-deleted

Event topic : appaili-aicoach-service-additionalquotapayment-deleted

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"DELETE","action":"delete","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":false,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapaymentbyorderid-retrived

Event topic : appaili-aicoach-service-additionalquotapaymentbyorderid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapaymentbypaymentid-retrived

Event topic : appaili-aicoach-service-additionalquotapaymentbypaymentid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_additionalQuotaPayment data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_additionalQuotaPayment object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_additionalQuotaPayment","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_additionalQuotaPayment":{"id":"ID","ownerId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"String","statusLiteral":"String","redirectUrl":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event additionalquotapayment-started

Event topic : appaili-aicoach-service-additionalquotapayment-started

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event additionalquotapayment-refreshed

Event topic : appaili-aicoach-service-additionalquotapayment-refreshed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"PATCH","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event additionalquotapayment-calledback

Event topic : appaili-aicoach-service-additionalquotapayment-calledback

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the additionalQuota data object itself.

The following JSON included in the payload illustrates the fullest representation of the additionalQuota object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"additionalQuota","method":"POST","action":"update","appVersion":"Version","rowCount":1,"additionalQuota":{"id":"ID","userId":"String","additionalMessage":"Integer","status":"Enum","status_idx":"Integer","currency":"String","pricePaid":"Integer","statusUpdatedAt":"Date","activatedAt":"Date","cancelledAt":"Date","periodEnd":"Date","periodStart":"Date","paymentConfirmation":"Enum","paymentConfirmation_idx":"Integer","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},"paymentResult":{"paymentTicketId":"ID","orderId":"ID","paymentId":"String","paymentStatus":"Enum","paymentIntentInfo":"Object","statusLiteral":"String","amount":"Double","currency":"String","success":true,"description":"String","metadata":"Object","paymentUserParams":"Object"}}

Route Event paymentcustomerbyuserid-retrived

Event topic : appaili-aicoach-service-paymentcustomerbyuserid-retrived

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentCustomer data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentCustomer object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentCustomer","method":"GET","action":"get","appVersion":"Version","rowCount":1,"sys_paymentCustomer":{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"}}

Route Event paymentcustomers-listed

Event topic : appaili-aicoach-service-paymentcustomers-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentCustomers data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentCustomers object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentCustomers","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_paymentCustomers":[{"id":"ID","userId":"ID","customerId":"String","platform":"String","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Route Event paymentcustomermethods-listed

Event topic : appaili-aicoach-service-paymentcustomermethods-listed

Event payload:

The event payload, mirroring the REST API response, is structured as an encapsulated JSON. It includes metadata related to the API as well as the sys_paymentMethods data object itself.

The following JSON included in the payload illustrates the fullest representation of the sys_paymentMethods object. Note, however, that certain properties might be excluded in accordance with the object’s inherent logic.

{"status":"OK","statusCode":"200","elapsedMs":126,"ssoTime":120,"source":"db","cacheKey":"hexCode","userId":"ID","sessionId":"ID","requestId":"ID","dataName":"sys_paymentMethods","method":"GET","action":"list","appVersion":"Version","rowCount":"\"Number\"","sys_paymentMethods":[{"id":"ID","paymentMethodId":"String","userId":"ID","customerId":"String","cardHolderName":"String","cardHolderZip":"String","platform":"String","cardInfo":"Object","isActive":true,"recordVersion":"Integer","createdAt":"Date","updatedAt":"Date","_owner":"ID"},{},{}],"paging":{"pageNumber":"Number","pageRowCount":"NUmber","totalRowCount":"Number","pageCount":"Number"},"filters":[],"uiPermissions":[]}

Copyright

All sources, documents and other digital materials are copyright of .

About Us

For more information please visit our website: .

. .