Skip to content

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;
    };
  };
}