Version: 27.0.0.0 Publisher: Origo App ID: 54db7020-675c-4760-aca6-f4061f924ed2 ID Range: 65300-65399 Target Platform: Business Central Cloud (27.0+) Languages: en-US, is-IS
Cloud Events Base is a comprehensive Business Central extension that provides REST API endpoints for processing cloud events following the CloudEvents 1.0 specification. The extension enables external systems to interact with Business Central through standardized event-driven messaging patterns for data integration, metadata queries, sales operations, and business logic calculations.
Email.Draft.Set creates Business Central email drafts with HTML body, CC/BCC recipients, optional URL-based attachments, and setup-driven email scenario resolution./cloudEventQueue)/cloudEventTask)/cloudEventData)External System → POST /cloudEventQueue (JSON payload)
↓
Validate CloudEvents structure (id, source, type, subject, data)
↓
Store in Cloud Event Message table (Direction: Incoming)
| --- | --- |
Schedule background task (TaskScheduler.CreateTask)
↓
[Background Processing]
| --- | --- |
Dispatch to interface implementation based on MessageType
↓
Execute business logic (read/write data, calculations)
↓
Store response in Cloud Event Message table (Direction: Outgoing)
↓
Raise External Business Event (OnCloudEventMessageCompleted)
↓
Webhook notification sent to subscribers (MessageId, MessageType, ResponseContentLink, Timestamp)
↓
External System ← GET /cloudEventData (retrieve response using MessageId)
The extension uses Business Central's native External Business Events for webhook notifications:
/cloudEventData APIOnCloudEventMessageCompleted: Raised when message processing succeedsOnCloudEventMessageFailed: Raised when message processing failsAll cloud event messages follow a consistent processing pattern:
Cloud Event Msg Interface and executes business logic| Message Type | Purpose |
|---|---|
| Help.MessageTypes.Get | Lists all available message types with metadata |
| Help.Implementation.Get | Returns detailed help documentation for a specific message type |
| Help.Tables.Get | Returns list of all tables in Business Central |
| Help.Fields.Get | Returns field metadata for a specified table |
| Help.Permissions.Get | Returns permission set information and access levels |
| Data.RecordIds.Get | Returns record IDs and modification timestamps for incremental sync |
| Data.Records.Get | Returns full record data as JSON for a specified table (by name, number, or subject field); supports field filtering, FlowField retrieval, date range, table view, and pagination |
| Data.Records.Set | Inserts or updates records from JSON payload |
| Email.Draft.Set | Creates a Business Central email draft with recipients, body content, optional attachments, and resolved email scenario |
| CSV.Records.Get | Exports all matching records from a specified table as a UTF-8 CSV file in Open Mirroring format (text/csv); supports field filtering, date range, and table view |
| Data.Totals.Get | Aggregates Decimal SumIndexFields across matching records in a specified table using BC's native CalcSums function |
| Deleted.Records.Get | Returns full JSON snapshots of deleted records from the Cloud Events Delete Log; supports optional field filtering, date range, and skip/take pagination |
| Deleted.RecordIds.Get | Returns system IDs and deletion timestamps for deleted records; lightweight sync without requiring Save JSON to be enabled |
| CSV.DeletedRecords.Get | Exports deleted record audit data as a base64-encoded RFC 4180 CSV file, with optional JSON snapshot column |
| Customer.CreditLimit.Get | Retrieves customer credit limit information including balance and outstanding amounts |
| Customer.SalesHistory.Get | Retrieves sales history by item for a specific customer within a date range, based on Item Ledger Entries |
| Customer.Statement.Pdf | Retrieves customer statement as a PDF document with optional date range using configured report selection |
| Item.Availability.Get | Retrieves item availability information including inventory quantities |
| Item.Price.Get | Retrieves item pricing information based on customer and quantity |
| Sales.Order.Release | Releases a sales order, changing status from Open to Released |
| Sales.Order.Reopen | Reopens a released sales order, changing status back to Open |
| Sales.Order.Statistics | Retrieves sales order statistics including amounts, VAT totals, quantities, weight and volume |
| Sales.Order.Post | Posts a sales order and returns the resulting posted invoice number |
| Sales.Order.PendingApproval | Sets a sales order status to Pending Approval for approval workflows |
| Sales.SalesInvoice.Pdf | Retrieves posted sales invoice as a PDF document using configured report selection |
| Sales.SalesShipment.Pdf | Retrieves posted sales shipment as a PDF document using configured report selection |
| Sales.SalesCreditMemo.Pdf | Retrieves posted sales credit memo as a PDF document using configured report selection |
| Sales.ReturnReceipt.Pdf | Retrieves posted return receipt as a PDF document using configured report selection |
| Purchase.Order.Release | Releases a purchase order, changing status from Open to Released |
| Purchase.Order.Reopen | Reopens a released purchase order, changing status back to Open |
| Purchase.Order.Statistics | Retrieves purchase order statistics including amounts, VAT totals, quantities, weight and volume |
| Purchase.Order.Post | Posts a purchase order and returns the resulting posted receipt number |
| Purchase.Order.PendingApproval | Sets a purchase order status to Pending Approval for approval workflows |
| Finance.GeneralJournal.Check | Validates a general journal batch without posting, returns comprehensive readiness status (Ready/ReadyWithWarnings/NotReady) with detailed validation results using BC Error Message Management framework |
| Finance.GeneralJournal.Post | Posts a general journal batch and returns posting statistics including entry counts by type (GL, Customer, Vendor) |
| Incoming.Document.Create | Creates a new Incoming Document with a main file attachment (Base64). Supports vendorNo, description, documentDate, and dueDate |
| Incoming.Document.Attach | Adds a supplemental file attachment to an existing Incoming Document, identified by EntryNo or SystemId |
| Incoming.Document.Process | Processes an Incoming Document to create a purchase invoice or general journal line |
| Incoming.Document.Get | Retrieves an Incoming Document with all header fields and all attachments as Base64, split into mainAttachment and additionalAttachments |
| Field.Translation.Get | Retrieves BC system translations for a specific record field identified by table, SystemId, and field number |
| Field.Translation.Set | Writes or deletes BC system translations for a record field |
| Field.Translations.Get | Retrieves all stored translations for a record, with optional field and language filters |
| ChangeLog.Field.History | Returns the complete modification history for a single record field from the Change Log, ordered most-recent first, with a synthetic «Current» entry (entryNo=0) showing the live value |
| ChangeLog.Field.Restore | Restores a record field to a previous Change Log value — by entryNo (Mode 1) or by point-in-time lookup (Mode 2). Respects the ChangeLog Write Guard and field restrictions |
| ChangeLog.Field.Enabled | Checks whether Change Log modification logging is active for a specific table field, returning tableNo, fieldNo, fieldName, and isEnabled |
| Memory.Company.Get | Retrieves company-scoped memory records (key-value blobs) with optional skip/take pagination and table view filtering |
| Memory.Company.List | Lists company-scoped memory records returning only id and description (no memory blob) with optional skip/take pagination |
| Memory.Company.Set | Inserts or updates company-scoped memory records from a JSON data array; upserts by GUID id |
| Memory.User.Get | Retrieves user-scoped memory records filtered to the calling user, with optional skip/take pagination and table view filtering |
| Memory.User.List | Lists user-scoped memory records returning only id and description (no memory blob) with optional skip/take pagination |
| Memory.User.Set | Inserts or updates user-scoped memory records for the calling user from a JSON data array; upserts by GUID id |
The extension provides five key extensibility points through AL interfaces:
Interface: Cloud Event Msg Interface Extensible Enum: Cloud Event Message Type (65300)
Allows creation of custom message types by:
Cloud Event Msg InterfaceCloud Event Message Type enum with the implementation bindingExecuteCloudEventTask() method to define custom business logicInterface: Customer Credit Limit Extensible Enum: Customer Credit Limit Type (65303) Setup Field: Cloud Events Setup → Customer Credit Limit Type
Allows custom credit limit calculation logic. Built-in implementation:
Interface: Item Calc. Availability Extensible Enum: Item Calc. Availability Type (65304) Setup Field: Cloud Events Setup → Item Calc. Availability Type
Allows custom item availability calculations. Built-in implementations:
Interface: Item Price Calculation Extensible Enum: Item Price Calculation Type (65305) Setup Field: Cloud Events Setup → Item Price Calculation Type
Allows custom price calculation logic. Built-in implementations:
Interface: Customer Statement Extensible Enum: Customer Statement Type (65306) Setup Field: Cloud Events Setup → Customer Statement Type
Allows custom customer statement generation. Built-in implementation:
C.Statement to generate the PDFCloud Event Msg Interface to add custom message typesOnBeforeCloudEventMessageProcessing, OnAfterCloudEventMessageCompleted, OnAfterCloudEventMessageFailed for extending processing logicCloud Event Message Version enum allows multiple implementation versionsCustomer Credit Limit, Item Calc. Availability, Item Price Calculation, Customer Statement) allow custom implementations without code modificationCloudEventQueueAPI.Page.al) or Task API (CloudEventTaskAPI.Page.al) receives POST requestCloud Event Message table recordCloud Event Messagedate & time fieldTaskScheduler.CreateTask()Cloud Event Message Task is scheduled for executiontype determines which implementation to invokeCloud Event Msg InterfaceCloud Event Message Argument is populatedExecuteCloudEventTask() is invoked on the interface implementationCloud Event Message Error is invokedtext/json with error structureThe extension includes a Cloud Events Setup table (65302) and page (65307) accessible from the Administration area. Configuration options include:
| Field | Purpose |
|---|---|
| Customer Credit Limit Type | Selects implementation for customer credit limit calculations (Default Credit Limit, or custom implementations) |
| Credit Limit Tolerance % | Percentage tolerance for credit limit checks (0-100) |
| Item Calc. Availability Type | Selects implementation for item availability calculations (Physical Inventory, Calculated Quantity, or custom implementations) |
| Item Price Calculation Type | Selects implementation for item price calculations (Default Price, Sales Price Header Handler, or custom implementations) |
| Customer Statement Type | Selects implementation for customer statement PDF generation (Standard Statement, or custom implementations) |
| Default Language Code | Default language for system-generated messages and help text |
| Default Email Scenario | Fallback email scenario used by Email.Draft.Set when the request does not specify one explicitly |
To access the setup page, search for "Cloud Events Setup" in Business Central.
The extension includes Cloud Events Field Accesses page (65309) for managing user-level field access restrictions. This feature allows administrators to:
Restriction Types:
To access field restrictions, search for "Cloud Events Field Accesses" in Business Central. See Field Access Restrictions documentation for detailed setup instructions and use cases.
Users or service accounts accessing the API endpoints must be assigned one of the following permission sets:
API endpoints are published at:
/api/origo/cloudEvent/v1.0/queues/api/origo/cloudEvent/v1.0/tasks/api/origo/cloudEvent/v1.0/responsesAuthentication follows standard Business Central web service authentication (OAuth 2.0 or Basic Auth depending on deployment).
The extension registers the Cloud Event Message table with Business Central's retention policy framework, allowing administrators to automatically delete old message records based on the date & time field.
Objective: External system needs to check available credit for a customer before accepting an order.
POST https://<bc-instance>/ODataV4/Company('<company-name>')/cloudEventQueue
Content-Type: application/cloudevents+json
{
"specversion": "1.0",
| --- | --- |
"source": "https://external-system.example.com",
"type": "Customer.CreditLimit.Get",
"subject": "CUST-10000",
"datacontenttype": "application/json",
"time": "2024-01-15T14:30:00Z",
"data": {
"CustomerNo": "CUST-10000"
}
}
Response: 202 Accepted
Configure webhook subscription in Business Central:
Your webhook endpoint receives:
{
"MessageId": "credit-check-001",
"MessageType": "Customer.CreditLimit.Get",
"ResponseContentLink": "/api/origo/cloudEvent/v1.0/responses(credit-check-001)/data",
"Timestamp": "2024-01-15T14:30:02Z"
}
GET https://<bc-instance>/ODataV4/Company('<company-name>')/cloudEventData?$filter=MessageId eq 'credit-check-001'
Response:
{
"value": [
{
"MessageId": "credit-check-001",
"MessageType": "Customer.CreditLimit.Get",
"Direction": "Outgoing",
"ResponseData": "{\"CustomerNo\":\"CUST-10000\",\"CreditLimit\":50000.00,\"Balance\":35000.00,\"AvailableCredit\":15000.00}",
"ResponseTime": "2024-01-15T14:30:02Z"
}
]
}
For immediate response without webhook callback:
POST https://<bc-instance>/ODataV4/Company('<company-name>')/cloudEventTask
Content-Type: application/cloudevents+json
{
"specversion": "1.0",
"id": "credit-check-sync-001",
"source": "https://external-system.example.com",
"type": "Customer.CreditLimit.Get",
"subject": "CUST-10000",
"datacontenttype": "application/json",
"data": {
"CustomerNo": "CUST-10000"
}
}
Response: 200 OK with response data inline
| Object Type | Object ID | Name | Purpose |
|---|---|---|---|
| Table | 65300 | Cloud Event Message | Stores cloud event messages with request/response data and task scheduling info |
| Table | 65301 | Cloud Event Message Argument | Temporary table for passing arguments to message type implementations |
| Table | 65302 | Cloud Events Setup | Stores configuration for credit limit, availability, and price calculation implementations |
| Table | 65303 | Cloud Event Translation | Stores translatable string pairs (source/target) for external UI internationalization |
| Table | 65304 | Cloud Events Field Access | Stores field-level access restrictions for users |
| Table | 65305 | CE User/App Buffer | Temporary buffer combining active users and AAD applications for restriction management |
| Table | 65306 | Cloud Event Translation Source | Temporary buffer of distinct translation source identifiers, populated from existing translations |
| Table | 65307 | Cloud Events Integration | Operational event log recording source system, table, timestamp, and reversal status for integration events |
| Table | 65308 | Cloud Events Storage | Stores named blob payloads for import/export and configuration scenarios |
| Table | 65309 | Cloud Events Delete Log | Logs deleted records with optional full-record JSON snapshots for sync and audit |
| Table | 65310 | Cloud Event Message Type List | Temporary buffer listing available cloud event message types for setup lookup |
| Table | 65311 | Cloud Events Delete Setup | Configuration table specifying which tables should log deletions and store record snapshots |
| Table | 65319 | Cloud Events Memory | Company-scoped key-value memory storage with blob payloads |
| Table | 65320 | Cloud Events User Memory | User-scoped key-value memory storage with blob payloads |
| Table | 65316 | Sales Price Buffer | Temporary buffer table for price list query results |
| Page | 65300 | Cloud Event Data API | API endpoint for retrieving response data from completed messages |
| Page | 65301 | Cloud Event Queue API | API endpoint for creating asynchronous message requests |
| Page | 65302 | Cloud Event Task API | API endpoint for creating synchronous message requests |
| Page | 65303 | Cloud Event Message Editor | Dialog page for viewing/editing message request/response data |
| Page | 65304 | Cloud Event Messages | List page for viewing and managing all cloud event messages |
| Page | 65305 | Cloud Event Request | FactBox page displaying request data for a message |
| Page | 65306 | Cloud Event Response | FactBox page displaying response data for a message |
| Page | 65307 | Cloud Events Setup | Setup page for configuring Cloud Events functionality |
| Page | 65309 | Cloud Events Field Accesses | List page for managing field-level access restrictions |
| Page | 65310 | CE User/App Lookup | Lookup page for selecting users or AAD applications |
| Page | 65311 | Cloud Events Field Lookup | Lookup page for selecting table fields |
| Page | 65308 | Cloud Event Translations | List page for managing translation entries used by external systems |
| Page | 65312 | CE Translation Src Lookup | Lookup page for selecting a translation source to filter the Cloud Event Translations list |
| Page | 65313 | Cloud Event Request Data API | API endpoint for retrieving the original request payload for a processed message |
| Page | 65314 | Cloud Events Integration | List page for viewing and managing cloud event integration log records |
| Page | 65315 | Cloud Events Storage | List page for managing stored blob content with import/export actions |
| Page | 65316 | Cloud Event Message Type List | Lookup page for selecting a cloud event message type |
| Page | 65317 | Cloud Events Delete Log | List page for viewing and managing the cloud events delete log |
| Page | 65318 | Cloud Events Delete Setup | List page for configuring which tables are tracked for deleted record logging |
| Page | 65335 | MCP Chat Model List | Lookup page for selecting an available AI model from the configured MCP Chat server |
| Query | 65303 | CE Translation Sources | Query returning distinct Source values from the Cloud Event Translation table |
| Codeunit | 65300 | Cloud Event Install | Installation codeunit for registering retention policy |
| Codeunit | 65301 | Cloud Event Upgrade | Upgrade codeunit for managing app upgrades |
| Codeunit | 65302 | Help Fields Get Help | Help documentation generator for Help.Fields.Get message type |
| Codeunit | 65303 | Help Impl Get Help | Help documentation generator for Help.Implementation.Get message type |
| Codeunit | 65304 | Help MessageTypes Get Help | Help documentation generator for Help.MessageTypes.Get message type |
| Codeunit | 65305 | Data RecordIds Get Help | Help documentation generator for Data.RecordIds.Get message type |
| Codeunit | 65306 | Help Tables Get Help | Help documentation generator for Help.Tables.Get message type |
| Codeunit | 65307 | Help Fields Get Impl | Implementation of Help.Fields.Get message type |
| Codeunit | 65308 | Help Impl Get Impl | Implementation of Help.Implementation.Get message type |
| Codeunit | 65309 | Help MessageTypes Get Impl | Implementation of Help.MessageTypes.Get message type |
| Codeunit | 65310 | Data RecordIds Get Impl | Implementation of Data.RecordIds.Get message type |
| Codeunit | 65311 | Help Tables Get Impl | Implementation of Help.Tables.Get message type |
| Codeunit | 65312 | Cloud Event Message Error | Error handling codeunit for formatting error responses |
| Codeunit | 65313 | Cloud Event Message Task | Task runner codeunit for processing cloud event messages |
| Codeunit | 65314 | Data Records Get Impl | Implementation of Data.Records.Get message type |
| Codeunit | 65315 | Data Records Get Help | Help documentation generator for Data.Records.Get message type |
| Codeunit | 65316 | Data Records Set Impl | Implementation of Data.Records.Set message type |
| Codeunit | 65317 | Data Records Set Help | Help documentation generator for Data.Records.Set message type |
| Codeunit | 65318 | Customer CreditLimit Get Help | Help documentation generator for Customer.CreditLimit.Get message type |
| Codeunit | 65319 | Customer CreditLimit Get Impl | Implementation of Customer.CreditLimit.Get message type |
| Codeunit | 65320 | Help Permissions Get Help | Help documentation generator for Help.Permissions.Get message type |
| Codeunit | 65321 | Help Permissions Get Impl | Implementation of Help.Permissions.Get message type |
| Codeunit | 65322 | Item Availability Get Impl | Implementation of Item.Availability.Get message type |
| Codeunit | 65323 | Item Availability Get Help | Help documentation generator for Item.Availability.Get message type |
| Codeunit | 65324 | Item Price Get Impl | Implementation of Item.Price.Get message type |
| Codeunit | 65325 | Item Price Get Help | Help documentation generator for Item.Price.Get message type |
| Codeunit | 65326 | Sales Order Release Impl | Implementation of Sales.Order.Release message type |
| Codeunit | 65327 | Sales Order Release Help | Help documentation generator for Sales.Order.Release message type |
| Codeunit | 65328 | Data Records Set Process | Helper codeunit for processing record data in Data.Records.Set |
| Codeunit | 65329 | Sales Order Reopen Impl | Implementation of Sales.Order.Reopen message type |
| Codeunit | 65330 | Default Credit Limit Impl | Default implementation of Customer Credit Limit interface |
| Codeunit | 65331 | Sales Order Reopen Help | Help documentation generator for Sales.Order.Reopen message type |
| Codeunit | 65332 | Physical Inventory Impl | Physical inventory implementation of Item Calc. Availability interface |
| Codeunit | 65333 | Calculated Quantity Impl | Calculated quantity implementation of Item Calc. Availability interface |
| Codeunit | 65334 | Default Price Impl | Default implementation of Item Price Calculation interface |
| Codeunit | 65335 | Sales Price Header Handler | Sales price header implementation of Item Price Calculation interface |
| Codeunit | 65336 | Sales CrMemo PDF Get Impl | Implementation of Sales.SalesCreditMemo.Pdf message type |
| Codeunit | 65337 | Return Rcpt PDF Get Impl | Implementation of Sales.ReturnReceipt.Pdf message type |
| Codeunit | 65338 | Sales Invoice PDF Get Impl | Implementation of Sales.SalesInvoice.Pdf message type |
| Codeunit | 65339 | Sales Shipment PDF Get Impl | Implementation of Sales.SalesShipment.Pdf message type |
| Codeunit | 65340 | Return Rcpt PDF Get Help | Help documentation generator for Sales.ReturnReceipt.Pdf message type |
| Codeunit | 65341 | Sales CrMemo PDF Get Help | Help documentation generator for Sales.SalesCreditMemo.Pdf message type |
| Codeunit | 65342 | Sales Invoice PDF Get Help | Help documentation generator for Sales.SalesInvoice.Pdf message type |
| Codeunit | 65343 | Sales Shipment PDF Get Help | Help documentation generator for Sales.SalesShipment.Pdf message type |
| Codeunit | 65344 | Sales Order Statistics Impl | Implementation of Sales.Order.Statistics message type |
| Codeunit | 65345 | Sales Order Statistics Help | Help documentation generator for Sales.Order.Statistics message type |
| Codeunit | 65347 | Customer Statement PDF Help | Help documentation generator for Customer.Statement.Pdf message type |
| Codeunit | 65348 | Customer Statement PDF Impl | Dispatch codeunit for Customer.Statement.Pdf — delegates to Customer Statement interface |
| Codeunit | 65349 | Deleted Records Get Impl | Implementation of Deleted.Records.Get message type |
| Codeunit | 65353 | Deleted Records Get Help | Help documentation generator for Deleted.Records.Get message type |
| Codeunit | 65354 | Deleted RecordIds Get Impl | Implementation of Deleted.RecordIds.Get message type |
| Codeunit | 65355 | Deleted RecordIds Get Help | Help documentation generator for Deleted.RecordIds.Get message type |
| Codeunit | 65356 | CSV Deleted Records Get Impl | Implementation of CSV.DeletedRecords.Get message type |
| Codeunit | 65357 | CSV Deleted Records Get Help | Help documentation generator for CSV.DeletedRecords.Get message type |
| Codeunit | 65358 | CSV Builder | RFC 4180 compliant CSV construction utility used by CSV export message types |
| Codeunit | 65359 | Standard Statement Impl | Default implementation of Customer Statement interface using BC Report Selections for C.Statement |
| Codeunit | 65372 | Sales Order Post Impl | Implementation of Sales.Order.Post message type |
| Codeunit | 65373 | Sales Order Post Help | Help documentation generator for Sales.Order.Post message type |
| Codeunit | 65364 | Sales Order PendAppr Impl | Implementation of Sales.Order.PendingApproval message type |
| Codeunit | 65365 | Sales Order PendAppr Help | Help documentation generator for Sales.Order.PendingApproval message type |
| Codeunit | 65374 | Purchase Order Release Impl | Implementation of Purchase.Order.Release message type |
| Codeunit | 65375 | Purchase Order Release Help | Help documentation generator for Purchase.Order.Release message type |
| Codeunit | 65376 | Purchase Order Reopen Impl | Implementation of Purchase.Order.Reopen message type |
| Codeunit | 65377 | Purchase Order Reopen Help | Help documentation generator for Purchase.Order.Reopen message type |
| Codeunit | 65378 | Purchase Order Statistics Impl | Implementation of Purchase.Order.Statistics message type |
| Codeunit | 65379 | Purchase Order Statistics Help | Help documentation generator for Purchase.Order.Statistics message type |
| Codeunit | 65380 | Purchase Order Post Impl | Implementation of Purchase.Order.Post message type |
| Codeunit | 65381 | Purchase Order Post Help | Help documentation generator for Purchase.Order.Post message type |
| Codeunit | 65366 | Purchase Ord PendAppr Impl | Implementation of Purchase.Order.PendingApproval message type |
| Codeunit | 65367 | Purchase Ord PendAppr Help | Help documentation generator for Purchase.Order.PendingApproval message type |
| Codeunit | 65346 | Cloud Event Message Events | External Business Events and Integration Events for webhook notifications |
| Codeunit | 65350 | Cloud Events Field Access | Management codeunit for checking field-level access restrictions |
| Codeunit | 65351 | Cloud Event Message Type Mgmt | Management codeunit for cloud event message type configuration and validation |
| Codeunit | 65352 | Cloud Events Delete Log Mgt | Management codeunit for the cloud events delete log, handling record capture on delete |
| Codeunit | 65370 | Customer SalesHistory Get Impl | Implementation of Customer.SalesHistory.Get message type |
| Codeunit | 65371 | Customer SalesHistory Get Help | Help documentation generator for Customer.SalesHistory.Get message type |
| Codeunit | 65382 | CSV Records Get Impl | Implementation of CSV.Records.Get message type |
| Codeunit | 65383 | CSV Records Get Help | Help documentation generator for CSV.Records.Get message type |
| Codeunit | 65384 | CSV Format Helper | Open Mirroring CSV formatting helper (column naming, value encoding, field type support) |
| Codeunit | 65387 | Data Totals Get Impl | Implementation of Data.Totals.Get message type |
| Codeunit | 65388 | Data Totals Get Help | Help documentation generator for Data.Totals.Get message type |
| Codeunit | 65385 | Gen. Journal Check Impl | Implementation of Finance.GeneralJournal.Check message type |
| Codeunit | 65386 | Gen. Journal Post Impl | Implementation of Finance.GeneralJournal.Post message type |
| Codeunit | 65389 | Gen. Journal Check Help | Help documentation generator for Finance.GeneralJournal.Check message type |
| Codeunit | 65390 | Gen. Journal Post Help | Help documentation generator for Finance.GeneralJournal.Post message type |
| Codeunit | 65391 | Field Translation Get Impl | Implementation of Field.Translation.Get message type |
| Codeunit | 65392 | Field Translation Set Impl | Implementation of Field.Translation.Set message type |
| Codeunit | 65393 | Field Translation Get Help | Help documentation generator for Field.Translation.Get message type |
| Codeunit | 65394 | Field Translation Set Help | Help documentation generator for Field.Translation.Set message type |
| Codeunit | 65395 | Field Translations Get Impl | Implementation of Field.Translations.Get message type |
| Codeunit | 65396 | Field Translations Get Help | Help documentation generator for Field.Translations.Get message type |
| Codeunit | 65362 | ChangeLog FieldEnabled Impl | Implementation of ChangeLog.Field.Enabled message type |
| Codeunit | 65363 | ChangeLog FieldEnabled Help | Help documentation generator for ChangeLog.Field.Enabled message type |
| Codeunit | 65412 | ChangeLog Field Restore Impl | Implementation of ChangeLog.Field.Restore message type |
| Codeunit | 65413 | ChangeLog Field Restore Help | Help documentation generator for ChangeLog.Field.Restore message type |
| Codeunit | 65414 | ChangeLog Restore Process | Isolated write process for applying Change Log field restores with error handling |
| Codeunit | 65415 | ChangeLog FieldHistory Impl | Implementation of ChangeLog.Field.History message type |
| Codeunit | 65416 | ChangeLog FieldHistory Help | Help documentation generator for ChangeLog.Field.History message type |
| Codeunit | 65417 | ChangeLog Guard Helper | Shared helper for ChangeLog Write Guard implementations — Change Log coverage checks and scope caching |
| Codeunit | 65418 | Open Write Guard Impl | Open mode implementation of ChangeLog Write Guard — allows all field writes |
| Codeunit | 65419 | Blocked Write Guard Impl | Blocked mode implementation of ChangeLog Write Guard — rejects writes to fields not covered by Change Log |
| Codeunit | 65420 | Via Force Write Guard Impl | Via-force mode implementation of ChangeLog Write Guard — blocked but bypassable with force=true and CE Force Access permission |
| Codeunit | 65442 | Cloud Events Memory Mgt | Management codeunit for memory record filtering, JSON serialization, and blob helpers |
| Codeunit | 65443 | Memory Company Get Impl | Implementation of Memory.Company.Get message type |
| Codeunit | 65444 | Memory Company Set Impl | Implementation of Memory.Company.Set message type |
| Codeunit | 65445 | Memory Company Set Process | Isolated write process for company memory upserts |
| Codeunit | 65447 | Memory Company Get Help | Help documentation generator for Memory.Company.Get message type |
| Codeunit | 65448 | Memory Company Set Help | Help documentation generator for Memory.Company.Set message type |
| Codeunit | 65449 | Memory User Get Help | Help documentation generator for Memory.User.Get message type |
| Codeunit | 65450 | Memory User Set Help | Help documentation generator for Memory.User.Set message type |
| Codeunit | 65451 | Memory User Get Impl | Implementation of Memory.User.Get message type |
| Codeunit | 65452 | Memory User Set Impl | Implementation of Memory.User.Set message type |
| Codeunit | 65453 | Memory User Set Process | Isolated write process for user memory upserts |
| Codeunit | 65454 | Memory Company List Impl | Implementation of Memory.Company.List message type |
| Codeunit | 65455 | Memory User List Impl | Implementation of Memory.User.List message type |
| Codeunit | 65456 | Memory Company List Help | Help documentation generator for Memory.Company.List message type |
| Codeunit | 65457 | Memory User List Help | Help documentation generator for Memory.User.List message type |
| Codeunit | 65498 | Email Draft Set Help | Help documentation generator for Email.Draft.Set message type |
| Codeunit | 65499 | Email Draft Set Impl | Implementation of Email.Draft.Set message type |
| Interface | N/A | ChangeLog Write Guard | Interface contract for implementing custom ChangeLog Write Guard strategies |
| PermissionSet | 65303 | CE Force Access | Grants the force-bypass right for the Via-force ChangeLog Write Guard mode |
| Enum | 65308 | ChangeLog Write Guard Type | Extensible enum for selecting the active ChangeLog Write Guard implementation |
| Enum | 65300 | Cloud Event Message Type | Extensible enum defining all available cloud event message types |
| Enum | 65301 | Cloud Event Message Version | Enum for CloudEvents specification versions (currently only 1.0) |
| Enum | 65302 | Cloud Event Msg Direction | Enum for message direction (Inbound, Outbound, Both) |
| Enum | 65303 | Customer Credit Limit Type | Extensible enum for customer credit limit calculation implementations |
| Enum | 65304 | Item Calc. Availability Type | Extensible enum for item availability calculation implementations |
| Enum | 65305 | Item Price Calculation Type | Extensible enum for item price calculation implementations |
| Enum | 65306 | Customer Statement Type | Extensible enum for customer statement PDF generation implementations |
| Enum | 65320 | Cloud Events Restriction Type | Enum defining restriction types (Both, Read, Write, Bypass) |
| Enum | 65321 | CE User Source Type | Enum for user source types (User, AAD Application) |
| EnumExtension | 65300 | Cloud Event Category | Extends EventCategory enum with "Origo Cloud Event" value for External Business Events |
| Query | 65300 | Item/Location - Inventory Qty | Query for calculating physical inventory by item and location |
| Query | 65301 | Sales Price List Query | Query for retrieving sales prices from price list entries |
| Query | 65302 | Customer Sales History | Query for retrieving item sales history for a customer from Item Ledger Entries |
| Interface | N/A | Cloud Event Msg Interface | Interface contract for implementing custom cloud event message types |
| Interface | N/A | Customer Credit Limit | Interface for implementing custom customer credit limit calculations |
| Interface | N/A | Item Calc. Availability | Interface for implementing custom item availability calculations |
| Interface | N/A | Item Price Calculation | Interface for implementing custom item price calculations |
| Interface | N/A | Customer Statement | Interface for implementing custom customer statement PDF generation |
| PermissionSet | 65300 | Cloud Events Full | Full access permission set for all Cloud Events objects |
| PermissionSet | 65301 | Cloud Events Read | Read-only access permission set for monitoring and reporting |
| PermissionSet | 65302 | Cloud Events API | Minimal permission set for service accounts accessing the Cloud Events API endpoints |
| PermissionSet | 65304 | CE Company Memory | Full RIMD access to company-scoped memory, translation, and storage tables |
No external dependencies. This extension runs on standard Business Central platform capabilities only.
The extension provides built-in context-sensitive help pages for all user-facing pages in both English and Icelandic. When a user presses the help button on any page in Business Central, they are directed to the corresponding help page for their locale.
Help pages are located in the app/Help/ folder:
app/Help/en-US/app/Help/is-IS/Each language folder contains an index.html home page with a table of contents linking to individual page help files.
Detailed documentation is available within the extension:
This extension implements the CloudEvents 1.0 Specification.
Required CloudEvents Attributes:
specversion: "1.0"id: Unique message identifier (used for response retrieval)source: URI identifying the context in which the event occurredtype: Message type (e.g., "Customer.CreditLimit.Get")subject: Business entity identifier (e.g., customer number, item code)Optional Attributes:
datacontenttype: MIME type of data payload (default: "application/json")time: Timestamp when event occurred (RFC 3339 format)Note for Data message types:
Data.Records.GetandData.Records.Setalso accept the table identification in thesubjectfield — both a table name (e.g.,"Customer") and a numeric table ID (e.g.,"18") are supported. The JSON data payload parameterstableName/tableNumbertake precedence when both are provided.
For questions, issues, or feature requests, contact Origo support or refer to internal Confluence documentation.
© 2026 Origo. All rights reserved.
© Origo – Cloud Events Base Extension