Console bootstrap endpoints
1 endpoint at https://api.vaif.studio, generated from the API's OpenAPI document. The REST API page covers authentication, and All endpoints lists every group.
GET /bootstrap/
Response 200 (application/json)
{
ok: boolean;
user: any;
orgs: any[];
projects: {
id: string;
orgId: string;
name: string;
slug: string;
description: null | string;
regionKey: null | string;
defaultEnvironment: null | string;
promotionOrder: string[];
timezone: null | string;
features: any;
deactivatedAt: null | string (date-time);
deactivationReason: null | string;
lastActivityAt: string (date-time);
sleepWarningSentAt: null | string (date-time);
sleptAt: null | string (date-time);
frontendAnswer: null | "backend_only" | "bolt" | "cursor_claude_code" | "hand_written" | "lovable" | "not_yet" | "v0";
frontendAnsweredAt: null | string (date-time);
frontendPromptedAt: null | string (date-time);
deletedAt: null | string (date-time);
createdAt: string (date-time);
updatedAt: string (date-time);
}[];
entitlements: null | {
plan: "agency" | "enterprise" | "entry" | "entry_plus" | "free" | "pro" | "starter" | "studio_plus";
status: string;
limits: {
projectsMax: number;
apiRequestsMonthly: number;
storageGb: number;
functionInvocationsMonthly: number;
realtimeConnectionsMax: number;
realtimeMessagesMonthly: number;
aiCreditsMonthly: number;
databaseRowsMax: number;
teamMembersMax: number;
};
usage?: {
apiRequests: {
used: any;
limit: any;
percent: any;
};
storageBytes: {
used: any;
limit: any;
percent: any;
};
bandwidthBytes: {
used: any;
limit: any;
percent: any;
};
functionInvocations: {
used: any;
limit: any;
percent: any;
};
realtimeConnections: {
used: any;
limit: any;
percent: any;
};
realtimeMessages: {
used: any;
limit: any;
percent: any;
};
aiCredits: {
used: any;
limit: any;
percent: any;
};
databaseRows: {
used: any;
limit: any;
percent: any;
};
};
infrastructure: {
dedicatedDbEnabled: boolean;
dedicatedDbTiers: string[];
dedicatedStackEnabled: boolean;
dedicatedDbMaxStorageGb: number;
activeInstances: number;
includedTier: null | string;
};
aiModelTier: "enterprise" | "free" | "paid";
currentPeriodEnd?: null | string (date-time);
cancelAtPeriodEnd: boolean;
daysUntilReset?: number;
oauth?: {
providersMax: number;
currentCount: number;
};
};
}