The updateSlackPostMessageAction()
GraphQL mutation field is used to update a post-message Slack action
in LogScale.
For more information on Slack actions, see the
Action Type: Slack documentation page. You
may also want to look at the Actions
page for related information.
Below is the syntax for the
updateSlackPostMessageAction() mutation
field:
updateSlackPostMessageAction(
input : UpdatePostMessageSlackAction!
) : SlackPostMessageAction!
Below is an example of how this mutation field might be used:
Show:
Raw Mac OS or Linux (curl) Mac OS or Linux (curl) One-line Windows Cmd and curl Windows Powershell and curl Perl Python Node.js
Raw mutation {
updateSlackPostMessageAction( input :
{ viewName : "humio" ,
id : "abc123" ,
name : "my-slack-act" ,
apiToken : "AUamuZLYvOLGUeMablONDF37FbYIm7U" ,
channels : [ "#admin" ] ,
fields : [ { fieldName : "Events String" , value : "{events_str}" } ] ,
useProxy : false
} )
{ id }
}
Mac OS or Linux (curl) curl -v -X POST $YOUR_LOGSCALE_URL/graphql \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d @- << EOF
{"query" : "mutation {
updateSlackPostMessageAction(input:
{ viewName: \"humio\",
id: \"abc123\",
name: \"my-slack-act\",
apiToken: \"AUamuZLYvOLGUeMablONDF37FbYIm7U\",
channels: [\"#admin\"],
fields: [ {fieldName: \"Events String\", value: \"{events_str}\"} ],
useProxy: false
} )
{ id }
}"
}
EOF
Mac OS or Linux (curl) One-line curl -v -X POST $YOUR_LOGSCALE_URL/graphql \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d @- << EOF
{"query" : "mutation {
updateSlackPostMessageAction(input:
{ viewName: \"humio\",
id: \"abc123\",
name: \"my-slack-act\",
apiToken: \"AUamuZLYvOLGUeMablONDF37FbYIm7U\",
channels: [\"#admin\"],
fields: [ {fieldName: \"Events String\", value: \"{events_str}\"} ],
useProxy: false
} )
{ id }
}"
}
EOF
Windows Cmd and curl curl -v -X POST $YOUR_LOGSCALE_URL/graphql ^
-H "Authorization: Bearer $TOKEN" ^
-H "Content-Type: application/json" ^
-d @'{"query" : "mutation { ^
updateSlackPostMessageAction(input: ^
{ viewName: \"humio\", ^
id: \"abc123\", ^
name: \"my-slack-act\", ^
apiToken: \"AUamuZLYvOLGUeMablONDF37FbYIm7U\", ^
channels: [\"#admin\"], ^
fields: [ {fieldName: \"Events String\", value: \"{events_str}\"} ], ^
useProxy: false ^
} ) ^
{ id } ^
}" ^
} '
Windows Powershell and curl curl.exe -X POST
-H "Authorization: Bearer $TOKEN "
-H "Content-Type: application/json"
-d '{"query" : "mutation {
updateSlackPostMessageAction(input:
{ viewName: \"humio\",
id: \"abc123\",
name: \"my-slack-act\",
apiToken: \"AUamuZLYvOLGUeMablONDF37FbYIm7U\",
channels: [\"#admin\"],
fields: [ {fieldName: \"Events String\", value: \"{events_str}\"} ],
useProxy: false
} )
{ id }
}"
}'
"$YOUR_LOGSCALE_URL /graphql"
Perl
use HTTP::Request;
use LWP;
my $INGEST_TOKEN = "TOKEN" ;
my $uri = '$YOUR_LOGSCALE_URL/graphql' ;
my $json = '{"query" : "mutation {
updateSlackPostMessageAction(input:
{ viewName: \"humio\",
id: \"abc123\",
name: \"my-slack-act\",
apiToken: \"AUamuZLYvOLGUeMablONDF37FbYIm7U\",
channels: [\"#admin\"],
fields: [ {fieldName: \"Events String\", value: \"{events_str}\"} ],
useProxy: false
} )
{ id }
}"
}' ;
my $req = HTTP::Request->new("POST" , $uri );
$req->header("Authorization" => "Bearer $TOKEN" );
$req->header("Content-Type" => "application/json" );
$req->content( $json );
my $lwp = LWP::UserAgent->new;
my $result = $lwp->request( $req );
print $result->{"_content" },"\n" ;
Python
import requests
url = '$YOUR_LOGSCALE_URL/graphql'
mydata = r'''{"query" : "mutation {
updateSlackPostMessageAction(input:
{ viewName: \"humio\",
id: \"abc123\",
name: \"my-slack-act\",
apiToken: \"AUamuZLYvOLGUeMablONDF37FbYIm7U\",
channels: [\"#admin\"],
fields: [ {fieldName: \"Events String\", value: \"{events_str}\"} ],
useProxy: false
} )
{ id }
}"
}'''
resp = requests.post(url,
data = mydata,
headers = {
"Authorization" : "Bearer $TOKEN" ,
"Content-Type" : "application/json"
}
)
print (resp.text)
Node.js const https = require ('https' );
const data = JSON .stringify (
{"query" : "mutation {
updateSlackPostMessageAction(input:
{ viewName: \"humio\",
id: \"abc123\",
name: \"my-slack-act\",
apiToken: \"AUamuZLYvOLGUeMablONDF37FbYIm7U\",
channels: [\"#admin\"],
fields: [ {fieldName: \"Events String\", value: \"{events_str}\"} ],
useProxy: false
} )
{ id }
}"
}
);
const options = {
hostname : '$YOUR_LOGSCALE_URL/graphql' ,
path : '/graphql' ,
port : 443 ,
method : 'POST' ,
headers : {
'Content-Type' : 'application/json' ,
'Content-Length' : data.length ,
Authorization : 'BEARER ' + process.env .TOKEN ,
'User-Agent' : 'Node' ,
},
};
const req = https.request (options, (res ) => {
let data = '' ;
console .log (`statusCode: ${res.statusCode} ` );
res.on ('data' , (d ) => {
data += d;
});
res.on ('end' , () => {
console .log (JSON .parse (data).data );
});
});
req.on ('error' , (error ) => {
console .error (error);
});
req.write (data);
req.end ();
Example Responses Show:
Success (HTTP Response Code 200 OK)
Success (HTTP Response Code 200 OK) {
"data" : {
"updateSlackPostMessageAction" : {
"id" : "abc123"
}
}
}
For
UpdatePostMessageSlackAction ,
there are several parameters that may be given. Below is a list of
them along with a description of each:
Table: UpdatePostMessageSlackAction
Parameter Type Required Default Stability Description Some arguments may be required, as indicated in the Required column. For some fields, this column indicates that a result will always be returned for this column. Table last updated: Sep 23, 2024 apiToken
string yes The API token to authenticate with Slack. channels
[string] yes The list of Slack channels to message. fields
[SlackFieldEntryInput
] yes Fields to include within the Slack message. This can be templated with values from the result. See SlackFieldEntryInput
. id
string yes The unique identifier of the action. name
string yes The name of the action. useProxy
boolean yes Defines whether the action should use the configured proxy to make web requests. viewName
string yes The name of the view of the action.
The returned datatype
SlackPostMessageAction
also has several parameters. Below is a list of them along with a
description of each:
Table: SlackPostMessageAction
Parameter Type Required Default Stability Description Some arguments may be required, as indicated in the Required column. For some fields, this column indicates that a result will always be returned for this column. Table last updated: Mar 27, 2025 allowedActions
[AssetAction
] yes Preview
A list of allowed asset actions. See AssetAction
. This is a preview and subject to change. apiToken
string yes Long-Term
An API token to authenticate with Slack. channels
[string] yes Long-Term
A list of Slack channels to message. displayName
string yes Long-Term
The display name of the action. fields
[SlackFieldEntry
] yes Long-Term
The fields to include within the Slack message. Can be templated with values from the result See SlackFieldEntry
. id
string yes Long-Term
The unique identifier of the action. isAllowedToRun
boolean yes Long-Term
False if this type of action is disabled because of a security policy, true otherwise. name
string yes Long-Term
The name of the action. package
PackageInstallation
yes Long-Term
The package, if any, of which the action is part (see PackageInstallation
Table). packageId
VersionedPackageSpecifier
yes Long-Term
The unique identifier of the package. VersionedPackageSpecifier
is a scalar. requiresOrganizationOwnedQueriesPermissionToEdit
boolean yes Long-Term
True if this action is used by triggers, where the query is run by the organization. If true, then the OrganizationOwnedQueries
permission is required to edit the action. resource
string yes Short-Term
The resource identifier for the action. useProxy
boolean yes Long-Term
Whether the action should use the configured proxy to make web requests. yamlTemplate
yaml
yes Long-Term
A template that can be used to recreate the action.