workspace->apiTokens()->latest()->get(); return ApiKeyResource::collection($apiKeys); } public function store(StoreApiKeyRequest $request): JsonResponse { $result = CreateApiKey::execute($request->workspace, $request->validated()); return response()->json([ 'token' => new ApiKeyResource(data_get($result, 'token')), 'plain_token' => data_get($result, 'plain_token'), ], Response::HTTP_CREATED); } public function destroy(Request $request, ApiToken $apiToken): JsonResponse { if ($apiToken->workspace_id !== $request->workspace->id) { abort(Response::HTTP_NOT_FOUND); } DeleteApiKey::execute($apiToken); return response()->json(null, Response::HTTP_NO_CONTENT); } }