curl --request DELETE \
--url 'https://api.noresponse.org/v1/assessments/asm_01JA2Z8K6Q4V7W9XBCDEFGHJKM' \
--header "Authorization: Bearer $NORESPONSE_API_KEY"
import { NoResponse } from "@noresponse/node";
const noResponse = new NoResponse({
apiKey: process.env["NORESPONSE_API_KEY"] ?? "",
});
async function run() {
const result = await noResponse.assessments.delete({
assessmentId: "asm_01JA2Z8K6Q4V7W9XBCDEFGHJKM",
});
console.log(result);
}
run();
from noresponse import NoResponse
import os
with NoResponse(
api_key=os.getenv("NORESPONSE_API_KEY", ""),
) as no_response:
res = no_response.assessments.delete(assessment_id="asm_01JA2Z8K6Q4V7W9XBCDEFGHJKM")
# Handle response
print(res)
package main
import(
"context"
"os"
noresponse "github.com/noresponsehq/go/v5"
"log"
)
func main() {
ctx := context.Background()
s := noresponse.New(
noresponse.WithSecurity(os.Getenv("NORESPONSE_API_KEY")),
)
res, err := s.Assessments.Delete(ctx, "asm_01JA2Z8K6Q4V7W9XBCDEFGHJKM")
if err != nil {
log.Fatal(err)
}
if res != nil {
// handle response
}
}
package hello.world;
import java.lang.Exception;
import org.noresponse.NoResponse;
import org.noresponse.models.errors.AuthenticationException;
import org.noresponse.models.errors.BadRequestException;
import org.noresponse.models.errors.ConflictException;
import org.noresponse.models.errors.NotFoundException;
import org.noresponse.models.errors.PermissionDeniedException;
import org.noresponse.models.errors.RateLimitException;
import org.noresponse.models.operations.DeleteAssessmentResponse;
public class Application {
public static void main(String[] args) throws Exception {
NoResponse sdk = NoResponse.builder()
.apiKey(System.getenv().getOrDefault("NORESPONSE_API_KEY", ""))
.build();
DeleteAssessmentResponse res = sdk.assessments().delete()
.assessmentId("asm_01JA2Z8K6Q4V7W9XBCDEFGHJKM")
.call();
if (res.assessmentDeletion().isPresent()) {
System.out.println(res.assessmentDeletion().get());
}
}
}
using NoResponse;
using NoResponse.Models.Shared;
using System;
var sdk = new NoResponseClient(apiKey: Environment.GetEnvironmentVariable("NORESPONSE_API_KEY"));
var res = await sdk.Assessments.DeleteAsync(assessmentId: "asm_01JA2Z8K6Q4V7W9XBCDEFGHJKM");
// handle response
<?php
declare(strict_types=1);
require 'vendor/autoload.php';
use NoResponse;
$sdk = NoResponse\NoResponseClient::builder()
->setSecurity(
getenv('NORESPONSE_API_KEY') ?: ''
)
->build();
$response = $sdk->assessments->delete(
assessmentId: 'asm_01JA2Z8K6Q4V7W9XBCDEFGHJKM'
);
if ($response->assessmentDeletion !== null) {
// handle response
}
require 'noresponse'
Models = ::NoResponse::Models
s = ::NoResponse::NoResponseClient.new(
api_key: ENV.fetch('NORESPONSE_API_KEY', '')
)
res = s.assessments.delete(assessment_id: 'asm_01JA2Z8K6Q4V7W9XBCDEFGHJKM')
unless res.nil?
# handle response
end
Delete an assessment
Deletes one of your assessments in the environment of your key, with its versions, evidence and outcomes. An abuse outcome you reported on it stops counting toward other assessments. Afterwards GET /v1/assessments/{assessment_id} answers 404 and the assessment leaves the account’s history.
The account is scored again from what remains. The answer names the account and current_assessment_id, the assessment its current risk now comes from; it is absent when the account has no assessment with a decision left, and GET /v1/accounts/{account_id} then answers 404.
An unknown, expired or already deleted assessment answers 404, so a repeat answers 404. No webhook event is sent; to erase a whole account, use DELETE /v1/accounts/{account_id}. Requires the history scope.
curl --request DELETE \
--url 'https://api.noresponse.org/v1/assessments/asm_01JA2Z8K6Q4V7W9XBCDEFGHJKM' \
--header "Authorization: Bearer $NORESPONSE_API_KEY"
import { NoResponse } from "@noresponse/node";
const noResponse = new NoResponse({
apiKey: process.env["NORESPONSE_API_KEY"] ?? "",
});
async function run() {
const result = await noResponse.assessments.delete({
assessmentId: "asm_01JA2Z8K6Q4V7W9XBCDEFGHJKM",
});
console.log(result);
}
run();
from noresponse import NoResponse
import os
with NoResponse(
api_key=os.getenv("NORESPONSE_API_KEY", ""),
) as no_response:
res = no_response.assessments.delete(assessment_id="asm_01JA2Z8K6Q4V7W9XBCDEFGHJKM")
# Handle response
print(res)
package main
import(
"context"
"os"
noresponse "github.com/noresponsehq/go/v5"
"log"
)
func main() {
ctx := context.Background()
s := noresponse.New(
noresponse.WithSecurity(os.Getenv("NORESPONSE_API_KEY")),
)
res, err := s.Assessments.Delete(ctx, "asm_01JA2Z8K6Q4V7W9XBCDEFGHJKM")
if err != nil {
log.Fatal(err)
}
if res != nil {
// handle response
}
}
package hello.world;
import java.lang.Exception;
import org.noresponse.NoResponse;
import org.noresponse.models.errors.AuthenticationException;
import org.noresponse.models.errors.BadRequestException;
import org.noresponse.models.errors.ConflictException;
import org.noresponse.models.errors.NotFoundException;
import org.noresponse.models.errors.PermissionDeniedException;
import org.noresponse.models.errors.RateLimitException;
import org.noresponse.models.operations.DeleteAssessmentResponse;
public class Application {
public static void main(String[] args) throws Exception {
NoResponse sdk = NoResponse.builder()
.apiKey(System.getenv().getOrDefault("NORESPONSE_API_KEY", ""))
.build();
DeleteAssessmentResponse res = sdk.assessments().delete()
.assessmentId("asm_01JA2Z8K6Q4V7W9XBCDEFGHJKM")
.call();
if (res.assessmentDeletion().isPresent()) {
System.out.println(res.assessmentDeletion().get());
}
}
}
using NoResponse;
using NoResponse.Models.Shared;
using System;
var sdk = new NoResponseClient(apiKey: Environment.GetEnvironmentVariable("NORESPONSE_API_KEY"));
var res = await sdk.Assessments.DeleteAsync(assessmentId: "asm_01JA2Z8K6Q4V7W9XBCDEFGHJKM");
// handle response
<?php
declare(strict_types=1);
require 'vendor/autoload.php';
use NoResponse;
$sdk = NoResponse\NoResponseClient::builder()
->setSecurity(
getenv('NORESPONSE_API_KEY') ?: ''
)
->build();
$response = $sdk->assessments->delete(
assessmentId: 'asm_01JA2Z8K6Q4V7W9XBCDEFGHJKM'
);
if ($response->assessmentDeletion !== null) {
// handle response
}
require 'noresponse'
Models = ::NoResponse::Models
s = ::NoResponse::NoResponseClient.new(
api_key: ENV.fetch('NORESPONSE_API_KEY', '')
)
res = s.assessments.delete(assessment_id: 'asm_01JA2Z8K6Q4V7W9XBCDEFGHJKM')
unless res.nil?
# handle response
end
Authorizations
Your API key, sent as Authorization: Bearer <key>. A key is nrk_live_ or nrk_test_, a 26-character key id, _ and a 43-character secret. A key sees only its own environment's data.
Each key has one or more scopes: assess creates and reads assessments, records outcomes and reports key usage; history reads assessments, an account's current risk and an account's history, and erases an account; detailed adds the detailed view; webhooks registers, tests, rotates and deletes webhook endpoints; integrations registers and manages hosted provider integrations. A missing, unknown, revoked or expired key answers 401. A valid key without the scope an operation needs answers 403.
Path Parameters
Path segment, matched case-sensitively. A value that does not match the assessment_id shape answers 404, not 400. Opaque, server-assigned assessment id: 'asm_' and a 26-character Crockford base32 ULID. Unique within the workspace; another workspace's assessment id answers 404.
^asm_[0-9A-HJKMNP-TV-Z]{26}$Response
The assessment was deleted and its account scored again.
Body of the 200 answer to DELETE /v1/assessments/{assessment_id}: one of the calling workspace's assessments was deleted, with its versions, evidence, outcomes and the identity-graph marks its outcomes set. Afterwards GET /v1/assessments/{assessment_id} answers 404 and the assessment leaves the account's history. The account is scored again from what remains: account.current_assessment_id names the assessment GET /v1/accounts/{account_id} now serves its risk from, and is absent when the account has no assessment with a decision left. Deleting an assessment that is already gone answers 404.