Schemas: administration
Schemas whose first using operation belongs to the administration family. A shared schema is described once, here, and linked from every operation that uses it.
Descriptions come from the contract, which is written in French. They are reproduced verbatim so that the contract remains the source of truth.
AccessScope
Perimetre FERME d'un acces exceptionnel : des lectures, jamais une ecriture.
Type : string
Allowed values : applications, policies, audit
Used by : adminConsentExceptionalAccess, adminListExceptionalAccess, adminOpposeExceptionalAccess, adminRefuseExceptionalAccess, adminRevokeExceptionalAccess
AdminProfileIn
Fiche d'un collegue corrigee par un administrateur : nom affiche et fonction.
Type : object
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
display_name | string | yes | minLength: 2 ; maxLength: 120 | |
job_title | string | null | no | Fonction (intitule de poste). Vide ou absente : aucune. Ne donne aucun droit. | maxLength: 120 |
Used by : adminUpdateUserProfile
ApiCredentialIn
Identifiant machine a emettre.
Type : object
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
expires_at | string (date-time) | null | no | ||
name | string | yes | minLength: 1 ; maxLength: 120 | |
scopes | array<string> | yes | minItems: 1 ; maxItems: 8 |
Used by : adminIssueApiCredential
ApiCredentialIssuedOut
Identifiant emis. `secret` n'est rendu qu'ici, une seule fois.
Type : object
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
id | string (uuid) | yes | ||
prefix | string | yes | ||
secret | string | yes |
Used by : adminIssueApiCredential
ApiCredentialOut
Identifiant machine, sans secret.
Type : object
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
created_at | string (date-time) | yes | ||
expires_at | string (date-time) | null | yes | ||
id | string (uuid) | yes | ||
last_used_at | string (date-time) | null | yes | ||
name | string | yes | ||
prefix | string | yes | ||
revoked_at | string (date-time) | null | yes | ||
scopes | array<string> | yes |
Used by : adminListApiCredentials
ApplicantScope
Nature des demandeurs auxquels le produit s'adresse.
Type : string
Allowed values : natural_person, legal_entity, both
Used by : adminActivateCreditProduct, adminArchiveCreditProduct, adminCreateCreditProduct, adminListCreditProducts, adminUpdateCreditProduct
AuditEventOut
Evenement d'audit, tel qu'un auditeur le lit.
Type : object
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
action | string | yes | ||
actor_id | string | null | yes | ||
actor_type | string | yes | ||
correlation_id | string | yes | ||
event_hash | string | yes | ||
occurred_at | string (date-time) | yes | ||
resource_id | string | yes | ||
resource_type | string | yes | ||
sequence | integer | yes |
Used by : adminListAuditEvents
ConsentMode
Regime de consentement fixe par le contrat de l'institution (ADR-0046).
Type : string
Allowed values : prior_consent, notification_with_opposition
Used by : adminConsentExceptionalAccess, adminListExceptionalAccess, adminOpposeExceptionalAccess, adminRefuseExceptionalAccess, adminRevokeExceptionalAccess
CreditProductCategory
Famille de credit (Architecture §6.2 : microcredit, PME, consommation, immobilier).
Type : string
Allowed values : microcredit, sme, consumer, mortgage, other
Used by : adminActivateCreditProduct, adminArchiveCreditProduct, adminCreateCreditProduct, adminListCreditProducts, adminUpdateCreditProduct, deskProductForm, deskProducts, policiesReferenceGrids
CreditProductIn
Saisie d'un produit de credit.
Type : object
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
applicant_scope | ApplicantScope | yes | ||
category | CreditProductCategory | yes | ||
code | string | yes | minLength: 2 ; maxLength: 32 | |
currency | string | null | no | minLength: 3 ; maxLength: 3 | |
name | string | yes | minLength: 1 ; maxLength: 120 | |
name_en | string | null | no | maxLength: 120 |
Used by : adminCreateCreditProduct, adminUpdateCreditProduct
CreditProductOut
Produit de credit.
Type : object
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
applicant_scope | ApplicantScope | yes | ||
category | CreditProductCategory | yes | ||
code | string | yes | ||
currency | string | yes | ||
id | string (uuid) | yes | ||
name | string | yes | ||
name_en | string | null | yes | ||
status | CreditProductStatus | yes |
Used by : adminActivateCreditProduct, adminArchiveCreditProduct, adminCreateCreditProduct, adminListCreditProducts, adminUpdateCreditProduct
CreditProductStatus
Cycle de vie d'un produit : brouillon, actif, archive. Jamais supprime.
Type : string
Allowed values : draft, active, archived
Used by : adminActivateCreditProduct, adminArchiveCreditProduct, adminCreateCreditProduct, adminListCreditProducts, adminUpdateCreditProduct
CustomFieldEntity
Objet auquel un champ personnalise s'attache.
Type : string
Allowed values : applicant, credit_application
Used by : adminCreateCustomField, adminListCustomFields
CustomFieldIn
Definition d'un champ personnalise.
Type : object
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
choices | array<string> | null | no | maxItems: 50 | |
code | string | yes | minLength: 2 ; maxLength: 48 | |
entity | CustomFieldEntity | yes | ||
field_type | CustomFieldType | yes | ||
label_en | string | null | no | maxLength: 120 | |
label_fr | string | yes | minLength: 1 ; maxLength: 120 | |
required | boolean | no | default: false |
Used by : adminCreateCustomField
CustomFieldOut
Champ personnalise.
Type : object
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
choices | array<string> | null | yes | ||
code | string | yes | ||
created_at | string (date-time) | yes | ||
entity | CustomFieldEntity | yes | ||
field_type | CustomFieldType | yes | ||
id | string (uuid) | yes | ||
label_en | string | null | yes | ||
label_fr | string | yes | ||
required | boolean | yes | ||
status | CustomFieldStatus | yes |
Used by : adminCreateCustomField, adminListCustomFields
CustomFieldStatus
Un champ retire reste defini : des valeurs anciennes peuvent s'y rapporter.
Type : string
Allowed values : active, retired
Used by : adminCreateCustomField, adminListCustomFields
CustomFieldType
Types de valeur admis. Volontairement fermes : un type libre n'est pas validable.
Type : string
Allowed values : text, integer, decimal, date, boolean, choice
Used by : adminCreateCustomField, adminListCustomFields
ExceptionalAccessDecisionOut
Issue d'une decision ; l'invitation de support si le consentement en a emis une.
Type : object
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
grant | ExceptionalAccessOut | yes | ||
invitation | InvitationIssuedOut | null | yes |
Used by : adminConsentExceptionalAccess, adminOpposeExceptionalAccess, adminRefuseExceptionalAccess, adminRevokeExceptionalAccess
ExceptionalAccessOut
Autorisation d'acces exceptionnel recue de CONTROL, et ce qui s'est fait sous elle.
Type : object
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
consent_mode | ConsentMode | yes | ||
consultations | array<SupportConsultationOut> | yes | ||
decided_at | string (date-time) | null | yes | ||
decided_by | string (uuid) | null | yes | ||
grant_id | string (uuid) | yes | ||
motive | string | yes | ||
not_after | string (date-time) | yes | ||
operator_email | string | yes | ||
opposition_deadline | string (date-time) | null | yes | ||
received_at | string (date-time) | yes | ||
scopes | array<AccessScope> | yes | ||
status | GrantStatus | yes | Etat EFFECTIF : echeance et delai compris. | |
ticket_reference | string | yes | ||
user_id | string (uuid) | null | yes | Identite de support, une fois l'invitation acceptee. |
Used by : adminConsentExceptionalAccess, adminListExceptionalAccess, adminOpposeExceptionalAccess, adminRefuseExceptionalAccess, adminRevokeExceptionalAccess
GrantStatus
Etat d'une autorisation, tel qu'un administrateur le lit.
Type : string
Allowed values : pending_consent, notified, active, refused, opposed, revoked, expired
Used by : adminConsentExceptionalAccess, adminListExceptionalAccess, adminOpposeExceptionalAccess, adminRefuseExceptionalAccess, adminRevokeExceptionalAccess
InvitationIn
Invitation a emettre.
Type : object
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
delegation_limit | number | string | null | no | exclusiveMinimum: 0 ; pattern: "^(?!^[-+.]*$)[+-]?0*(?:\\d{0,16}|(?=[\\d.]{1,19}0*$)\\d{0,16}\\.\\d{0,2}0*$)" | |
email | string | yes | minLength: 3 ; maxLength: 320 | |
locale | "fr" | "en" | no | default: "fr" | |
roles | array<Role> | yes | minItems: 1 ; maxItems: 6 |
Used by : adminIssueInvitation
InvitationIssuedOut
Invitation emise ; `link` seulement si le courriel n'est pas parti.
Type : object
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
delivery | "delivered" | "not_configured" | "failed" | yes | ||
expires_at | string (date-time) | yes | ||
invitation_id | string (uuid) | yes | ||
link | string | null | yes | Lien a transmettre soi-meme ; montre une seule fois. |
Used by : adminConsentExceptionalAccess, adminIssueInvitation, adminOpposeExceptionalAccess, adminRefuseExceptionalAccess, adminReissueInvitation, adminRevokeExceptionalAccess
InvitationOut
Invitation, sans jeton.
Type : object
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
created_at | string (date-time) | yes | ||
email | string | yes | ||
expires_at | string (date-time) | yes | ||
id | string (uuid) | yes | ||
roles | array<Role> | yes | ||
status | "pending" | "accepted" | "revoked" | "expired" | yes |
Used by : adminListInvitations
MonthlyUsageOut
Usage d'un mois (UTC) : des volumes, jamais un dossier (D4, ADR-0038).
Type : object
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
billable_evaluations | integer | yes | Premieres evaluations de dossiers soumis : l'acte facturable. | |
month | string | yes | Mois au format AAAA-MM, en temps universel. | |
reevaluations | integer | yes | Reevaluations sous une nouvelle politique : comptees, non facturables. |
Used by : adminReadUsage
PendingRecoveryOut
Lien de retablissement en attente (ADR-0061) ; `expired` s'il est echu.
Type : object
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
expired | boolean | yes | ||
expires_at | string (date-time) | yes | ||
kind | RecoveryKind | yes |
Used by : adminDisableUser, adminGetUser, adminListUsers, adminReactivateUser, adminSetUserRoles, adminSuspendUser, adminUpdateUserProfile, meUpdateProfile
Permission
Actions autorisables, au format `domaine.action`.
Type : string
Allowed values : institution.read, users.read, users.invite, users.manage, roles.assign, credit_products.read, credit_products.manage, custom_fields.read, custom_fields.manage, integrations.read, integrations.manage, audit.read, usage.read, policies.read, policies.manage, policies.approve, scorecard.read, applications.read, applications.write, applications.decide, imports.read, imports.write, knowledge.read, knowledge.manage, exceptional_access.decide, trust.read, trust.configure, consents.read, consents.record, data_rights.read, data_rights.manage, pilot.read, pilot.manage, modules.read, modules.request
Used by : adminListRoles, me
RecoveryIn
Nature du lien de retablissement : le facteur a remplacer.
Type : object
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
kind | RecoveryKind | yes |
Used by : adminIssueAccountRecovery
RecoveryIssuedOut
Lien emis ; `link` seulement si le courriel n'est pas parti.
Type : object
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
delivery | "delivered" | "not_configured" | "failed" | yes | ||
expires_at | string (date-time) | yes | ||
kind | RecoveryKind | yes | ||
link | string | null | yes | Lien a transmettre soi-meme ; montre une seule fois. | |
recovery_id | string (uuid) | yes |
Used by : adminIssueAccountRecovery
Role
Roles institutionnels de reference (Specifications A.1).
Type : string
Allowed values : institution_admin, risk_director, policy_approver, credit_analyst, credit_manager, audit_compliance, nexclara_support
Used by : adminDisableUser, adminGetUser, adminIssueInvitation, adminListInvitations, adminListRoles, adminListUsers, adminReactivateUser, adminSetUserRoles, adminSuspendUser, adminUpdateUserProfile, invitationInspect, me, meUpdateProfile
RoleDescriptionOut
Description d'un role : famille et permissions.
Type : object
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
family | RoleFamily | yes | ||
permissions | array<Permission> | yes | ||
role | Role | yes |
Used by : adminListRoles
RoleFamily
Familles de roles mutuellement exclusives (Architecture §11).
Type : string
Allowed values : configuration, decision, audit, support
Used by : adminListRoles
RolesIn
Nouvel ensemble de roles d'un compte.
Type : object
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
delegation_limit | number | string | null | no | exclusiveMinimum: 0 ; pattern: "^(?!^[-+.]*$)[+-]?0*(?:\\d{0,16}|(?=[\\d.]{1,19}0*$)\\d{0,16}\\.\\d{0,2}0*$)" | |
roles | array<Role> | yes | minItems: 0 ; maxItems: 6 |
Used by : adminSetUserRoles
SessionsRevokedOut
Nombre de sessions fermees.
Type : object
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
revoked | integer | yes |
Used by : adminRevokeUserSessions, meChangePassword, meConfirmSecondFactor, meRevokeOtherSessions
SupportConsultationOut
Requete de l'identite de support, telle que le journal l'a consignee.
Type : object
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
method | string | yes | ||
occurred_at | string (date-time) | yes | ||
route | string | yes | Gabarit de la route, jamais le chemin concret. | |
target_id | string | yes | Identifiant vise par le chemin ; vide sinon. | |
user_id | string | null | yes |
Used by : adminConsentExceptionalAccess, adminListExceptionalAccess, adminOpposeExceptionalAccess, adminRefuseExceptionalAccess, adminRevokeExceptionalAccess
UserOut
Compte, sans secret.
Type : object
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
created_at | string (date-time) | yes | ||
delegation_limit | string | null | yes | pattern: "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$" | |
display_name | string | yes | ||
email | string | yes | ||
id | string (uuid) | yes | ||
job_title | string | null | no | Fonction (intitule de poste). Ne donne aucun droit. | |
last_login_at | string (date-time) | null | yes | ||
locale | string | yes | ||
pending_recovery | PendingRecoveryOut | null | no | ||
roles | array<Role> | yes | ||
status | UserStatus | yes |
Used by : adminDisableUser, adminGetUser, adminListUsers, adminReactivateUser, adminSetUserRoles, adminSuspendUser, adminUpdateUserProfile, meUpdateProfile
UserStatus
Etat d'un compte. Il n'existe pas d'etat « supprime ». Un utilisateur qui a pris des decisions tracees ne disparait jamais de l'histoire : on le DESACTIVE, on ne l'efface pas. La suppression des donnees personnelles d'un ancien collaborateur releve de la retention (Lot 5), pas d'un bouton.
Type : string
Allowed values : active, suspended, disabled
Used by : adminDisableUser, adminGetUser, adminListUsers, adminReactivateUser, adminSetUserRoles, adminSuspendUser, adminUpdateUserProfile, meUpdateProfile