floci-io/floci · error · AwsException

RequestTokenNotFoundException

RequestTokenNotFoundException

Error message

RequestToken is required.

What it means

Error "RequestToken is required." thrown in floci-io/floci.

Source

Thrown at src/main/java/io/github/hectorvent/floci/services/cloudcontrol/CloudControlJsonHandler.java:88

     * InvalidRequestException is the code Cloud Control declares for a malformed request, so it is
     * what an SDK maps onto a typed exception. ValidationException is not in the service model.
     */
    private String required(JsonNode request, String field) {
        String value = request.path(field).asText(null);
        if (value == null || value.isBlank()) {
            throw new AwsException("InvalidRequestException", field + " is required.", 400);
        }
        return value;
    }

    /**
     * GetResourceRequestStatus declares only RequestTokenNotFoundException, so an absent token
     * reports that rather than the InvalidRequestException the other operations declare.
     */
    private String requestToken(JsonNode request) {
        String value = request.path("RequestToken").asText(null);
        if (value == null || value.isBlank()) {
            throw new AwsException("RequestTokenNotFoundException", "RequestToken is required.", 404);
        }
        return value;
    }

    private Response listResources(JsonNode request, String region) {
        String typeName = required(request, "TypeName");
        ObjectNode response = mapper.createObjectNode();
        response.put("TypeName", typeName);
        ArrayNode resources = response.putArray("ResourceDescriptions");
        for (CloudControlService.ResourceDescription resource : service.listResources(region, typeName)) {
            ObjectNode node = mapper.createObjectNode();
            node.put("Identifier", resource.identifier());
            node.put("Properties", resource.properties());
            resources.add(node);
        }
        return Response.ok(response).build();
    }
}

View on GitHub (pinned to 62ff490619)

Solutions

  1. Provide a unique RequestToken (client token) for the operation.

When it happens

Trigger: Thrown at src/main/java/io/github/hectorvent/floci/services/cloudcontrol/CloudControlJsonHandler.java:88 when the library encounters an invalid state.

Common situations: Occurs when a CloudControl mutating request omits RequestToken. Provide a unique client request token for idempotency.


AI-assisted analysis of floci-io/floci@62ff490619 (2026-08-14). Data as JSON: /api/errors/e46268d09712eecf. Report an issue: GitHub.