@ExecuteOn(TaskExecutors.IO)
    @Delete(uri = "{key}")
    @Operation(tags = {"KV"}, summary = "Delete a key-value pair")
    public boolean delete(
        @Parameter(description = "The namespace id") @PathVariable String namespace,
        @Parameter(description = "The key") @PathVariable String key
    ) throws IOException, URISyntaxException, ResourceExpiredException {
        return kvStore(namespace).delete(key);
    }
@Test
    void delete() throws IOException {
        storageInterface.put(
            null,
            toKVUri(NAMESPACE, "my-key"),
            new StorageObject(
                Map.of("expirationDate", Instant.now().plus(Duration.ofMinutes(5)).toString()),
                new ByteArrayInputStream("\"content\"".getBytes())
            )
        );

        assertThat(storageInterface.exists(null, toKVUri(NAMESPACE, "my-key")), is(true));
        client.toBlocking().exchange(HttpRequest.DELETE("/api/v1/namespaces/" + NAMESPACE + "/kv/my-key"));

        assertThat(storageInterface.exists(null, toKVUri(NAMESPACE, "my-key")), is(false));
    }