أجسام الطلبات والاستجابات التي تستخدمها العمليات. والحقول الإلزامية مميّزة.
AbsenceDto
An absence.
| الحقل | النوع | الوصف |
createdAtإلزامي | string (date-time) | |
createdByإلزامي | CalendarUserRefDto | |
daysإلزامي | number (double) | Σ deductionByYear; for types that do not deduct, the planned workdays (information only). |
decidedAt | string (date-time) | null | |
decidedBy | CalendarUserRefDto | null | |
decisionNote | string | null | |
deductionByYearإلزامي | object | The balance deduction per year, e.g. {"2026": 3.5}; empty for types that do not deduct. |
endإلزامي | string (date-time) | |
endDateإلزامي | string (date) | |
endTime | string | null | |
half | string | null | |
idإلزامي | string (uuid) | |
note | string | null | |
permissionsإلزامي | AbsencePermissionsDto | |
startإلزامي | string (date-time) | UTC coverage start. |
startDateإلزامي | string (date) | |
startTime | string | null | |
statusإلزامي | string | |
timeZoneإلزامي | string | |
typeإلزامي | AbsenceTypeRefDto | |
unitإلزامي | string | |
updatedAtإلزامي | string (date-time) | |
userإلزامي | CalendarPersonDto | |
userIdإلزامي | string (uuid) | |
AbsencePage
GET /v1/absences.
| الحقل | النوع | الوصف |
itemsإلزامي | AbsenceDto[] | |
nextCursor | string | null | |
AbsencePermissionsDto
| الحقل | النوع | الوصف |
canApproveإلزامي | boolean | |
canCancelإلزامي | boolean | |
canEditإلزامي | boolean | |
AbsenceRequest
POST /v1/absences, PUT /v1/absences/{id} (the user never changes).
| الحقل | النوع | الوصف |
endDate | string (date) | null | |
endTime | string | null | |
half | string | null | am or pm for a half day. |
note | string | null | |
startDate | string (date) | null | |
startTime | string | null | Local HH:mm for hours. |
typeId | string (uuid) | null | |
unit | string | null | days, half_day or hours. |
userId | string (uuid) | null | null = the caller. |
AbsenceTypeRefDto
The absence's type as the absence shows it; name translated for a built-in type that was not renamed.
| الحقل | النوع | الوصف |
colorإلزامي | string | |
countsAsWorkedإلزامي | boolean | |
deductsFromBalanceإلزامي | boolean | |
idإلزامي | string (uuid) | |
key | string | null | |
nameإلزامي | string | |
paidإلزامي | boolean | |
timeEffectإلزامي | string | |
AcceptedDto
202 Accepted of a queued job.
| الحقل | النوع | الوصف |
acceptedإلزامي | boolean | Always true. |
AccessDto
What the person may see and manage (FAZ1 AccessDto; focus_contracts::access::policy).
| الحقل | النوع | الوصف |
assignableRolesإلزامي | string[] | |
canManageCompanySettingsإلزامي | boolean | |
canManageTeamsإلزامي | boolean | |
canManageUsersإلزامي | boolean | |
manageTeamIdsإلزامي | string[] | |
scopeإلزامي | string | company, teams or self. |
unassignedFallbackإلزامي | boolean | |
viewTeamIdsإلزامي | string[] | |
ActivityDayDto
One user's local day. A day without activity is a 200 with zero totals, null arrival/leave and empty lists.
| الحقل | النوع | الوصف |
absenceCreditMsإلزامي | integer (int64) | A worked absence tops the worked time up to the expected work. |
activeMsإلزامي | integer (int64) | Window time ∩ not AFK (computer time only). |
afkCoverageإلزامي | boolean | False when no device reported AFK data (idle unknown). |
appsإلزامي | AppUsageDto[] | Daily totals, largest first. |
arrivalAt | string (date-time) | null | |
atWorkMsإلزامي | integer (int64) | |
attendance | DayAttendanceDto | null | |
categoriesإلزامي | CategoryUsageDto[] | Active time per category (null key = uncategorized); offline time is in no category. |
classifiedإلزامي | boolean | False for a day written before the Phase 2 classification (all neutral). |
dateإلزامي | string (date) | |
dayEndإلزامي | string (date-time) | |
dayStartإلزامي | string (date-time) | The day's window: local midnight, or the end of the previous day's night shift window. |
deletedMsإلزامي | integer (int64) | Tracked time removed by approved deletions (part of idle). |
domainsإلزامي | DomainUsageDto[] | |
hostsإلزامي | HostUsageDto[] | Hosts with a URL, at most 50, largest first. |
idleMsإلزامي | integer (int64) | |
leftAt | string (date-time) | null | |
meetingMsإلزامي | integer (int64) | Active time the meeting apps exception turned from idle into active. |
offlineMsإلزامي | integer (int64) | Approved offline time outside the tracked active time. |
pendingOfflineMsإلزامي | integer (int64) | Pending offline entries of the day (information only). |
plan | DayPlanDto | null | |
privateIntervalsإلزامي | TimeIntervalDto[] | Private intervals of the day, merged and clipped, without detail. |
privateMsإلزامي | integer (int64) | Private time outside active and offline time. |
productivityإلزامي | DayProductivityDto | |
recomputingإلزامي | boolean | The day waits in the recompute queue (the UI refetches every 15 s). |
slotsإلزامي | ActivitySlotDto[] | One entry per 5-minute UTC slot with activity, by time. |
teamId | string (uuid) | null | The user's current primary team (its rules classify the day). |
timeEntriesإلزامي | TimeEntryDto[] | Offline and deletion entries of every status overlapping the day's window, by start; the caller's permissions. |
timeZoneإلزامي | string | The zone the day was computed in; the UI draws slots at their wall-clock time in it. |
userIdإلزامي | string (uuid) | |
workedMsإلزامي | integer (int64) | activeMs + offlineMs: the denominator of productivity.productivityPct. |
ActivitySlotDto
Time in one 5-minute slot; activeMs includes approved offline time (offlineMs).
| الحقل | النوع | الوصف |
activeMsإلزامي | integer (int64) | |
appsإلزامي | AppUsageDto[] | |
neutralMsإلزامي | integer (int64) | |
offlineMsإلزامي | integer (int64) | |
productiveMsإلزامي | integer (int64) | |
slotStartإلزامي | string (date-time) | |
unproductiveMsإلزامي | integer (int64) | |
AffectedAllocationDto
An allocation replace changed.
| الحقل | النوع | الوصف |
changeإلزامي | string | trimmed, split or deleted. |
idإلزامي | string (uuid) | |
AllocationCreateRequest
POST /v1/allocations (Idempotency-Key).
| الحقل | النوع | الوصف |
endedAt | string (date-time) | null | At most 24 hours after startedAt, at most 5 minutes in the future. |
isBillable | boolean | null | |
note | string | null | |
projectId | string (uuid) | null | |
replace | boolean | null | Trim, split or delete the person's (unbilled) allocations it overlaps; otherwise an overlap is 409
allocation_overlaps. |
source | string | null | manual or assignment (timer only through the timer). |
startedAt | string (date-time) | null | |
taskId | string (uuid) | null | |
userId | string (uuid) | null | null = the caller; another person needs allocations.write and to be managed by the caller. |
AllocationCreatedDto
POST /v1/allocations → 201.
AllocationDto
Time on a project.
| الحقل | النوع | الوصف |
createdAtإلزامي | string (date-time) | |
createdByإلزامي | NamedRefDto | |
durationMsإلزامي | integer (int64) | |
effectiveBillableإلزامي | boolean | |
endedAtإلزامي | string (date-time) | |
idإلزامي | string (uuid) | |
invoiceId | string (uuid) | null | Set once the time is on an invoice. |
isBillable | boolean | null | null takes the task's, then the project's value. |
localDateإلزامي | string (date) | The start's day in the person's zone (rates, reports). |
note | string | null | |
permissionsإلزامي | AllocationPermissionsDto | |
projectإلزامي | ProjectRefDto | |
sourceإلزامي | string | timer, manual or assignment. |
startedAtإلزامي | string (date-time) | |
task | NamedRefDto | null | |
timeZoneإلزامي | string | |
updatedAtإلزامي | string (date-time) | |
userIdإلزامي | string (uuid) | |
versionإلزامي | integer (int64) | The row version: If-Match: "v<version>" of a change (the same value as the resource's ETag). |
AllocationPage
GET /v1/allocations.
| الحقل | النوع | الوصف |
itemsإلزامي | AllocationDto[] | |
nextCursor | string | null | |
AllocationPermissionsDto
What the caller may do with an allocation (a billed one is locked).
| الحقل | النوع | الوصف |
deleteإلزامي | boolean | |
editإلزامي | boolean | |
AppTotalDto
| الحقل | النوع | الوصف |
activeMsإلزامي | integer (int64) | |
appKeyإلزامي | string | |
categoryKey | string | null | |
level | string | null | Level in the response's levelContext. |
nameإلزامي | string | |
percentageإلزامي | number (double) | Share of the range's worked time (0–100, one decimal). |
AppUsageDto
An app's time; offline rows use the reserved keys _offline_<level> with name: "Offline time" and
levelSource: "offline".
| الحقل | النوع | الوصف |
activeMsإلزامي | integer (int64) | |
appKeyإلزامي | string | |
categoryKey | string | null | |
level | string | null | The app's own rule (productive, unproductive, neutral). |
levelSource | string | null | team, company, default or offline. |
nameإلزامي | string | |
BudgetDto
A project's budget: hours (minutes) or an amount in the project's currency (amountMinor).
| الحقل | النوع | الوصف |
amountMinor | integer (int64) | null | |
kind | string | null | hours or amount. |
minutes | integer (int64) | null | |
BudgetRequest
The budget of a project request (kind hours with minutes, or amount with amountMinor).
| الحقل | النوع | الوصف |
amountMinor | integer (int64) | null | |
kind | string | null | |
minutes | integer (int64) | null | |
CalendarDecisionRequest
{decision, note?} of the decision endpoints (approve or reject; the note at most 500 characters).
| الحقل | النوع | الوصف |
decision | string | null | |
note | string | null | |
CalendarPersonDto
A user with the current team.
| الحقل | النوع | الوصف |
fullName | string | null | |
idإلزامي | string (uuid) | |
teamId | string (uuid) | null | |
teamName | string | null | |
CalendarUserRefDto
A user reference (names from the directory; null when unknown).
| الحقل | النوع | الوصف |
fullName | string | null | |
idإلزامي | string (uuid) | |
CapabilitiesDto
Subscription capabilities.
| الحقل | النوع | الوصف |
featuresإلزامي | string[] | |
readOnlyإلزامي | boolean | |
CategoryUsageDto
| الحقل | النوع | الوصف |
activeMsإلزامي | integer (int64) | |
categoryKey | string | null | null = uncategorized. |
CreateExportRequest
POST /v1/exports: definition is the full definition the dialog shows; without it the saved template
(templateId) or the built-in one (templateKey) gives it.
| الحقل | النوع | الوصف |
definition | ExportDefinitionDto | null | |
from | string (date) | null | |
locale | string | null | tr or en. |
templateId | string (uuid) | null | |
templateKey | string | null | |
to | string (date) | null | |
CreateInvitation
POST /v1/invitations.
| الحقل | النوع | الوصف |
emailإلزامي | string | |
fullNameإلزامي | string | |
locale | string | null | Language of the e-mail and the acceptance page (tr, en); the organization's default otherwise. |
roleإلزامي | string | admin, team_admin, manager or employee. |
teamId | string (uuid) | null | |
timeZone | string | null | |
viewerTeamIds | string (uuid)[] | |
CreateTeam
POST /v1/teams.
| الحقل | النوع | الوصف |
description | string | null | At most 500 characters. |
nameإلزامي | string | 1–100 characters, unique among active teams (Turkish case folding). |
CreateTimeEntryRequest
POST /v1/time-entries (the .NET CreateTimeEntryRequest).
| الحقل | النوع | الوصف |
description | string | null | Offline: 1–500 characters; deletion: optional reason (at most 500). |
end | string (date-time) | null | |
kind | string | null | offline or deletion. |
level | string | null | Offline only (default productive). |
projectId | string (uuid) | null | Must be null (400 project_not_supported). |
start | string (date-time) | null | |
userId | string (uuid) | null | null = the caller; a manager may add time for a user it manages. |
CreateWebhookEndpointRequest
POST /v1/webhook-endpoints.
| الحقل | النوع | الوصف |
description | string | null | ≤ 200 characters. |
eventTypesإلزامي | string[] | 1–50 catalog event types of the tenant's plan. |
urlإلزامي | string | https://… (≤ 2048; no user info, no fragment; every resolved address public). |
CreatedWebhookEndpointDto
CreatedWebhookEndpointDto: the endpoint and its signing secret, shown once.
| الحقل | النوع | الوصف |
endpointإلزامي | WebhookEndpointDto | |
secretإلزامي | string | whsec_<base64>: shown once, never again. |
DailyHolidayDto
A holiday of a daily report day.
| الحقل | النوع | الوصف |
half | string | null | |
keyإلزامي | string | |
nameإلزامي | string | English name; nameTr is the Turkish one. |
nameTrإلزامي | string | |
DayAbsenceDto
The dominant absence of a day (/v1/reports/users/{userId}/daily days[].absence).
| الحقل | النوع | الوصف |
colorإلزامي | string | |
fractionإلزامي | number (double) | The day's approved absence coverage (0–1). |
half | string | null | |
typeKey | string | null | |
typeName | string | null | |
unitإلزامي | string | |
DayAttendanceDto
Attendance of the day on the day plan.
| الحقل | النوع | الوصف |
expectedEnd | string (date-time) | null | |
expectedStart | string (date-time) | null | |
flexibleإلزامي | boolean | |
lateByMsإلزامي | integer (int64) | |
lateToleranceMinutesإلزامي | integer (int32) | |
leftEarlyإلزامي | boolean | |
leftEarlyByMsإلزامي | integer (int64) | |
statusإلزامي | string | onTime, late, absent, notStarted, dayOff, onLeave, holiday. |
targetMsإلزامي | integer (int64) | The plan's target (the Effectiveness % denominator). |
workdayإلزامي | boolean | |
DayPlanDto
The day plan of one user's day.
| الحقل | النوع | الوصف |
absencesإلزامي | PlanAbsenceDto[] | Approved and pending absences covering the day (only approved ones change the numbers). |
expectedEnd | string (date-time) | null | |
expectedStart | string (date-time) | null | |
expectedWorkMsإلزامي | integer (int64) | Overtime target (base × (1 − fLeave)). |
holiday | HolidayRefDto | null | |
kindإلزامي | string | schedule, shift, dayOff or holiday. |
leaveFractionإلزامي | number (double) | The approved absence coverage f (0–1). |
shiftsإلزامي | PlanShiftDto[] | Shifts starting on the day, by start. |
targetMsإلزامي | integer (int64) | Effectiveness % denominator (base × (1 − f)). |
workdayإلزامي | boolean | |
DayProductivityDto
A day's time by productivity level (productive + unproductive + neutral = workedMs).
| الحقل | النوع | الوصف |
effectivenessPct | number (double) | null | productive ÷ target × 100 (not capped); null without a target. |
neutralMsإلزامي | integer (int64) | |
productiveMsإلزامي | integer (int64) | |
productivityPct | number (double) | null | productive ÷ worked × 100, one decimal; null without worked time. |
targetMsإلزامي | integer (int64) | |
unproductiveMsإلزامي | integer (int64) | |
DayTotalDto
One local day of a summary.
| الحقل | النوع | الوصف |
activeMsإلزامي | integer (int64) | |
activeUserCountإلزامي | integer (int32) | |
atWorkMsإلزامي | integer (int64) | |
dateإلزامي | string (date) | |
idleMsإلزامي | integer (int64) | |
neutralMsإلزامي | integer (int64) | |
offlineMsإلزامي | integer (int64) | |
privateMsإلزامي | integer (int64) | |
productiveMsإلزامي | integer (int64) | |
productivityPct | number (double) | null | |
unproductiveMsإلزامي | integer (int64) | |
DomainTotalDto
| الحقل | النوع | الوصف |
activeMsإلزامي | integer (int64) | |
categoryKey | string | null | |
domainإلزامي | string | |
level | string | null | |
percentageإلزامي | number (double) | |
DomainUsageDto
| الحقل | النوع | الوصف |
activeMsإلزامي | integer (int64) | |
categoryKey | string | null | |
domainإلزامي | string | |
level | string | null | |
levelSource | string | null | |
EmailVerificationDto
Where the person stands with the e-mail verification (owner decision 3 Oct 2026, focus_auth::email_gate).
| الحقل | النوع | الوصف |
dueAt | string (date-time) | null | The deadline of an unverified account (Identity__EmailVerificationGraceHours after its creation). |
stateإلزامي | string | verified, not_required (an account that never has to verify: invited, imported, SCIM, IdP-verified),
pending (unverified, before dueAt) or overdue (after dueAt: every request but a few answers 403
email_verification_required). |
ExportDefinitionDto
What an export contains (FAZ4 §6.1; focus_contracts::reports::export::ExportDefinition on the wire); a saved
template stores it without the date range. Every field is optional so that the validator reports what is wrong
(422 validation_failed with errors[{field, code}]).
| الحقل | النوع | الوصف |
columns | string[] | null | Column keys of the dataset in file order (1–40; a PDF at most 12). |
csvDialect | string | null | standard (default) or excel-tr (csv only). |
dataset | string | null | |
durationFormat | string | null | hms (default), hours or minutes. |
filters | ExportFiltersDto | null | |
format | string | null | xlsx, csv or pdf. |
groupBy | string | null | day, week, month, range or none (the dataset decides). |
options | ExportOptionsDto | null | |
ExportFiltersDto
Who is exported: a team, some users, or (neither) everyone the requester can see.
| الحقل | النوع | الوصف |
includeInactiveUsers | boolean | |
teamId | string | null | |
userIds | string | null[] | null | |
ExportJobDto
An export job as the panel lists and polls it.
| الحقل | النوع | الوصف |
createdAtإلزامي | string (date-time) | |
datasetإلزامي | string | |
errorCode | string | null | too_many_rows, too_many_rows_for_pdf, access_lost, feature_not_in_plan, canceled, internal_error. |
expiresAt | string (date-time) | null | |
fileName | string | null | |
fileSize | integer (int64) | null | |
finishedAt | string (date-time) | null | |
formatإلزامي | string | |
fromإلزامي | string (date) | |
groupBy | string | null | |
idإلزامي | string (uuid) | |
localeإلزامي | string | |
progressإلزامي | integer (int32) | 0–100. |
rowCount | integer (int32) | null | |
startedAt | string (date-time) | null | |
statusإلزامي | string | queued, running, succeeded, failed, canceled, expired. |
templateId | string (uuid) | null | |
templateKey | string | null | |
templateName | string | null | The saved template's name, while it still exists. |
toإلزامي | string (date) | |
ExportOptionsDto
Dataset options; each applies to one dataset and is ignored by the others.
| الحقل | النوع | الوصف |
include | string | null | titles: titles, urls or both (default). |
includeCosts | boolean | null | projects (Faz 6): fill the rate, amount and currency columns (needs projects.costs.read, else 403). |
includeOpen | boolean | null | shifts: also open shifts. |
splitByUser | boolean | null | applications: one row per user and target. |
statuses | string | null[] | null | offline_time / absence: status filter (default approved). |
targetType | string | null | applications: app (default), domain or host. |
FieldError
One field error of a 400/422 body.
| الحقل | النوع | الوصف |
codeإلزامي | string | Stable snake_case code (required, too_long, invalid, ...). |
fieldإلزامي | string | JSON path of the field in camelCase (name, items[2].start), or the parameter/header name. |
message | string | null | |
HolidayRefDto
A holiday of a day (both names; name is the English one).
| الحقل | النوع | الوصف |
half | string | null | |
keyإلزامي | string | Built-in key (republic_day, …) or custom. |
nameإلزامي | string | |
nameEnإلزامي | string | |
nameTrإلزامي | string | |
source | string | null | builtin or tenant. |
HostUsageDto
| الحقل | النوع | الوصف |
activeMsإلزامي | integer (int64) | |
domain | string | null | |
hostإلزامي | string | |
levelإلزامي | string | |
levelSourceإلزامي | string | |
matchedKey | string | null | Key of the matching domain rule; null for the default. |
InvitationEmail
What happened to the invitation e-mail.
| الحقل | النوع | الوصف |
acceptUrl | string | null | The acceptance link, only when no e-mail is sent (not_configured, suppressed_reserved) and only in the
fresh answer (share it by hand). |
statusإلزامي | string | queued; not_configured when no e-mail provider is set up; suppressed_reserved when the address is an
RFC 2606 / RFC 6761 reserved name (example.com, *.test, …) that is never e-mailed. Clients treat
suppressed_reserved like not_configured: nothing arrives, share acceptUrl by hand. |
InvitationRef
{"id","expiresAt"} of a created or re-sent invitation.
| الحقل | النوع | الوصف |
expiresAtإلزامي | string | |
idإلزامي | string (uuid) | |
InvitationResult
The answer of POST /v1/invitations and POST /v1/invitations/{id}/resend.
LevelContextDto
Which rules the single level of an aggregate list follows (FAZ2 §5 "Listelerde hangi kural").
| الحقل | النوع | الوصف |
kindإلزامي | string | user (a userId filter: that user's current team), team (a teamId filter) or company. |
teamId | string (uuid) | null | |
MeMembership
The membership in the current organization.
| الحقل | النوع | الوصف |
idإلزامي | string (uuid) | |
isTrackedإلزامي | boolean | |
joinedAt | string | null | |
roleإلزامي | string | |
statusإلزامي | string | |
teamId | string (uuid) | null | |
teamName | string | null | |
timeZone | string | null | |
viewerTeamIdsإلزامي | string (uuid)[] | |
MeOrganization
The current organization.
| الحقل | النوع | الوصف |
defaultLocaleإلزامي | string | |
idإلزامي | string (uuid) | |
nameإلزامي | string | |
slugإلزامي | string | |
statusإلزامي | string | |
timeZoneإلزامي | string | |
MeSession
The current session.
| الحقل | النوع | الوصف |
absoluteExpiresAtإلزامي | string | |
amrإلزامي | string[] | |
authTimeإلزامي | string | |
clientIdإلزامي | string | |
idإلزامي | string (uuid) | |
idleExpiresAtإلزامي | string | |
MeUser
The person (GET /v1/me → user).
| الحقل | النوع | الوصف |
emailإلزامي | string | |
emailVerificationإلزامي | EmailVerificationDto | The e-mail verification gate (owner decision 3 Oct 2026). |
emailVerifiedإلزامي | boolean | |
fullName | string | null | |
idإلزامي | string (uuid) | |
localeإلزامي | string | |
MemberDto
A membership with its person (MemberDto).
| الحقل | النوع | الوصف |
createdAtإلزامي | string | |
emailإلزامي | string | |
emailVerifiedإلزامي | boolean | |
fullName | string | null | |
idإلزامي | string (uuid) | |
invitation | MemberInvitationDto | null | |
isTrackedإلزامي | boolean | |
joinedAt | string | null | |
localeإلزامي | string | |
roleإلزامي | string | owner, admin, team_admin, manager, employee. |
statusإلزامي | string | invited, active, suspended, left. |
teamId | string (uuid) | null | |
teamName | string | null | |
timeZone | string | null | |
unassignedManagerإلزامي | boolean | A Manager with neither a team nor viewer teams (sees the whole company until assigned). |
userIdإلزامي | string (uuid) | |
viewerTeamIdsإلزامي | string (uuid)[] | |
MemberInvitationDto
The invitation of an invited member.
| الحقل | النوع | الوصف |
emailStatus | string | null | queued, sending, sent, failed, suppressed, not_configured, suppressed_reserved (an RFC 2606 /
RFC 6761 reserved domain, never e-mailed), or null before the first e-mail. |
expiresAtإلزامي | string | |
idإلزامي | string (uuid) | |
lastSentAtإلزامي | string | |
sentCountإلزامي | integer (int32) | |
MemberPage
A page of members (OpenAPI).
| الحقل | النوع | الوصف |
itemsإلزامي | MemberDto[] | |
nextCursor | string | null | |
MemberRefDto
A member as a reference (current row): the connecting Admin of a connection, the owner of a webhook endpoint.
| الحقل | النوع | الوصف |
activeإلزامي | boolean | The membership is active and (for an endpoint or a tenant connection) still an Owner or Admin. |
name | string | null | |
userIdإلزامي | string (uuid) | |
NamedRefDto
A reference by id and display name (a client, a person, a task).
| الحقل | النوع | الوصف |
idإلزامي | string (uuid) | |
nameإلزامي | string | |
OrganizationChoice
One organization of the person (sec.user_memberships).
| الحقل | النوع | الوصف |
currentإلزامي | boolean | |
idإلزامي | string (uuid) | |
nameإلزامي | string | |
roleإلزامي | string | |
selectableإلزامي | boolean | Can this session's sign-in method open it (design §4.5.3)? |
PatchMember
PATCH /v1/members/{id}.
| الحقل | النوع | الوصف |
isTracked | boolean | null | |
role | string | null | admin, team_admin, manager or employee (the Owner is only transferred). |
teamId | string (uuid) | null | Primary team; null removes it. |
timeZone | string | null | IANA zone of the membership; null follows the organization. |
viewerTeamIds | string (uuid)[] | null | Extra read-only teams (Manager and TeamAdmin only). |
PatchTeam
PATCH /v1/teams/{id}.
| الحقل | النوع | الوصف |
description | string | null | |
name | string | null | |
PeriodReportDto
GET /v1/reports/productivity.
PlanAbsenceDto
| الحقل | النوع | الوصف |
colorإلزامي | string | |
countsAsWorkedإلزامي | boolean | timeEffect == worked. |
endTime | string | null | |
half | string | null | |
idإلزامي | string (uuid) | |
startTime | string | null | Local start and end of an hours absence. |
statusإلزامي | string | approved or pending. |
timeEffectإلزامي | string | leave, worked or none. |
typeKey | string | null | |
typeName | string | null | null for a built-in type that was not renamed (the UI translates typeKey). |
unitإلزامي | string | days, half_day or hours. |
PlanShiftDto
| الحقل | النوع | الوصف |
color | string | null | |
endإلزامي | string (date-time) | |
endTimeإلزامي | string | Local end; before the start for a night shift. |
idإلزامي | string (uuid) | |
locationإلزامي | string | |
minMinutesإلزامي | integer (int32) | |
startإلزامي | string (date-time) | |
startTimeإلزامي | string | Local start (HH:mm, the shift's zone). |
Problem
RFC 9457 problem details (application/problem+json).
| الحقل | النوع | الوصف |
action | string | null | Permission key of a 403 (teams.create). |
codeإلزامي | string | Stable snake_case error code (catalog error-codes.json). |
detail | string | null | |
errors | FieldError[] | null | |
requiredPlan | string | null | Lowest plan that includes the feature (402 feature_not_in_plan). |
retryAfterSeconds | integer (int32) | null | Seconds to wait (429, 503; also the Retry-After header). |
statusإلزامي | integer (int32) | |
titleإلزامي | string | English title of the code (clients translate code). |
traceId | string | null | W3C trace id of the request. |
typeإلزامي | string | Help page of the error code: https://workify360.com/help/errors/<code>/. |
ProjectAmountDto
The amounts of one currency (rates are applied per allocation day and layer).
| الحقل | النوع | الوصف |
billableMinorإلزامي | integer (int64) | The billable hours at their rate. |
costMinorإلزامي | integer (int64) | Every allocated hour at its rate. |
currencyإلزامي | string | |
ProjectBudgetUsageDto
The use of a project's budget, all time.
| الحقل | النوع | الوصف |
budgetMinor | integer (int64) | null | null unless costsIncluded. |
budgetMinutes | integer (int64) | null | |
kindإلزامي | string | hours or amount. |
projectIdإلزامي | string (uuid) | |
usedMinor | integer (int64) | null | The cost in the project's currency; null unless costsIncluded. |
usedMsإلزامي | integer (int64) | |
usedRatio | string | null | Used / budget, 4 decimals (null for an amount budget without costsIncluded). |
ProjectDto
A project.
| الحقل | النوع | الوصف |
accessإلزامي | string | everyone or members. |
archivedإلزامي | boolean | |
budget | BudgetDto | null | |
client | NamedRefDto | null | |
code | string | null | |
color | string | null | |
createdAtإلزامي | string (date-time) | |
currencyإلزامي | string | The currency of the project's rates and amount budget. |
description | string | null | |
endDate | string (date) | null | |
idإلزامي | string (uuid) | |
isBillableإلزامي | boolean | |
memberCountإلزامي | integer (int64) | |
myRole | string | null | The caller's role in the project team (member, manager), null outside it. |
nameإلزامي | string | |
permissionsإلزامي | ProjectPermissionsDto | |
spentMsإلزامي | integer (int64) | Every allocation of the project, all time. |
startDate | string (date) | null | |
statusإلزامي | string | active, on_hold or completed. |
taskCountإلزامي | integer (int64) | |
updatedAtإلزامي | string (date-time) | |
ProjectPage
GET /v1/projects.
| الحقل | النوع | الوصف |
itemsإلزامي | ProjectDto[] | |
nextCursor | string | null | |
ProjectPermissionsDto
What the caller may do with a project (decided from the current rows, §5.3).
| الحقل | النوع | الوصف |
archiveإلزامي | boolean | |
deleteإلزامي | boolean | Only a project without time. |
editإلزامي | boolean | The project's fields (Owners and Admins). |
manageMembersإلزامي | boolean | The team (an Admin or the project's manager; only an Admin changes managers). |
manageTasksإلزامي | boolean | Tasks (an Admin or the project's manager). |
trackإلزامي | boolean | The caller may track time on it now. |
ProjectRefDto
A project reference of an allocation.
| الحقل | النوع | الوصف |
color | string | null | #RRGGBB. |
idإلزامي | string (uuid) | |
nameإلزامي | string | |
ProjectReportDto
GET /v1/reports/projects.
ProjectReportKeysDto
The dimensions of a row (the ones not grouped by are null).
| الحقل | النوع | الوصف |
clientId | string (uuid) | null | |
clientName | string | null | |
date | string (date) | null | The allocation's local day (groupBy day). |
projectId | string (uuid) | null | |
projectName | string | null | |
taskId | string (uuid) | null | |
taskName | string | null | |
userId | string (uuid) | null | |
userName | string | null | |
ProjectReportRowDto
One row of the project report.
| الحقل | النوع | الوصف |
allocatedMsإلزامي | integer (int64) | |
amounts | ProjectAmountDto[] | null | null unless costsIncluded. |
billableMsإلزامي | integer (int64) | |
keysإلزامي | ProjectReportKeysDto | |
nonBillableMsإلزامي | integer (int64) | |
productiveMs | integer (int64) | null | With includeProductive only. |
unratedMsإلزامي | integer (int64) | Time without any rate (it is left out of the amounts). |
ProjectReportTotalsDto
The totals of the report.
| الحقل | النوع | الوصف |
allocatedMsإلزامي | integer (int64) | |
amounts | ProjectAmountDto[] | null | |
billableMsإلزامي | integer (int64) | |
nonBillableMsإلزامي | integer (int64) | |
productiveMs | integer (int64) | null | |
unratedMsإلزامي | integer (int64) | |
ProjectRequest
POST /v1/projects; PUT /v1/projects/{id} sends the whole body.
| الحقل | النوع | الوصف |
access | string | null | everyone (default) or members. |
budget | BudgetRequest | null | |
clientId | string (uuid) | null | |
code | string | null | [A-Za-z0-9._-]{1,32}, unique among active projects. |
color | string | null | #RRGGBB. |
currency | string | null | TRY, USD or EUR; locked once the project has rates or invoice lines (409 project_currency_locked). |
description | string | null | |
endDate | string (date) | null | |
isBillable | boolean | null | Default true. |
name | string | null | |
startDate | string (date) | null | |
status | string | null | active (default), on_hold or completed. |
ReportPeriodDto
One period of a grouped report: its key and bounds, then the figures.
ReportScopeDto
What the caller can see (FAZ1 AccessPolicy.ScopeOf).
| الحقل | النوع | الوصف |
kindإلزامي | string | company, teams or self. |
teamIdsإلزامي | string (uuid)[] | The visible teams of a teams scope, sorted; empty otherwise (company = all). |
unassignedFallbackإلزامي | boolean | A Manager without teams who sees the whole company until assigned. |
ReportSubjectDto
Whom a report is about.
| الحقل | النوع | الوصف |
id | string (uuid) | null | |
kindإلزامي | string | company, team or user. |
name | string | null | |
RotatedWebhookSecretDto
RotatedWebhookSecretDto: the new signing secret, shown once.
| الحقل | النوع | الوصف |
previousSecretExpiresAtإلزامي | string | Until then deliveries carry both signatures. |
secretإلزامي | string | whsec_<base64>: shown once, never again. |
ShiftBody
ShiftBody of POST /v1/shifts, the bulk items and PUT /v1/shifts/{id} (the whole body). Fields left null are
filled from templateId.
| الحقل | النوع | الوصف |
breakMinutes | integer (int32) | null | |
color | string | null | |
date | string (date) | null | |
endTime | string | null | |
location | string | null | |
minMinutes | integer (int32) | null | null = the template's, else duration − break. |
note | string | null | |
startTime | string | null | |
teamId | string (uuid) | null | Required for an open shift; ignored for an assigned one (the user's current team is written). |
templateId | string (uuid) | null | |
userId | string (uuid) | null | null = an open shift. |
ShiftDto
A shift: local fields, UTC instants, the caller's permissions.
| الحقل | النوع | الوصف |
breakMinutesإلزامي | integer (int32) | |
color | string | null | |
createdAtإلزامي | string (date-time) | |
createdByإلزامي | CalendarUserRefDto | |
crossesMidnightإلزامي | boolean | |
dateإلزامي | string (date) | |
durationMinutesإلزامي | integer (int32) | |
endإلزامي | string (date-time) | |
endTimeإلزامي | string | |
idإلزامي | string (uuid) | |
locationإلزامي | string | |
minMinutesإلزامي | integer (int32) | |
note | string | null | |
openإلزامي | boolean | No user assigned. |
permissionsإلزامي | ShiftPermissionsDto | |
sourceإلزامي | string | manual, template, copy or request. |
startإلزامي | string (date-time) | |
startTimeإلزامي | string | |
teamId | string (uuid) | null | Open shift: its team; assigned: the user's team when it was written. |
teamName | string | null | |
templateId | string (uuid) | null | |
templateName | string | null | |
timeZoneإلزامي | string | |
updatedAtإلزامي | string (date-time) | |
user | CalendarUserRefDto | null | |
userId | string (uuid) | null | null for an open shift. |
ShiftListDto
GET /v1/shifts (the shifts **starting** in the range).
ShiftPermissionsDto
| الحقل | النوع | الوصف |
canDeleteإلزامي | boolean | |
canEditإلزامي | boolean | |
canPickUpإلزامي | boolean | |
canRequestSwapإلزامي | boolean | |
SummaryDto
The summary of the visible users over a range.
| الحقل | النوع | الوصف |
absenceCreditMsإلزامي | integer (int64) | |
absentDaysإلزامي | integer (int32) | |
activeMsإلزامي | integer (int64) | |
activeUserCountإلزامي | integer (int32) | |
atWorkMsإلزامي | integer (int64) | |
daysإلزامي | DayTotalDto[] | |
deletedMsإلزامي | integer (int64) | |
domainsإلزامي | DomainTotalDto[] | Top 10. |
effectivenessPct | number (double) | null | Average of the users' range Effectiveness % (inactive tracked users included). |
fromإلزامي | string (date) | |
holidayDaysإلزامي | number (double) | |
idleMsإلزامي | integer (int64) | |
inactiveUsersإلزامي | UserTotalDto[] | Tracked users without activity in the range (zero totals, attendance fields), by user id. |
lateDaysإلزامي | integer (int32) | |
leaveDaysإلزامي | number (double) | |
leftEarlyDaysإلزامي | integer (int32) | |
levelContextإلزامي | LevelContextDto | |
meetingMsإلزامي | integer (int64) | |
neutralMsإلزامي | integer (int64) | |
offlineMsإلزامي | integer (int64) | |
overtimeMsإلزامي | integer (int64) | |
privateMsإلزامي | integer (int64) | |
productiveMsإلزامي | integer (int64) | |
productivityPct | number (double) | null | Average of the users' range Productivity %. |
scopeإلزامي | ReportScopeDto | |
shiftDaysإلزامي | integer (int32) | |
teamsإلزامي | TeamTotalDto[] | By current team: named teams by name, the teamId: null row last. |
toإلزامي | string (date) | |
topAppsإلزامي | AppTotalDto[] | Top 10; name is "Offline time" for the reserved offline keys. |
unproductiveMsإلزامي | integer (int64) | |
usersإلزامي | UserTotalDto[] | One row per user with a computed day in the range, by activeMs. |
workedMsإلزامي | integer (int64) | |
TargetItemDto
| الحقل | النوع | الوصف |
activeMsإلزامي | integer (int64) | |
categoryKey | string | null | |
categorySourceإلزامي | string | tenant, builtin or none. |
domain | string | null | |
levelإلزامي | string | |
levelSourceإلزامي | string | team, company or default. |
matchedKey | string | null | |
nameإلزامي | string | |
percentageإلزامي | number (double) | |
targetKeyإلزامي | string | |
targetTypeإلزامي | string | app for apps, domain for domains and hosts. |
userCountإلزامي | integer (int32) | |
TargetListDto
The "Apps & URLs" list.
| الحقل | النوع | الوصف |
fromإلزامي | string (date) | |
itemsإلزامي | TargetItemDto[] | By active time descending, then key. |
levelContextإلزامي | LevelContextDto | |
nextCursor | string | null | |
toإلزامي | string (date) | |
totalإلزامي | integer (int32) | Targets matching the filters (before paging). |
totalActiveMsإلزامي | integer (int64) | Active time over every target of the type before the filters (the percentage base). |
typeإلزامي | string | app, domain or host. |
TaskDto
A task.
| الحقل | النوع | الوصف |
archivedإلزامي | boolean | |
assignee | NamedRefDto | null | |
createdAtإلزامي | string (date-time) | |
description | string | null | |
dueDate | string (date) | null | |
effectiveBillableإلزامي | boolean | |
estimateMinutes | integer (int64) | null | |
idإلزامي | string (uuid) | |
isBillable | boolean | null | null takes the project's value. |
nameإلزامي | string | |
permissionsإلزامي | TaskPermissionsDto | |
projectIdإلزامي | string (uuid) | |
sortOrderإلزامي | integer (int64) | |
spentMsإلزامي | integer (int64) | |
statusإلزامي | string | open, in_progress or done. |
updatedAtإلزامي | string (date-time) | |
TaskPage
GET /v1/projects/{id}/tasks.
| الحقل | النوع | الوصف |
itemsإلزامي | TaskDto[] | |
nextCursor | string | null | |
TaskPermissionsDto
What the caller may do with a task.
| الحقل | النوع | الوصف |
deleteإلزامي | boolean | Only a task without time. |
editإلزامي | boolean | |
TaskRequest
POST /v1/projects/{id}/tasks; PUT /v1/tasks/{id} sends the whole body.
| الحقل | النوع | الوصف |
assigneeUserId | string (uuid) | null | Must be able to track time on the project (422 project_not_trackable). |
description | string | null | |
dueDate | string (date) | null | |
estimateMinutes | integer (int64) | null | 1–1 000 000. |
isBillable | boolean | null | null takes the project's value. |
name | string | null | |
sortOrder | integer (int64) | null | |
status | string | null | open (default), in_progress or done. |
TeamDto
A team with its size and leads (TeamDto).
| الحقل | النوع | الوصف |
archivedAt | string | null | |
createdAtإلزامي | string | |
description | string | null | |
idإلزامي | string (uuid) | |
leadsإلزامي | object[] | TeamAdmins and Managers of the team: [{membershipId, userId, fullName, role}]. |
memberCountإلزامي | integer (int64) | Members whose primary team this is (left members excluded). |
nameإلزامي | string | |
updatedAtإلزامي | string | |
TeamPage
A page of teams (OpenAPI).
| الحقل | النوع | الوصف |
itemsإلزامي | TeamDto[] | |
nextCursor | string | null | |
TeamTotalDto
One team row of a summary (current teams; percentages the members' average).
| الحقل | النوع | الوصف |
absenceCreditMsإلزامي | integer (int64) | |
absentDaysإلزامي | integer (int32) | |
activeMsإلزامي | integer (int64) | |
activeUserCountإلزامي | integer (int32) | |
effectivenessPct | number (double) | null | |
holidayDaysإلزامي | number (double) | |
idleMsإلزامي | integer (int64) | |
lateDaysإلزامي | integer (int32) | |
leaveDaysإلزامي | number (double) | |
leftEarlyDaysإلزامي | integer (int32) | |
memberCountإلزامي | integer (int32) | |
neutralMsإلزامي | integer (int64) | |
offlineMsإلزامي | integer (int64) | |
overtimeMsإلزامي | integer (int64) | |
productiveMsإلزامي | integer (int64) | |
productivityPct | number (double) | null | |
shiftDaysإلزامي | integer (int32) | |
teamId | string (uuid) | null | null for the users without a team. |
teamName | string | null | |
unproductiveMsإلزامي | integer (int64) | |
workedMsإلزامي | integer (int64) | |
TimeEntryDecisionRequest
POST /v1/time-entries/{id}/decision.
| الحقل | النوع | الوصف |
decision | string | null | approve or reject. |
note | string | null | At most 500 characters. |
TimeEntryDto
An offline entry or a deletion (design §8.2).
| الحقل | النوع | الوصف |
createdAtإلزامي | string (date-time) | |
createdByإلزامي | TimeEntryUserRefDto | |
dateإلزامي | string (date) | The user's local day of the entry, in the zone effective when it was written. |
decidedAt | string (date-time) | null | |
decidedBy | TimeEntryUserRefDto | null | |
decisionNote | string | null | |
description | string | null | |
durationMsإلزامي | integer (int64) | |
endإلزامي | string (date-time) | |
idإلزامي | string (uuid) | |
kindإلزامي | string | offline or deletion. |
level | string | null | Offline: productive, neutral or unproductive; deletion: null. |
permissionsإلزامي | TimeEntryPermissionsDto | |
projectId | string (uuid) | null | Always null until projects (Phase 6). |
sourceإلزامي | string | manual (Phase 8 adds calendar). |
startإلزامي | string (date-time) | |
statusإلزامي | string | pending, approved or rejected. |
timeZoneإلزامي | string | |
updatedAtإلزامي | string (date-time) | |
userIdإلزامي | string (uuid) | |
TimeEntryPage
GET /v1/time-entries: by start.
| الحقل | النوع | الوصف |
itemsإلزامي | TimeEntryDto[] | |
nextCursor | string | null | |
TimeEntryPermissionsDto
What the caller may do with the entry (TimeEntryPolicy.PermissionsFor), the same on every endpoint.
| الحقل | النوع | الوصف |
canApproveإلزامي | boolean | |
canDeleteإلزامي | boolean | |
canEditإلزامي | boolean | |
TimeEntryUserRefDto
A user reference of an entry (fullName from the directory; null when unknown).
| الحقل | النوع | الوصف |
fullName | string | null | |
idإلزامي | string (uuid) | |
TimeIntervalDto
A UTC interval without any detail (e.g. a private interval).
| الحقل | النوع | الوصف |
endإلزامي | string (date-time) | |
startإلزامي | string (date-time) | |
TimerAtRequest
POST /v1/me/timer/stop and /discard.
| الحقل | النوع | الوصف |
at | string (date-time) | null | |
TimerCommandResultDto
The result of a command (200 also when it did not apply).
| الحقل | النوع | الوصف |
appliedإلزامي | boolean | |
closedإلزامي | AllocationDto[] | The allocations written from the segment this command closed (may be empty). |
reason | string | null | stale, not_running or unchanged; null when applied. |
timerإلزامي | TimerDto | |
TimerDto
GET /v1/me/timer (ETag: "v<rowVersion>", "v0" before the first command).
| الحقل | النوع | الوصف |
autoStopAt | string (date-time) | null | startedAt + 24 hours. |
effectiveBillable | boolean | null | |
isBillable | boolean | null | |
last | TimerLastDto | null | |
note | string | null | |
project | TimerProjectDto | null | |
segmentId | string (uuid) | null | |
serverTimeإلزامي | string (date-time) | The server's clock (clients compute the elapsed time against it). |
source | string | null | web, desktop or api. |
startedAt | string (date-time) | null | |
stateإلزامي | string | running or stopped. |
task | NamedRefDto | null | |
TimerLastDto
The segment that ended last.
| الحقل | النوع | الوصف |
endReasonإلزامي | string | stop, switch, autostop or discard. |
endedAtإلزامي | string (date-time) | |
segmentIdإلزامي | string (uuid) | |
startedAtإلزامي | string (date-time) | |
TimerProjectDto
The project of the running segment.
| الحقل | النوع | الوصف |
clientName | string | null | |
color | string | null | |
idإلزامي | string (uuid) | |
nameإلزامي | string | |
TimerStartRequest
POST /v1/me/timer/start (Idempotency-Key: the client's command id): start, or switch while running.
| الحقل | النوع | الوصف |
at | string (date-time) | null | The client's clock when the command was given (default: the server's now; at most 5 minutes ahead, at most 7
days back). |
isBillable | boolean | null | |
note | string | null | |
projectId | string (uuid) | null | |
source | string | null | web (default), desktop or api. |
taskId | string (uuid) | null | |
UpdateTimeEntryRequest
PUT /v1/time-entries/{id}: the whole editable body (kind and user never change; If-Match instead of version).
| الحقل | النوع | الوصف |
description | string | null | |
end | string (date-time) | null | |
level | string | null | |
projectId | string (uuid) | null | |
start | string (date-time) | null | |
UpdateWebhookEndpointRequest
PATCH /v1/webhook-endpoints/{id} (If-Match).
| الحقل | النوع | الوصف |
description | string | null | null clears it. |
eventTypes | string[] | null | |
status | string | null | active (also opens a disabled endpoint and resets its failure counters) or paused. |
takeOver | boolean | null | true: the caller becomes the endpoint's owner (lifts an owner_inactive pause). |
url | string | null | |
UserDailyDto
A user's days: computed days plus the workdays without activity up to the user's today.
| الحقل | النوع | الوصف |
daysإلزامي | UserDayDto[] | |
fromإلزامي | string (date) | |
teamId | string (uuid) | null | The user's current primary team (its rules classify every day). |
timeZoneإلزامي | string | |
toإلزامي | string (date) | |
userIdإلزامي | string (uuid) | |
UserDayDto
| الحقل | النوع | الوصف |
absence | DayAbsenceDto | null | |
absenceCreditMsإلزامي | integer (int64) | |
activeMsإلزامي | integer (int64) | |
afkCoverageإلزامي | boolean | |
arrivalAt | string (date-time) | null | |
atWorkMsإلزامي | integer (int64) | |
attendanceStatus | string | null | onTime, late, absent, notStarted, dayOff, onLeave, holiday; null outside the directory. |
classifiedإلزامي | boolean | |
dateإلزامي | string (date) | |
dayOffWorkedMsإلزامي | integer (int64) | |
deletedMsإلزامي | integer (int64) | |
effectivenessPct | number (double) | null | |
eventCountإلزامي | integer (int64) | |
expectedWorkMsإلزامي | integer (int64) | |
holiday | DailyHolidayDto | null | |
idleMsإلزامي | integer (int64) | |
lateByMsإلزامي | integer (int64) | |
leftAt | string (date-time) | null | |
leftEarlyإلزامي | boolean | |
leftEarlyByMsإلزامي | integer (int64) | |
meetingMsإلزامي | integer (int64) | |
neutralMsإلزامي | integer (int64) | |
offlineMsإلزامي | integer (int64) | |
overtimeMsإلزامي | integer (int64) | |
planKind | string | null | schedule, shift, dayOff or holiday. |
privateMsإلزامي | integer (int64) | |
productiveMsإلزامي | integer (int64) | |
productivityPct | number (double) | null | |
shiftCountإلزامي | integer (int32) | |
targetMsإلزامي | integer (int64) | |
topApp | string | null | Display name of the app with the most active time. |
unproductiveMsإلزامي | integer (int64) | |
workday | boolean | null | |
workedMsإلزامي | integer (int64) | |
UserTotalDto
One user of a summary.
| الحقل | النوع | الوصف |
absenceCreditMsإلزامي | integer (int64) | |
absentDays | integer (int32) | null | Only for tracked users. |
activeDaysإلزامي | integer (int32) | Local days with active time. |
activeMsإلزامي | integer (int64) | |
arrivalAt | string (date-time) | null | Earliest arrival and latest leave in the range. |
atWorkMsإلزامي | integer (int64) | |
classifiedDaysإلزامي | integer (int32) | |
dayOffWorkedMsإلزامي | integer (int64) | |
deletedMsإلزامي | integer (int64) | |
effectivenessPct | number (double) | null | null without a target and for users missing from the directory. |
email | string | null | |
eventCountإلزامي | integer (int64) | |
fullName | string | null | |
holidayDaysإلزامي | number (double) | |
idleMsإلزامي | integer (int64) | |
lateDays | integer (int32) | null | |
leaveDaysإلزامي | number (double) | |
leftAt | string (date-time) | null | |
leftEarlyDays | integer (int32) | null | |
meetingMsإلزامي | integer (int64) | |
neutralMsإلزامي | integer (int64) | |
offlineMsإلزامي | integer (int64) | |
overtimeDaysإلزامي | integer (int32) | |
overtimeMsإلزامي | integer (int64) | |
privateMsإلزامي | integer (int64) | |
productiveMsإلزامي | integer (int64) | |
productivityPct | number (double) | null | |
shiftDaysإلزامي | integer (int32) | |
targetMs | integer (int64) | null | |
teamId | string (uuid) | null | |
teamName | string | null | |
timeZoneإلزامي | string | |
unproductiveMsإلزامي | integer (int64) | |
userIdإلزامي | string (uuid) | |
workdays | integer (int32) | null | |
workedMsإلزامي | integer (int64) | |
WebhookDeliveryDetailDto
GET /v1/webhook-endpoints/{id}/deliveries/{deliveryId}: the delivery and the body that was (or is) sent.
WebhookDeliveryDto
WebhookDeliveryDto.
| الحقل | النوع | الوصف |
attemptsإلزامي | integer (int32) | |
createdAtإلزامي | string | |
deliveredAt | string | null | |
eventIdإلزامي | string (uuid) | The webhook-id header. |
eventTypeإلزامي | string | |
idإلزامي | string | A 64-bit integer as a string. |
lastDurationMs | integer (int32) | null | |
lastError | string | null | timeout, connect, tls, not_allowed, http_<code>, not_in_plan, owner_inactive. |
lastStatusCode | integer (int32) | null | |
nextAttemptAt | string | null | |
statusإلزامي | string | pending, succeeded, failed, dead. |
WebhookDeliveryPage
GET /v1/webhook-endpoints/{id}/deliveries (newest first).
WebhookEndpointDto
WebhookEndpointDto.
| الحقل | النوع | الوصف |
createdAtإلزامي | string | |
description | string | null | |
eventTypesإلزامي | string[] | |
idإلزامي | string (uuid) | |
ownerإلزامي | MemberRefDto | The member who owns the endpoint (G1: a delivery needs an active Owner or Admin owner). |
previousSecretExpiresAt | string | null | After a rotation the previous secret still signs until then (24 hours). |
secretPrefixإلزامي | string | The first 8 characters of the signing secret (whsec_Kx); never the secret. |
statsإلزامي | WebhookEndpointStatsDto | |
statusإلزامي | string | active, paused, disabled. |
statusReason | string | null | manual, owner_inactive, failing, gone; null while active. |
updatedAtإلزامي | string | |
urlإلزامي | string | |
versionإلزامي | integer (int64) | row_version (ETag: "v<n>", If-Match of PATCH). |
WebhookEndpointPage
GET /v1/webhook-endpoints.
WebhookEndpointStatsDto
The delivery statistics of an endpoint.
| الحقل | النوع | الوصف |
consecutiveFailuresإلزامي | integer (int32) | |
lastFailureAt | string | null | |
lastSuccessAt | string | null | |
WebhookEventDto
One event type of GET /v1/webhook-events.
| الحقل | النوع | الوصف |
availableإلزامي | boolean | The tenant's plan has the feature: an endpoint may subscribe. |
descriptionإلزامي | string | One English sentence (the panel translates by type). |
feature | string | null | The plan feature the event needs (null: every plan with api_access). |
objectإلزامي | string | The data.object of the delivery body. |
typeإلزامي | string | <object>.<verb>, e.g. time_entry.approved. |
WebhookEventsDto
GET /v1/webhook-events.
WebhookTestDto
202 of POST /v1/webhook-endpoints/{id}/test.
| الحقل | النوع | الوصف |
deliveryIdإلزامي | string | The delivery of the test event (a string: the deliveries' id is a 64-bit integer). |