Skip to main content

MGCLatticeAsyncOperationService.submitAsyncOperation

Validates the async request, then creates the tracking record and schedules its batch job via MGCLatticeAsyncOperationProcessor in ONE transaction, and returns a tracking ID for the caller to poll. A submission reported as failed therefore leaves nothing behind that could still run: either both the Queued tracking row and its batch job commit, or neither does. The submission's RequestId is required and is the idempotency key of the submission (unique on the tracking table): a repeated submission with the same RequestId for the same service operation returns the first submission's tracking id and current status instead of queueing the work twice; the same RequestId for another operation is refused as DuplicateRequest. The payload must be readable as the operation's request contract and carry its own RequestId (the idempotency key of the posting itself) and an existing LegalEntityId, so work that is certain to fail is refused now instead of being queued.

  • HTTP method: POST
  • Route: /api/services/MGCLatticeAsyncOperationServiceGroup/MGCLatticeAsyncOperationService/submitAsyncOperation
  • Service class: MGCLatticeAsyncOperationService

Parameters​

NameTypeOptionalDescription
_requestMGCLatticeAsyncOperationRequestContractNoThe async operation request containing service name, operation name, and serialized request payload.

Returns​

MGCLatticeAsyncOperationResponseContract

An MGCLatticeAsyncOperationResponseContract with the tracking ID and status, or the refusal.

Security​

  • Requires privilege MGCLatticeAsyncOperationServiceMaintain