forked from github/plane
b2ac7b9ac6
* chore: added getLayout method to api tokens pages * revamp: api tokens workflow * chore: add title validation and update types * chore: minor UI updates * chore: update route
42 lines
1.3 KiB
TypeScript
42 lines
1.3 KiB
TypeScript
import { API_BASE_URL } from "helpers/common.helper";
|
|
import { APIService } from "./api.service";
|
|
import { IApiToken } from "types/api_token";
|
|
|
|
export class APITokenService extends APIService {
|
|
constructor() {
|
|
super(API_BASE_URL);
|
|
}
|
|
|
|
async getApiTokens(workspaceSlug: string): Promise<IApiToken[]> {
|
|
return this.get(`/api/workspaces/${workspaceSlug}/api-tokens/`)
|
|
.then((response) => response?.data)
|
|
.catch((error) => {
|
|
throw error?.response?.data;
|
|
});
|
|
}
|
|
|
|
async retrieveApiToken(workspaceSlug: string, tokenId: String): Promise<IApiToken> {
|
|
return this.get(`/api/workspaces/${workspaceSlug}/api-tokens/${tokenId}`)
|
|
.then((response) => response?.data)
|
|
.catch((error) => {
|
|
throw error?.response?.data;
|
|
});
|
|
}
|
|
|
|
async createApiToken(workspaceSlug: string, data: Partial<IApiToken>): Promise<IApiToken> {
|
|
return this.post(`/api/workspaces/${workspaceSlug}/api-tokens/`, data)
|
|
.then((response) => response?.data)
|
|
.catch((error) => {
|
|
throw error?.response?.data;
|
|
});
|
|
}
|
|
|
|
async deleteApiToken(workspaceSlug: string, tokenId: String): Promise<IApiToken> {
|
|
return this.delete(`/api/workspaces/${workspaceSlug}/api-tokens/${tokenId}`)
|
|
.then((response) => response?.data)
|
|
.catch((error) => {
|
|
throw error?.response?.data;
|
|
});
|
|
}
|
|
}
|