Skip to content

How your application consumes a received message

Preview

This feature is not subject to our service terms. Pre-GA features are available as is and might have limited support.

All job responses are delivered through Pub/Sub subscriptions to your application as described in Push vs Pull.

Your application consumes these job response messages as described in the Job Reference.

Your application actively pull job responses via pull subscription

Your application actively pull job responses via pull subscription

The job response is described in the Job Reference and the full schema in JobV2

Tip

Your consumer should be tolerant and expect that not all fields are always present or populated.

Request not discarded

Check whether the Pub/Sub message has an attribute modigieJobDiscardReasonType. If it does, the job request was discarded and no new job created. There will be no further messages for your request. The reason for discarding the job request is identified in the attribute's value.

To analyze the root cause:

  • MissingJobIdError: Your job request was not published with the Pub/Sub attribute modigieJobRequestId.
  • InvalidJobIdError: Your job request was published with the Pub/Sub attribute modigieJobRequestId, but the attribute did not have a valid string value.
  • DuplicateJobIdError: Your job request was published with the Pub/Sub attribute modigieJobRequestId, but the ID was already used for a previous job request with a different payload.

Note

If your application publishes two distinct job request messages with the same modigieJobRequestId value and an identical payload, the system will not create a new job resource, and the duplicate request has no effect on the existing job. However, if the job has already terminated, your application will receive the final job response message again. This allows you to replay final job response messages.

If a job request was not discarded and a job resource was created:

  • The job's id property will reflect the value that your application set as the attribute modigieJobRequestId in the original job request message.
  • The job's repository property references the exclusive Pub/Sub repository of your application and your Modigie Org Account.
  • The job's name property will

Job status

Warning

Your application MUST digest the payload into the destination database only for a job that shows status = "completed"!

Check the job's status property to determine whether the job has already terminated.

The current status of the job represents its position in its life cycle. Note that your application should only digest information from a job into your database if the job's status = "completed". For more details, see Job states.

Note

Modigie charges only for jobs that reach the status completed!

Job reason in job's reason

If the job's status is terminal but not "completed", the job's reason property provides additional hints about why the job was not completed successfully. For more details, see Job failure reasons.