Stability Level Long-Term

The deleteDashboardV3() GraphQL mutation is used delete a dashboard.

There are several other basic mutations related to dashboards. You can use the createDashboard() to create a new dashboard. You can use copyDashboard() to clone an existing dashboard, and updateDashboard() to make changes to a dashboard. You can use updateDashboard() to make many changes to a dashboard. The renameDashboard() mutation is used just to rename it. To get a list of dashboards, use the dashboardsPage() query.

To delete a dashboard using the UI, see Manage repository dashboards in the main documentation. For more information on dashboards, see the Dashboards documentation page.

Syntax

graphql
deleteDashboardV3(
      input: DeleteDashboard!
    ): boolean

For the input you'll have to specify the unique identifier of the dashboard and the view with which it's associated to make sure the correct one is deleted — in case you have two dashboards with the same name, but for different views.

There are no special returned datatypes for this mutation field, nothing to specify. It will return true if the dashboard was successfully deleted, and false if it could not be found.

Example

Raw
graphql
mutation {
  deleteDashboardV3( input: {
         id: "abc123",
         viewName: "humio"
  } )
}
Mac OS or Linux (curl)
shell
curl -v -X POST $YOUR_LOGSCALE_URL/graphql \
    -H "Authorization: Bearer $TOKEN" \
    -H "Content-Type: application/json" \
    -d @- << EOF
{"query" : "mutation {
  deleteDashboardV3( input: {
         id: \"abc123\",
         viewName: \"humio\"
  } )
}"
}
EOF
Mac OS or Linux (curl) One-line
shell
curl -v -X POST $YOUR_LOGSCALE_URL/graphql \
    -H "Authorization: Bearer $TOKEN" \
    -H "Content-Type: application/json" \
    -d @- << EOF
{"query" : "mutation {
  deleteDashboardV3( input: {
         id: \"abc123\",
         viewName: \"humio\"
  } )
}"
}
EOF
Windows Cmd and curl
shell
curl -v -X POST $YOUR_LOGSCALE_URL/graphql ^
    -H "Authorization: Bearer $TOKEN" ^
    -H "Content-Type: application/json" ^
    -d @'{"query" : "mutation { ^
  deleteDashboardV3( input: { ^
         id: \"abc123\", ^
         viewName: \"humio\" ^
  } ) ^
}" ^
} '
Windows Powershell and curl
powershell
curl.exe -X POST 
    -H "Authorization: Bearer $TOKEN"
    -H "Content-Type: application/json"
    -d '{"query" : "mutation {
  deleteDashboardV3( input: {
         id: \"abc123\",
         viewName: \"humio\"
  } )
}"
}'
    "$YOUR_LOGSCALE_URL/graphql"
Perl
perl
#!/usr/bin/perl

use HTTP::Request;
use LWP;

my $TOKEN = "TOKEN";

my $uri = '$YOUR_LOGSCALE_URL/graphql';

my $query = "mutation {
  deleteDashboardV3( input: {
         id: \"abc123\",
         viewName: \"humio\"
  } )
}";
$query =~ s/\n/ /g;
my $json = sprintf('{"query" : "%s"}',$query);
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
python
#! /usr/local/bin/python3

import requests

url = '$YOUR_LOGSCALE_URL/graphql'
mydata = r'''{"query" : "mutation {
  deleteDashboardV3( input: {
         id: \"abc123\",
         viewName: \"humio\"
  } )
}"
}'''

resp = requests.post(url,
                     data = mydata,
                     headers = {
   "Authorization" : "Bearer $TOKEN",
   "Content-Type" : "application/json"
}
)

print(resp.text)
Node.js
javascript
const https = require('https');

const data = JSON.stringify(
    {"query" : "mutation {
  deleteDashboardV3( input: {
         id: \"abc123\",
         viewName: \"humio\"
  } )
}"
}
);


const options = {
  hostname: '$YOUR_LOGSCALE_URL',
  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
Success (HTTP Response Code 200 OK)
json
{
  "data": {
    "deleteDashboardV3": true
  }
}

Given Datatype

For this input datatype, you would give the unique identifier of the dashboard to delete, and the name of the associated view. This is described in the table here:

Table: DeleteDashboard

ParameterTypeRequiredDefaultStabilityDescription
Some arguments may be required, as indicated in the Required column. For return datatypes, this indicates that you must specify which fields you want returned in the results.
Table last updated: Sep 23, 2025
idstringyes Long-TermThe unique identifier of the dashboard.
viewNameRepoOrViewNameyes Long-TermThe name of the view containing the dashboard. RepoOrViewName is a scalar.