Skip to content

SekoiaXDR - add commands to make SOL queries - #45313

Closed
lvoloshyn-sekoia wants to merge 2 commits into
demisto:contrib/lvoloshyn-sekoia_sekoia_xdr_add_sol_queriesfrom
lvoloshyn-sekoia:sekoia_xdr_add_sol_queries
Closed

SekoiaXDR - add commands to make SOL queries#45313
lvoloshyn-sekoia wants to merge 2 commits into
demisto:contrib/lvoloshyn-sekoia_sekoia_xdr_add_sol_queriesfrom
lvoloshyn-sekoia:sekoia_xdr_add_sol_queries

Conversation

@lvoloshyn-sekoia

@lvoloshyn-sekoia lvoloshyn-sekoia commented Jul 31, 2026

Copy link
Copy Markdown

Contributing to Cortex XSOAR Content

Make sure to register your contribution by filling the contribution registration form

The Pull Request will be reviewed only after the contribution registration form is filled.

Status

  • In Progress
  • Ready
  • In Hold - (Reason for hold)

Related Issues

Copilot AI review requested due to automatic review settings July 31, 2026 14:27
@CLAassistant

Copy link
Copy Markdown

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Not ready to approve

It introduces user-facing bugs/inconsistencies (optional JSON arg parsing can break on empty values, jsonl downloads use a .jl extension, and community UUID context key is inconsistent between code/YAML/docs).

Once you've addressed the issues Copilot identified, you can request another Copilot review.

This review doesn't count toward merge requirements. Sign up for the private preview to control whether Copilot approvals count.

Pull request overview

This PR extends the SekoiaXDR integration pack by adding new commands for executing Sekoia SOL queries, checking their run status, and downloading results (including a convenience polling command), along with the related documentation, tests, and version bump.

Changes:

  • Added query execution/status/download commands and a combined polling command (sekoia-xdr-run-query) to the integration.
  • Updated integration docs/examples and added unit tests for the new commands.
  • Bumped pack version to 1.1.17 and added release notes.
File summaries
File Description
Packs/SekoiaXDR/ReleaseNotes/1_1_17.md Release notes for the new SOL query commands.
Packs/SekoiaXDR/pack_metadata.json Pack version bump to 1.1.17.
Packs/SekoiaXDR/Integrations/SekoiaXDR/SekoiaXDR.yml Declares the new commands/args/outputs in the integration YAML.
Packs/SekoiaXDR/Integrations/SekoiaXDR/SekoiaXDR.py Implements query execution, polling, and download logic.
Packs/SekoiaXDR/Integrations/SekoiaXDR/SekoiaXDR_test.py Adds unit tests covering the new commands.
Packs/SekoiaXDR/Integrations/SekoiaXDR/README.md Documents the new commands and their inputs/outputs.
Packs/SekoiaXDR/Integrations/SekoiaXDR/command_examples.txt Adds usage examples for the new commands.
Review details

Suppressed comments (4)

Packs/SekoiaXDR/Integrations/SekoiaXDR/SekoiaXDR.py:1713

  • Optional query_parameters parsing checks only for key presence ("query_parameters" in args). If the arg is present but empty (common for optional args), json.loads('') will raise and break polling execution.
    try:
        query_parameters = json.loads(args["query_parameters"]) if "query_parameters" in args else None

    except json.JSONDecodeError as e:
        raise DemistoException(f"query_parameters argument is not a valid JSON: {e}")

Packs/SekoiaXDR/Integrations/SekoiaXDR/SekoiaXDR.py:1740

  • When result_format is "jsonl", the file is currently saved with a .jl extension, which is inconsistent with the selected format and common tooling expectations (.jsonl).
    filename = "result.csv" if result_format == "csv" else "result.jl"

Packs/SekoiaXDR/Integrations/SekoiaXDR/SekoiaXDR.yml:1256

  • Typo in output description: "UUId" should be "UUID".
      description: Parent UUId.

Packs/SekoiaXDR/Integrations/SekoiaXDR/README.md:874

  • Typo in output description: "UUId" should be "UUID".
| SekoiaXDR.QueryRun.parent_uuid | unknown | Parent UUId. | 
  • Files reviewed: 7/7 changed files
  • Comments generated: 4
  • Review effort level: Lite

We're testing this review assessment. Please use 👍 or 👎 to tell us if it's correct.

Comment on lines +1626 to +1630
try:
query_parameters = json.loads(args["query_parameters"]) if "query_parameters" in args else None

except json.JSONDecodeError as e:
raise DemistoException(f"query_parameters argument is not a valid JSON: {e}")
if result_format not in ("jsonl", "csv"):
raise DemistoException("result_format should be either 'jsonl' or 'csv'")

filename = "result.csv" if result_format == "csv" else "result.jl"
description: Query run UUID.
required: true
outputs:
- contextPath: SekoiaXDR.QueryRun.community_id

| **Path** | **Type** | **Description** |
| --- | --- | --- |
| SekoiaXDR.QueryRun.community_id | unknown | Community UUID. |
@content-bot content-bot added Contribution Thank you! Contributions are always welcome! External PR Partner Support Level Indicates that the contribution is for Partner supported pack labels Jul 31, 2026
@content-bot
content-bot changed the base branch from master to contrib/lvoloshyn-sekoia_sekoia_xdr_add_sol_queries July 31, 2026 14:32
@content-bot
content-bot requested a review from kamalq97 July 31, 2026 14:32
@content-bot

Copy link
Copy Markdown
Contributor

Thank you for your contribution. Your generosity and caring are unrivaled! Make sure to register your contribution by filling the Contribution Registration form, so our content wizard @kamalq97 will know the proposed changes are ready to be reviewed.
For your convenience, here is a link to the contributions SLAs document.

@content-bot

Copy link
Copy Markdown
Contributor

Hi @lvoloshyn-sekoia, thanks for contributing to the XSOAR marketplace. To receive credit for your generous contribution please follow this link.

@content-bot

Copy link
Copy Markdown
Contributor

🤖 AI-Powered Code Review Available

Hi @kamalq97, you can leverage AI-powered code review to assist with this PR!

Available Commands:

  • @marketplace-ai-reviewer start review - Initiate a full AI code review
  • @marketplace-ai-reviewer re-review - Incremental review for new commits

@kamalq97 kamalq97 added the inprogress It means the PR is still on progress, and should not be merged even if the build is green or approve label Aug 2, 2026
@kamalq97

kamalq97 commented Aug 9, 2026

Copy link
Copy Markdown
Contributor

Hi @lvoloshyn-sekoia

Thank you for your contribution,

Could you please confirm the exact status of this PR? is it ready for review?

@kamalq97

Copy link
Copy Markdown
Contributor

Hi @lvoloshyn-sekoia,

Thank you for taking the time to contribute to our project!

Since this pull request has been in an "in progress" state without activity for the past two weeks, we are going to close it to help keep our queue manageable.

Please feel free to reopen this PR or submit a new one whenever you are ready to continue your work.

We look forward to reviewing it then!

@kamalq97 kamalq97 closed this Aug 13, 2026
@TOUFIKIzakarya

Copy link
Copy Markdown
Contributor

Hello @kamalq97,

Can you please reopen this PR, it's ready.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Contribution Thank you! Contributions are always welcome! External PR inprogress It means the PR is still on progress, and should not be merged even if the build is green or approve Partner Support Level Indicates that the contribution is for Partner supported pack

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants