package com.example.myapp;
import com.unkey.unkeysdk.dto.GetAPIResponse;
@RestController
public class APIController {
private static IAPIService apiService = new APIService();
@GetMapping("/keys")
public ListKeysResponse listKeys(
@RequestParam String apiId,
@RequestBody(required = false) ListKeysRequest listKeyRquest,
@RequestHeader("Authorization") String authToken) {
return iapiService.listKeys(listKeyRquest, apiId, authToken);
}
}
The DTOs used in the code for a better understanding of request and response bodies.
public class ListKeysRequest {
private String apiId;
private Integer limit;
private Integer offset;
private String ownerId;
}
public class ListKeysResponse {
private List<KeyAttributes> keys;
private Integer total;
}
public class KeyAttributes {
private String id;
private String apiId;
private String workspaceId;
private String start;
private String name;
private String ownerId;
private Meta meta;
private Long createdAt;
private Long expires;
private Integer remaining;
private KeyRateLimit ratelimit;
}