Log Execution Message APIs

The Log Execution Message APIs enable management and interaction with execution log messages generated during RPA job runs. These messages are created by the Log Execution Message activity in RPA Studio and are securely stored within the RPA platform.

Note: The custom execution log response returns run-level information, such as the job, process, version, and run mode, once for the entire run. Each log entry contains only information that is specific to that entry. This structure reduces duplicate data and response size while preserving all information returned by the API.

The metadata section includes information such as the job instance ID, job name, process name, process version, creator, runtime version, and flow run mode. The messages collection includes information specific to each log entry, including the log type, message text, section name, XAML file, sequence number, activity ID, activity name, and creation timestamp.

The Log Execution Message APIs support these operations:

  • Save new log messages
  • Retrieve log messages for a specific job instance
  • Retrieve a log message by ID
  • Update log messages
  • Save multiple log messages in a single request
  • Retrieve a consolidated view of all log messages for a job instance
  • Search log messages using filters
  • Download all log messages for a job instance

These Log Execution Message APIs are available:

Method Endpoint Description
POST /api/v1/rpa/logexecution/message/save Saves a new log execution message for RPA job tracking. The message content is encrypted before storage.
GET /api/v1/rpa/logexecution/messages/{jobInstanceId} Retrieves all log execution messages for a specific job instance. Returned messages are decrypted.
GET /api/v1/rpa/logexecution/message/{messageId} Retrieves a single log execution message by a unique integer ID. Returns 404 if the message does not exist.
POST /api/v1/rpa/logexecution/message/save/bulk Saves a batch of log execution messages in a single request. Fields that apply to the whole job are provided once, and the individual messages are provided in a list.
GET /api/v1/rpa/logexecution/consolidate/messages/{jobInstanceId} Retrieves all log execution messages for a job instance as a single consolidated response. The execution metadata is returned once and each log record contains only its entry-specific details.
POST /api/v1/rpa/logexecution/messages/search Searches log execution messages using optional filters such as job name, process name, process version, log type, section name, sequence name, activity name, flow run mode, date range, and job instance status. Results are paginated.
GET /api/v1/rpa/logexecution/messages/{jobInstanceId}/download Downloads all log execution messages for a job instance as a streamed JSON file. The file is returned as an attachment named custom-logs-<jobInstanceId>.json.
PUT /api/v1/rpa/logexecution/mes-sage/{messageId} Updates the message content of an existing log execution message identified by the ID. Only the message field is updated; all other fields remain unchanged. The updated content is encrypted before storage. Returns 404 if the message does not exist.

The GET and PUT endpoints that use messageId are useful for retrieving or modifying a specific log entry without retrieving the entire job log history. All API endpoints follow standard RPA authentication and multi-tenancy patterns and require the appropriate authorization headers.