Requiply
TypeScript SDK

Звіти

Отримуйте звіти про дохід, бронювання, завантаженість, клієнтів, баланси, прострочення та майбутні бронювання.

Усі ресурси звітів потребують секретного ключа в довіреному серверному коді. Обʼєкти параметрів звітів необовʼязкові, а кожен метод також приймає параметри запиту останнім аргументом.

reports.revenue()

reports.revenue(
  params?: RevenueReportParams,
  options?: RequiplyRequestOptions,
): Promise<RevenueReportResponse>

Параметри: dateFrom, dateTo, dateField (startDate, createdAt або endDate), groupBy (day, week, month, category або status), excludeCancelled.

const report = await requiply.reports.revenue({
  dateFrom: '2026-07-01',
  dateTo: '2026-07-31',
  groupBy: 'week',
  excludeCancelled: true,
});

Повертає валюту, застосовані фільтри, підсумки, рядки розбивки та необовʼязкові notes.

reports.bookingsSummary()

reports.bookingsSummary(
  params?: BookingsSummaryParams,
  options?: RequiplyRequestOptions,
): Promise<BookingsSummaryResponse>

Параметри: dateFrom, dateTo, dateField. Повертає підсумки бронювань і доходу, частку скасувань і завершень, показники часу та розбивку за статусами. Середній час до початку оренди й середня тривалість можуть бути null; ідентифікатори статусів можуть бути null.

const summary = await requiply.reports.bookingsSummary({
  dateFrom: '2026-07-01',
  dateTo: '2026-07-31',
});

reports.utilization()

reports.utilization(
  params?: UtilizationReportParams,
  options?: RequiplyRequestOptions,
): Promise<UtilizationReportResponse>

Параметри: dateFrom, dateTo, groupBy (overall, itemGroup або category), sort (highest або lowest), limit. Докладна breakdown необовʼязкова.

const utilization = await requiply.reports.utilization({
  groupBy: 'itemGroup',
  sort: 'highest',
  limit: 10,
});

reports.topItems()

reports.topItems(
  params?: TopItemsReportParams,
  options?: RequiplyRequestOptions,
): Promise<TopItemsReportResponse>

Параметри: dateFrom, dateTo, rankBy (revenue, bookings, rentedDays або unitsRented), limit. Ідентифікатори та назви категорій у записах можуть бути null.

const topItems = await requiply.reports.topItems({ rankBy: 'revenue', limit: 10 });

reports.topClients()

reports.topClients(
  params?: TopClientsReportParams,
  options?: RequiplyRequestOptions,
): Promise<TopClientsReportResponse>

Параметри: dateFrom, dateTo, rankBy (spend або bookings), excludeCancelled, limit. Контактні дані та імена клієнтів можуть бути null.

const topClients = await requiply.reports.topClients({ rankBy: 'spend', limit: 10 });

reports.outstanding()

reports.outstanding(
  params?: OutstandingReportParams,
  options?: RequiplyRequestOptions,
): Promise<OutstandingReportResponse>

Параметри: dateFrom, dateTo, minBalance, limit. Повертає підсумки виставленого, сплаченого й заборгованого, а також бронювання, упорядковані за балансом. Поля номера бронювання в організації, статусу та клієнта можуть бути null.

const outstanding = await requiply.reports.outstanding({ minBalance: 1, limit: 25 });

reports.overdue()

reports.overdue(
  params?: OverdueReportParams,
  options?: RequiplyRequestOptions,
): Promise<OverdueReportResponse>

Параметри: limit і minDaysOverdue. Повертає мітку часу asOf, підсумки за рівнем серйозності та записи, у яких severity дорівнює info, warning або critical. Поля бронювання, статусу, клієнта та загальної вартості можуть бути null.

Кожен запис також містить stillOutUnits: список { itemId, sku } одиниць, які після підтвердженого часткового повернення залишилися в клієнта й досі не повернулися. Список порожній, коли жодного повернення не підтверджено.

const overdue = await requiply.reports.overdue({ minDaysOverdue: 2, limit: 25 });

reports.pipeline()

reports.pipeline(
  params?: PipelineReportParams,
  options?: RequiplyRequestOptions,
): Promise<PipelineReportResponse>

Параметри: horizonDays і groupBy (day, week або month). Повертає застосоване вікно звіту, підсумки майбутніх бронювань і доходу, а також часові проміжки.

const pipeline = await requiply.reports.pipeline({
  horizonDays: 90,
  groupBy: 'month',
});
Copyright © 2026