mirror of
https://github.com/awatertrevi/infisical.git
synced 2026-10-05 00:26:24 +00:00
Fix: Made API endpoints more REST compliant
This commit is contained in:
@@ -59,7 +59,7 @@ export const registerAccessApprovalPolicyRouter = async (server: FastifyZodProvi
|
|||||||
},
|
},
|
||||||
onRequest: verifyAuth([AuthMode.JWT]),
|
onRequest: verifyAuth([AuthMode.JWT]),
|
||||||
handler: async (req) => {
|
handler: async (req) => {
|
||||||
const approvals = await server.services.accessApprovalPolicy.getAccessApprovalPolicyByProjectId({
|
const approvals = await server.services.accessApprovalPolicy.getAccessApprovalPolicyByProjectSlug({
|
||||||
actor: req.permission.type,
|
actor: req.permission.type,
|
||||||
actorId: req.permission.id,
|
actorId: req.permission.id,
|
||||||
actorAuthMethod: req.permission.authMethod,
|
actorAuthMethod: req.permission.authMethod,
|
||||||
@@ -71,7 +71,7 @@ export const registerAccessApprovalPolicyRouter = async (server: FastifyZodProvi
|
|||||||
});
|
});
|
||||||
|
|
||||||
server.route({
|
server.route({
|
||||||
url: "/policy-count",
|
url: "/count",
|
||||||
method: "GET",
|
method: "GET",
|
||||||
schema: {
|
schema: {
|
||||||
querystring: z.object({
|
querystring: z.object({
|
||||||
@@ -80,14 +80,14 @@ export const registerAccessApprovalPolicyRouter = async (server: FastifyZodProvi
|
|||||||
}),
|
}),
|
||||||
response: {
|
response: {
|
||||||
200: z.object({
|
200: z.object({
|
||||||
policyCount: z.number()
|
count: z.number()
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
onRequest: verifyAuth([AuthMode.JWT]),
|
onRequest: verifyAuth([AuthMode.JWT]),
|
||||||
handler: async (req) => {
|
handler: async (req) => {
|
||||||
const { policyCount } = await server.services.accessApprovalPolicy.getAccessPolicyCountByEnvSlug({
|
const { count } = await server.services.accessApprovalPolicy.getAccessPolicyCountByEnvSlug({
|
||||||
actor: req.permission.type,
|
actor: req.permission.type,
|
||||||
actorId: req.permission.id,
|
actorId: req.permission.id,
|
||||||
actorAuthMethod: req.permission.authMethod,
|
actorAuthMethod: req.permission.authMethod,
|
||||||
@@ -95,7 +95,7 @@ export const registerAccessApprovalPolicyRouter = async (server: FastifyZodProvi
|
|||||||
actorOrgId: req.permission.orgId,
|
actorOrgId: req.permission.orgId,
|
||||||
envSlug: req.query.envSlug
|
envSlug: req.query.envSlug
|
||||||
});
|
});
|
||||||
return { policyCount };
|
return { count };
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -43,8 +43,8 @@ export const registerV1EERoutes = async (server: FastifyZodProvider) => {
|
|||||||
prefix: "/secret-rotation-providers"
|
prefix: "/secret-rotation-providers"
|
||||||
});
|
});
|
||||||
|
|
||||||
await server.register(registerAccessApprovalPolicyRouter, { prefix: "/access-approvals" });
|
await server.register(registerAccessApprovalPolicyRouter, { prefix: "/access-approvals/policies" });
|
||||||
await server.register(registerAccessApprovalRequestRouter, { prefix: "/access-approval-requests" });
|
await server.register(registerAccessApprovalRequestRouter, { prefix: "/access-approvals/requests" });
|
||||||
|
|
||||||
await server.register(
|
await server.register(
|
||||||
async (dynamicSecretRouter) => {
|
async (dynamicSecretRouter) => {
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ export const useCreateAccessApprovalPolicy = () => {
|
|||||||
|
|
||||||
return useMutation<{}, {}, TCreateAccessPolicyDTO>({
|
return useMutation<{}, {}, TCreateAccessPolicyDTO>({
|
||||||
mutationFn: async ({ environment, projectSlug, approvals, approvers, name, secretPath }) => {
|
mutationFn: async ({ environment, projectSlug, approvals, approvers, name, secretPath }) => {
|
||||||
const { data } = await apiRequest.post("/api/v1/access-approvals", {
|
const { data } = await apiRequest.post("/api/v1/access-approvals/policies", {
|
||||||
environment,
|
environment,
|
||||||
projectSlug,
|
projectSlug,
|
||||||
approvals,
|
approvals,
|
||||||
@@ -38,7 +38,7 @@ export const useUpdateAccessApprovalPolicy = () => {
|
|||||||
|
|
||||||
return useMutation<{}, {}, TUpdateAccessPolicyDTO>({
|
return useMutation<{}, {}, TUpdateAccessPolicyDTO>({
|
||||||
mutationFn: async ({ id, approvers, approvals, name, secretPath }) => {
|
mutationFn: async ({ id, approvers, approvals, name, secretPath }) => {
|
||||||
const { data } = await apiRequest.patch(`/api/v1/access-approvals/${id}`, {
|
const { data } = await apiRequest.patch(`/api/v1/access-approvals/policies/${id}`, {
|
||||||
approvals,
|
approvals,
|
||||||
approvers,
|
approvers,
|
||||||
secretPath,
|
secretPath,
|
||||||
@@ -57,7 +57,7 @@ export const useDeleteAccessApprovalPolicy = () => {
|
|||||||
|
|
||||||
return useMutation<{}, {}, TDeleteSecretPolicyDTO>({
|
return useMutation<{}, {}, TDeleteSecretPolicyDTO>({
|
||||||
mutationFn: async ({ id }) => {
|
mutationFn: async ({ id }) => {
|
||||||
const { data } = await apiRequest.delete(`/api/v1/access-approvals/${id}`);
|
const { data } = await apiRequest.delete(`/api/v1/access-approvals/policies/${id}`);
|
||||||
return data;
|
return data;
|
||||||
},
|
},
|
||||||
onSuccess: (_, { projectSlug }) => {
|
onSuccess: (_, { projectSlug }) => {
|
||||||
@@ -71,7 +71,7 @@ export const useCreateAccessRequest = () => {
|
|||||||
return useMutation<{}, {}, TCreateAccessRequestDTO>({
|
return useMutation<{}, {}, TCreateAccessRequestDTO>({
|
||||||
mutationFn: async ({ projectSlug, ...request }) => {
|
mutationFn: async ({ projectSlug, ...request }) => {
|
||||||
const { data } = await apiRequest.post<TAccessApproval>(
|
const { data } = await apiRequest.post<TAccessApproval>(
|
||||||
"/api/v1/access-approval-requests",
|
"/api/v1/access-approvals/requests",
|
||||||
{
|
{
|
||||||
...request,
|
...request,
|
||||||
permissions: request.permissions ? packRules(request.permissions) : undefined
|
permissions: request.permissions ? packRules(request.permissions) : undefined
|
||||||
@@ -106,7 +106,7 @@ export const useReviewAccessRequest = () => {
|
|||||||
>({
|
>({
|
||||||
mutationFn: async ({ requestId, status }) => {
|
mutationFn: async ({ requestId, status }) => {
|
||||||
const { data } = await apiRequest.post(
|
const { data } = await apiRequest.post(
|
||||||
`/api/v1/access-approval-requests/${requestId}/review`,
|
`/api/v1/access-approvals/requests/${requestId}/review`,
|
||||||
{
|
{
|
||||||
status
|
status
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ export const accessApprovalKeys = {
|
|||||||
[{ workspaceId, environment }, "access-approval-policy"] as const,
|
[{ workspaceId, environment }, "access-approval-policy"] as const,
|
||||||
|
|
||||||
getAccessApprovalRequests: (projectSlug: string, envSlug?: string, requestedBy?: string) =>
|
getAccessApprovalRequests: (projectSlug: string, envSlug?: string, requestedBy?: string) =>
|
||||||
[{ projectSlug, envSlug, requestedBy }, "access-approval-requests"] as const,
|
[{ projectSlug, envSlug, requestedBy }, "access-approvals-requests"] as const,
|
||||||
getAccessApprovalRequestCount: (projectSlug: string) =>
|
getAccessApprovalRequestCount: (projectSlug: string) =>
|
||||||
[{ projectSlug }, "access-approval-request-count"] as const
|
[{ projectSlug }, "access-approval-request-count"] as const
|
||||||
};
|
};
|
||||||
@@ -28,13 +28,13 @@ export const fetchPolicyApprovalCount = async ({
|
|||||||
projectSlug,
|
projectSlug,
|
||||||
envSlug
|
envSlug
|
||||||
}: TGetAccessPolicyApprovalCountDTO) => {
|
}: TGetAccessPolicyApprovalCountDTO) => {
|
||||||
const { data } = await apiRequest.get<{ policyCount: number }>(
|
const { data } = await apiRequest.get<{ count: number }>(
|
||||||
"/api/v1/access-approvals/policy-count",
|
"/api/v1/access-approvals/policies/count",
|
||||||
{
|
{
|
||||||
params: { projectSlug, envSlug }
|
params: { projectSlug, envSlug }
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
return data.policyCount;
|
return data.count;
|
||||||
};
|
};
|
||||||
|
|
||||||
export const useGetAccessPolicyApprovalCount = ({
|
export const useGetAccessPolicyApprovalCount = ({
|
||||||
@@ -57,7 +57,7 @@ export const useGetAccessPolicyApprovalCount = ({
|
|||||||
|
|
||||||
const fetchApprovalPolicies = async ({ projectSlug }: TGetAccessApprovalRequestsDTO) => {
|
const fetchApprovalPolicies = async ({ projectSlug }: TGetAccessApprovalRequestsDTO) => {
|
||||||
const { data } = await apiRequest.get<{ approvals: TAccessApprovalPolicy[] }>(
|
const { data } = await apiRequest.get<{ approvals: TAccessApprovalPolicy[] }>(
|
||||||
"/api/v1/access-approvals",
|
"/api/v1/access-approvals/policies",
|
||||||
{ params: { projectSlug } }
|
{ params: { projectSlug } }
|
||||||
);
|
);
|
||||||
return data.approvals;
|
return data.approvals;
|
||||||
@@ -69,7 +69,7 @@ const fetchApprovalRequests = async ({
|
|||||||
authorProjectMembershipId
|
authorProjectMembershipId
|
||||||
}: TGetAccessApprovalRequestsDTO) => {
|
}: TGetAccessApprovalRequestsDTO) => {
|
||||||
const { data } = await apiRequest.get<{ requests: TAccessApprovalRequest[] }>(
|
const { data } = await apiRequest.get<{ requests: TAccessApprovalRequest[] }>(
|
||||||
"/api/v1/access-approval-requests",
|
"/api/v1/access-approvals/requests",
|
||||||
{ params: { projectSlug, envSlug, authorProjectMembershipId } }
|
{ params: { projectSlug, envSlug, authorProjectMembershipId } }
|
||||||
);
|
);
|
||||||
|
|
||||||
@@ -90,7 +90,7 @@ const fetchApprovalRequests = async ({
|
|||||||
|
|
||||||
const fetchAccessRequestsCount = async (projectSlug: string) => {
|
const fetchAccessRequestsCount = async (projectSlug: string) => {
|
||||||
const { data } = await apiRequest.get<TAccessRequestCount>(
|
const { data } = await apiRequest.get<TAccessRequestCount>(
|
||||||
"/api/v1/access-approval-requests/count",
|
"/api/v1/access-approvals/requests/count",
|
||||||
{ params: { projectSlug } }
|
{ params: { projectSlug } }
|
||||||
);
|
);
|
||||||
return data;
|
return data;
|
||||||
|
|||||||
Reference in New Issue
Block a user