API schema defaults and nullability audit
Generated by
node scripts/compose-specs.mjs; optional and nullable are intentionally reported separately.
| Schema.property | Presence | Nullable | Default |
|---|---|---|---|
AsyncOperation.id | required | no | — |
AsyncOperation.status | required | no | "pending" |
AsyncOperation.statusUrl | required | no | — |
AuditEntry.action | optional | no | — |
AuditEntry.actorSub | optional | no | — |
AuditEntry.createdAt | optional | no | — |
AuditEntry.entity | optional | no | — |
AuditEntry.entityId | optional | no | — |
AuditEntry.id | optional | no | — |
AuditEntry.meta | optional | no | — |
AuditEntryEvent.event | required | no | — |
AuditEntryEvent.payload | required | no | — |
BulkResult.errors | optional | no | [] |
BulkResult.failed | required | no | 0 |
BulkResult.processed | required | no | 0 |
EnvelopeFail.error | required | no | — |
EnvelopeFail.message | required | no | — |
EnvelopeFail.success | required | no | — |
EnvelopeMeta.estimated | optional | no | false |
EnvelopeMeta.limit | required | no | 20 |
EnvelopeMeta.next | optional | no | — |
EnvelopeMeta.nextCursor | optional | no | — |
EnvelopeMeta.offset | required | no | 0 |
EnvelopeMeta.prev | optional | no | — |
EnvelopeMeta.total | required | no | — |
EnvelopeOK.data | required | no | — |
EnvelopeOK.message | required | no | — |
EnvelopeOK.success | required | no | — |
ForgotInput.email | required | no | — |
Health.commit | required | no | — |
Health.environment | optional | no | — |
Health.goVersion | optional | no | — |
Health.status | required | no | — |
Health.version | required | no | — |
LoginInput.email | required | no | — |
LoginInput.otp | optional | no | — |
LoginInput.password | required | no | — |
Permission.createdAt | optional | no | — |
Permission.name | optional | no | — |
Permission.roleCount | optional | no | — |
ProductRecord.createdAt | required | no | — |
ProductRecord.expiresAt | optional | yes | — |
ProductRecord.id | required | no | — |
ProductRecord.kind | required | no | — |
ProductRecord.name | required | no | — |
ProductRecord.ownerId | required | no | — |
ProductRecord.payload | required | no | — |
ProductRecord.status | required | no | — |
ProductRecord.subjectId | optional | yes | — |
ProductRecord.updatedAt | required | no | — |
ProductRecordInput.expiresAt | optional | yes | — |
ProductRecordInput.kind | required | no | — |
ProductRecordInput.name | required | no | — |
ProductRecordInput.payload | required | no | — |
ProductRecordInput.status | optional | no | "active" |
ProductRecordInput.subjectId | optional | yes | — |
ProductRecordUpdate.payload | required | no | — |
ProductRecordUpdate.status | required | no | — |
Profile.activeSessions | optional | no | — |
Profile.avatarUrl | optional | no | — |
Profile.createdAt | optional | no | — |
Profile.displayName | optional | no | — |
Profile.email | optional | no | — |
Profile.id | optional | no | — |
Profile.lastLoginAt | optional | yes | — |
Profile.lastLoginIp | optional | no | — |
Profile.lastLoginUserAgent | optional | no | — |
Profile.lockedUntil | optional | yes | — |
Profile.online | optional | no | — |
Profile.permissions | optional | no | — |
Profile.roles | optional | no | — |
Profile.status | optional | no | — |
Profile.updatedAt | optional | no | — |
ProfileInput.avatarUrl | optional | no | — |
ProfileInput.displayName | optional | no | — |
ProfileInput.email | optional | no | — |
ProfileInput.id | required | no | — |
ProfileUpdateInput.avatarUrl | optional | no | — |
ProfileUpdateInput.displayName | optional | no | — |
ProfileUpdateInput.email | optional | no | — |
RegisterInput.displayName | optional | no | — |
RegisterInput.email | required | no | — |
RegisterInput.password | required | no | — |
ResetInput.newPassword | required | no | — |
ResetInput.token | required | no | — |
ResetTokenInput.token | required | no | — |
Role.archived | optional | no | — |
Role.color | optional | no | — |
Role.createdAt | optional | no | — |
Role.description | optional | no | — |
Role.icon | optional | no | — |
Role.id | optional | no | — |
Role.name | optional | no | — |
Role.permissions | optional | no | — |
Role.system | optional | no | — |
Role.userCount | optional | no | — |
RoleInput.archived | optional | no | false |
RoleInput.color | optional | no | "#6366f1" |
RoleInput.description | optional | no | — |
RoleInput.icon | optional | no | "shield" |
RoleInput.name | required | no | — |
RoleInput.permissions | optional | no | — |
RoleSummary.id | required | no | — |
RoleSummary.name | required | no | — |
Session.createdAt | optional | no | — |
Session.current | optional | no | — |
Session.deviceId | optional | no | — |
Session.id | optional | no | — |
Session.ip | optional | no | — |
Session.userAgent | optional | no | — |
TokenInput.token | required | no | — |
UserCreatedEvent.event | required | no | — |
UserCreatedEvent.payload | required | no | — |
UserDeletedEvent.event | required | no | — |
UserDeletedEvent.payload | required | no | — |
UserStats.online | required | no | — |
UserStats.registrations | required | no | — |
UserStats.total | required | no | — |