Skip to content

ChecklistsResource

API reference for the Checklists resource.

Template Methods

listTemplates

List all checklist templates.

typescript
async listTemplates(): Promise<ChecklistTemplate[]>

getTemplate

Get a specific template.

typescript
async getTemplate(id: string): Promise<ChecklistTemplate>

createTemplate

Create a new template.

typescript
async createTemplate(data: CreateTemplateInput): Promise<ChecklistTemplate>

Parameters:

typescript
interface CreateTemplateInput {
  title: string;
  description?: string;
  standard?: string;
  standards?: string[];
  items: ChecklistItem[];
  isReusable?: boolean;
  isAssuranceTask?: boolean;
  badgeClass?: string;
  repeat?: {
    frequency?: string;
    interval?: number;
    startDate?: string;
    endDate?: string | null;
  };
  reviewDate?: string | null;
}

updateTemplate

Update a template.

typescript
async updateTemplate(id: string, data: Partial<CreateTemplateInput>): Promise<ChecklistTemplate>

deleteTemplate

Delete a template.

typescript
async deleteTemplate(id: string): Promise<void>

Checklist Methods

list

List all checklists.

typescript
async list(options?: { templateId?: string; status?: string }): Promise<Checklist[]>

get

Get a specific checklist.

typescript
async get(id: string): Promise<Checklist>

create

Create a new checklist.

typescript
async create(data: CreateChecklistInput): Promise<Checklist>

createFromTemplate

Create a checklist from a template.

typescript
async createFromTemplate(templateId: string): Promise<Checklist>

update

Update a checklist.

typescript
async update(id: string, data: UpdateChecklistInput): Promise<Checklist>

submit

Submit/complete a checklist.

typescript
async submit(id: string, data?: SubmitChecklistInput): Promise<Checklist>

Parameters:

typescript
interface SubmitChecklistInput {
  signature?: string;
  values?: Record<string, any>;
  findings?: any[];
}

delete

Delete a checklist.

typescript
async delete(id: string): Promise<void>

Types

ChecklistTemplate

typescript
interface ChecklistTemplate {
  id: string;
  title: string;
  description?: string;
  standard?: string;
  standards?: string[];
  items: ChecklistItem[];
  isReusable?: boolean;
  isAssuranceTask?: boolean;
  badgeClass?: string;
  repeat?: {
    frequency?: string;
    interval?: number;
    startDate?: string;
    endDate?: string | null;
  };
  reviewDate?: string | null;
  tenantId?: string;
  createdBy?: string;
  createdAt?: string;
  updatedAt?: string;
}

Checklist

typescript
interface Checklist {
  id: string;
  title: string;
  description?: string;
  templateId?: string;
  standard?: string;
  standards?: string[];
  items: ChecklistItem[];
  status: 'draft' | 'in-progress' | 'completed' | string;
  isAssuranceTask?: boolean;
  isReusable?: boolean;
  repeat?: {
    frequency?: string;
    interval?: number;
    startDate?: string;
    endDate?: string | null;
  };
  reviewDate?: string | null;
  tenantId?: string;
  createdBy?: string;
  createdAt?: string;
  updatedAt?: string;
  completedAt?: string | null;
  completedBy?: string | null;
  completionHistory?: Array<{
    completedAt: string;
    completedBy: string;
    values?: Record<string, any>;
    signature?: string;
    findings?: any[];
  }>;
  findings?: any[];
}

ChecklistItem

typescript
interface ChecklistItem {
  id?: string;
  title: string;
  description?: string;
  type?: string;
  required?: boolean;
  options?: string[];
}

Released under the MIT License.