Skip to content

createCaseRule

MUTATIONcreateCaseRule

Cases GraphQL API · Mutations

createCaseRule accepts input to create a new auto-case rule.

Arguments

Argument Type Description
input CreateCaseRuleInput!

Returns

CaseRule

Request samples

curl -X POST "https://api.taegis.sophos.com/graphql" -H "Authorization: Bearer <access-token>" -H "X-Tenant-ID: <tenant-id>" -H "Content-Type: application/json" -d "{
  \"query\": \"mutation CreateCaseRule(\$input: CreateCaseRuleInput!) { createCaseRule(input: \$input) { id createdById createdBySubject { id } createdAt updatedById updatedBySubject { id } updatedAt tenantId name title description tags } }\",
  \"variables\": {
    \"input\": {
      \"name\": \"<name>\",
      \"type\": \"STATIC\",
      \"order\": 0,
      \"state\": \"ENABLED\",
      \"filter\": \"<filter>\",
      \"skipDetectionPrioritization\": true,
      \"templateId\": \"<templateId>\"
    }
  }
}"

import requests

response = requests.post(
    "https://api.taegis.sophos.com/graphql",
    headers={
        "Authorization": "Bearer <access-token>",
        "X-Tenant-ID": "<tenant-id>",
        "Content-Type": "application/json",
    },
    json={   'query': 'mutation CreateCaseRule($input: CreateCaseRuleInput!) { '
             'createCaseRule(input: $input) { id createdById createdBySubject '
             '{ id } createdAt updatedById updatedBySubject { id } updatedAt '
             'tenantId name title description tags } }',
    'variables': {   'input': {   'name': '<name>',
                                  'type': 'STATIC',
                                  'order': 0,
                                  'state': 'ENABLED',
                                  'filter': '<filter>',
                                  'skipDetectionPrioritization': True,
                                  'templateId': '<templateId>'}}},
)
print(response.json())

$headers = @{
    "Authorization" = "Bearer <access-token>"
    "X-Tenant-ID" = "<tenant-id>"
    "Content-Type" = "application/json"
}
$body = '{
  "query": "mutation CreateCaseRule($input: CreateCaseRuleInput!) { createCaseRule(input: $input) { id createdById createdBySubject { id } createdAt updatedById updatedBySubject { id } updatedAt tenantId name title description tags } }",
  "variables": {
    "input": {
      "name": "<name>",
      "type": "STATIC",
      "order": 0,
      "state": "ENABLED",
      "filter": "<filter>",
      "skipDetectionPrioritization": true,
      "templateId": "<templateId>"
    }
  }
}'
Invoke-RestMethod -Method POST -Uri "https://api.taegis.sophos.com/graphql" -Headers $headers -Body $body -ContentType "application/json"

package main

import (
    "fmt"
    "io"
    "net/http"
    "strings"
)

func main() {
    req, err := http.NewRequest("POST", "https://api.taegis.sophos.com/graphql", strings.NewReader(`{
  "query": "mutation CreateCaseRule($input: CreateCaseRuleInput!) { createCaseRule(input: $input) { id createdById createdBySubject { id } createdAt updatedById updatedBySubject { id } updatedAt tenantId name title description tags } }",
  "variables": {
    "input": {
      "name": "<name>",
      "type": "STATIC",
      "order": 0,
      "state": "ENABLED",
      "filter": "<filter>",
      "skipDetectionPrioritization": true,
      "templateId": "<templateId>"
    }
  }
}`))
    if err != nil {
        panic(err)
    }
    req.Header.Set("Authorization", "Bearer <access-token>")
    req.Header.Set("X-Tenant-ID", "<tenant-id>")
    req.Header.Set("Content-Type", "application/json")

    resp, err := http.DefaultClient.Do(req)
    if err != nil {
        panic(err)
    }
    defer resp.Body.Close()

    body, _ := io.ReadAll(resp.Body)
    fmt.Println(string(body))
}

const response = await fetch("https://api.taegis.sophos.com/graphql", {
  method: "POST",
  headers: {
    "Authorization": "Bearer <access-token>",
    "X-Tenant-ID": "<tenant-id>",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
  "query": "mutation CreateCaseRule($input: CreateCaseRuleInput!) { createCaseRule(input: $input) { id createdById createdBySubject { id } createdAt updatedById updatedBySubject { id } updatedAt tenantId name title description tags } }",
  "variables": {
    "input": {
      "name": "<name>",
      "type": "STATIC",
      "order": 0,
      "state": "ENABLED",
      "filter": "<filter>",
      "skipDetectionPrioritization": true,
      "templateId": "<templateId>"
    }
  }
}),
});
const data = await response.json();
console.log(data);