Skip to main content

ProjectApiClient

Accessed via client.projects().

Methods

create

create(projectName: string): Promise<ProjectCredentialsResponse>

Creates a new project and returns its initial credentials, including the one-time rawSecret.

get

get(projectId: string): Promise<ProjectResponse>

list

list(page: number, size: number): Promise<PaginatedProjects>

updateStatus

updateStatus(projectId: string, status: ProjectStatus): Promise<ProjectResponse>

updateName

updateName(projectId: string, newName: string): Promise<ProjectResponse>

delete

delete(projectId: string): Promise<void>

rotateSecret

rotateSecret(projectId: string): Promise<ProjectCredentialsResponse>

rotateApiKey

rotateApiKey(projectId: string): Promise<Record<string, string>>

Types

ProjectResponse

interface ProjectResponse {
id: string;
name: string;
status: ProjectStatus;
createdAt: string;
}

ProjectCredentialsResponse

interface ProjectCredentialsResponse {
id: string;
name: string;
apiKey: string;
rawSecret: string;
message: string;
}

PaginatedProjects

interface PaginatedProjects {
content: ProjectResponse[];
totalPages: number;
totalElements: number;
}

ProjectStatus

enum ProjectStatus {
ACTIVE = 'ACTIVE',
SUSPENDED = 'SUSPENDED',
DISABLED = 'DISABLED',
}