/v2/settings/{id}Account-Einstellungen abrufen
Liest die zentralen Einstellungen des ausgewählten Accounts sowie Sprachen, Archiv-/Papierkorb-IDs, Währungen, Abonnement- und Versionsinformationen. Die Antwort reduziert die generische Auswahl auf das erste gefundene Einstellungsobjekt und ergänzt Account-Metadaten. Bei Bedarf werden Versions-Caches für Admin-Konfigurationsvorlagen und Mehrwertsteuer befüllt. Keine Zugangsdaten aus der Antwort veröffentlichen.
Operation-ID get_v2_settings_id
Vertrag & Verhalten
- Dokumentationsstand
- reviewed
- Ändert Zustand
- Ja
- Als readOnly markiert
- Nein
- Für Automation markiert
- Nein
Dieser GET-Aufruf kann Zustand verändern. Die HTTP-Methode allein kennzeichnet hier keinen reinen Lesezugriff.
maintenance
Authentifizierung
Eine der folgenden Alternativen muss erfüllt sein (ODER). Innerhalb jeder Alternative werden alle angegebenen Schemas gemeinsam benötigt (UND).
Alternative 1
bearerAuthhttp · bearerExisting edoobox v2 access token. Never substitute API key/secret headers.
Format: JWT
Security-Schema als JSON
{
"type": "http",
"scheme": "bearer",
"bearerFormat": "JWT",
"description": "Existing edoobox v2 access token. Never substitute API key/secret headers."
}accountContextapiKeySelected login/account context from the JWT, not a database primary key. Required even for a JWT with one account.
header: edid
Security-Schema als JSON
{
"type": "apiKey",
"in": "header",
"name": "edid",
"description": "Selected login/account context from the JWT, not a database primary key. Required even for a JWT with one account."
}Alternative 2
sessionCookieapiKeyExisting browser login session, with the same permission checks as Bearer authentication.
cookie: _edlogin
Security-Schema als JSON
{
"type": "apiKey",
"in": "cookie",
"name": "_edlogin",
"description": "Existing browser login session, with the same permission checks as Bearer authentication."
}accountContextapiKeySelected login/account context from the JWT, not a database primary key. Required even for a JWT with one account.
header: edid
Security-Schema als JSON
{
"type": "apiKey",
"in": "header",
"name": "edid",
"description": "Selected login/account context from the JWT, not a database primary key. Required even for a JWT with one account."
}Parameter
Pfadparameter
iderforderlichÖffentliche Account-ID aus den Einstellungen.
Öffentliche v2-ID aus dem ausgewählten Account; keine interne Datenbank-ID.
- pattern
"^account_[a-f0-9]{12}_-?[0-9]+$"
Schema-Beispiel
"account_012345abcdef_123456"Vollständiges Schema als JSON
{
"type": "string",
"pattern": "^account_[a-f0-9]{12}_-?[0-9]+$",
"description": "Öffentliche v2-ID aus dem ausgewählten Account; keine interne Datenbank-ID.",
"examples": [
"account_012345abcdef_123456"
]
}Query-Parameter
fieldsoptionalJSON-encoded fields value consumed by RequestAPIData / API_DATA; specific actions may ignore it.
application/json
Schema-Beispiel
[
"id"
]Array-Elemente
Vollständiges Schema als JSON
{
"type": "array",
"items": {
"type": "string"
},
"examples": [
[
"id"
]
]
}Beispiel
[
"id"
]filteroptionalJSON-encoded filter value consumed by RequestAPIData / API_DATA; specific actions may ignore it.
application/json
Schema-Beispiel
[
{
"property": "id",
"expression": "=",
"value": "settings_012345abcdef_123456"
}
]Array-Elemente
property string expression string value Typ nicht eingeschränkt Zusätzliche, hier nicht aufgeführte Felder sind erlaubt.
Vollständiges Schema als JSON
{
"type": "array",
"items": {
"type": "object",
"properties": {
"property": {
"type": "string"
},
"expression": {
"type": "string"
},
"value": {}
},
"additionalProperties": true
},
"examples": [
[
{
"property": "id",
"expression": "=",
"value": "settings_012345abcdef_123456"
}
]
]
}Beispiel
[
{
"property": "id",
"expression": "=",
"value": "settings_012345abcdef_123456"
}
]limitoptionalJSON-encoded limit value consumed by RequestAPIData / API_DATA; specific actions may ignore it.
application/json
Schema-Beispiel
{
"start": 0,
"reply": 25
}start integer - minimum
0
Standardwert: 0
reply integer - maximum
2000
Standardwert: 100
Vollständiges Schema als JSON
{
"type": "object",
"properties": {
"start": {
"type": "integer",
"minimum": 0,
"default": 0
},
"reply": {
"type": "integer",
"maximum": 2000,
"default": 100
}
},
"examples": [
{
"start": 0,
"reply": 25
}
]
}Beispiel
{
"start": 0,
"reply": 25
}orderoptionalJSON-encoded order value consumed by RequestAPIData / API_DATA; specific actions may ignore it.
application/json
Schema-Beispiel
[
{
"property": "id",
"value": "ASC"
}
]Array-Elemente
property string value string "ASC""DESC"Zusätzliche, hier nicht aufgeführte Felder sind erlaubt.
Vollständiges Schema als JSON
{
"type": "array",
"items": {
"type": "object",
"properties": {
"property": {
"type": "string"
},
"value": {
"type": "string",
"enum": [
"ASC",
"DESC"
]
}
},
"additionalProperties": true
},
"examples": [
[
{
"property": "id",
"value": "ASC"
}
]
]
}Beispiel
[
{
"property": "id",
"value": "ASC"
}
]response_typeoptionalControls generic collection representation; default is an ID-keyed object.
"array""object"Schema-Beispiel
"array"Vollständiges Schema als JSON
{
"type": "string",
"enum": [
"array",
"object"
],
"examples": [
"array"
]
}Header
languageoptionalAccount language code, where the resource supports setLanguage().
Schema-Beispiel
"de"Vollständiges Schema als JSON
{
"type": "string",
"examples": [
"de"
]
}Request Body
Kein Request Body in der Spezifikation beschrieben.
Antworten
9HTTP-Status und Antwortinhalt gemeinsam auswerten. In dieser API können auch Antworten mit HTTP 200 einen Fehler enthalten.
200application/json
Ein einzelnes Einstellungsobjekt mit zusätzlichen Account-Metadaten, auch bei /list.
application/json
success boolean error boolean | string error_code string data Typ nicht eingeschränkt Einzelnes Account-Einstellungsobjekt; auch die Listenroute reduziert auf das erste gefundene Objekt.
anyOf · Mindestens eine Variante muss passen
Variante 1 object id string Opaque edoobox v2 object ID returned by this account. Never send a raw database ID. The synthetic example is illustrative and is not a real record.
- pattern
"^[a-z0-9]+_[a-f0-9]{12}_-?[0-9]+$"
Schema-Beispiel
"settings_012345abcdef_123456"firstweekday integer Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 44
}format_date integer Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 53
}format_time integer Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 62
}format_calendar_grid integer Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 71
}format_timezone string Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settingsfunc.php",
"line": 5,
"reason": "PUT consumes a zone-name string instead of the integer get placeholder.",
"sha256": "7a289d246c7c6b70fd88c739a308a883f0f983913cc06f6e04b160792aef3c4f"
},
{
"file": "application/models/v2/Settings.php",
"line": 85,
"reason": "Response returns the account timezone zone_name.",
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1"
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}congress_module boolean Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 102
}format_number integer Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 112
}design Typ nicht eingeschränkt Response field from the resource Structure; dynamic values remain unconstrained.
anyOf · Mindestens eine Variante muss passen
Variante 1 string Opaque edoobox v2 object ID returned by this account. Never send a raw database ID. The synthetic example is illustrative and is not a real record.
- pattern
"^[a-z0-9]+_[a-f0-9]{12}_-?[0-9]+$"
Schema-Beispiel
"design_012345abcdef_123456"Variante 2 Typ nicht eingeschränkt Fester Wert: false
Variante 3 null Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 121
}root_category Typ nicht eingeschränkt Response field from the resource Structure; dynamic values remain unconstrained.
anyOf · Mindestens eine Variante muss passen
Variante 1 string Opaque edoobox v2 object ID returned by this account. Never send a raw database ID. The synthetic example is illustrative and is not a real record.
- pattern
"^[a-z0-9]+_[a-f0-9]{12}_-?[0-9]+$"
Schema-Beispiel
"rootcategory_012345abcdef_123456"Variante 2 Typ nicht eingeschränkt Fester Wert: false
Variante 3 null Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 130
}shortcut string Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 140
}organization_name string Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 150
}organization_contactperson string Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 159
}organization_street string Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 168
}organization_postcode string Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 177
}organization_town string Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 186
}organization_country Typ nicht eingeschränkt Response field from the resource Structure; dynamic values remain unconstrained.
anyOf · Mindestens eine Variante muss passen
Variante 1 string Opaque edoobox v2 object ID returned by this account. Never send a raw database ID. The synthetic example is illustrative and is not a real record.
- pattern
"^[a-z0-9]+_[a-f0-9]{12}_-?[0-9]+$"
Schema-Beispiel
"organizationcountry_012345abcdef_123456"Variante 2 Typ nicht eingeschränkt Fester Wert: false
Variante 3 null Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 195
}organization_language string | null Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 205,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/helpers/langedoobox_helper.php",
"line": 731,
"sha256": "6454b27d47a74f3cf236ef8e258fbe821228c1607165d00433a309b2e9127d3c",
"reason": "edLangIDByName returns configured entry, with fallback for unknown names."
},
{
"file": "application/helpers/langedoobox_helper.php",
"line": 566,
"sha256": "6454b27d47a74f3cf236ef8e258fbe821228c1607165d00433a309b2e9127d3c",
"reason": "edLangById converts internal entries back to public language keys."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}organization_phone string Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 214
}organization_url string Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 223,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/helpers/edooboxhelp_helper.php",
"line": 11560,
"sha256": "090d351b5bde81813c7a829bedf2f1f9f978fce5765f246989779f996198934e",
"reason": "aP text storage normalization."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}organization_email string Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settingsfunc.php",
"line": 57,
"reason": "PUT callback validates the trimmed email syntax, checks raw and encoded lengths, and requires an exact aP/aQ identity before returning storage. False is rejected by generic update as ED90100 before a write.",
"sha256": "7a289d246c7c6b70fd88c739a308a883f0f983913cc06f6e04b160792aef3c4f",
"lineEnd": 75
},
{
"file": "application/models/v2/Settings.php",
"line": 237,
"reason": "Incoming model getter is bounded to200 characters; generic PUT uses the dedicated validation hook; response unescapes stored text.",
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"lineEnd": 246
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}organization_currency string Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 247
}billingaddress_organization string Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 257
}billingaddress_user string Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 266
}billingaddress_street string Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 275
}billingaddress_postcode_town string Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 284
}billingaddress_phone string Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 293,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/helpers/edooboxhelp_helper.php",
"line": 11560,
"sha256": "090d351b5bde81813c7a829bedf2f1f9f978fce5765f246989779f996198934e",
"reason": "Actual aP string-only/truncating storage normalization."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}billingaddress_email string Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 303
}billingaddress_status boolean Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 312
}user_duplicate_config object version Typ nicht eingeschränkt erforderlich Fester Wert: 2
enabled boolean erforderlich candidate_threshold integer erforderlich - minimum
0- maximum
100
auto_merge_threshold integer | null erforderlich - minimum
1- maximum
100
survivor_strategy Typ nicht eingeschränkt erforderlich "newest""oldest"max_merge_users integer erforderlich - minimum
2- maximum
10
rules array erforderlich Array-Elemente
field Typ nicht eingeschränkt erforderlich "gender""first_name""last_name""street""postcode""location""country""language""phone_number""email""company""data_1""data_2""data_3""data_4""data_5""data_6""data_7""data_8""data_9""data_10""data_11""data_12""data_13""data_14""data_15""data_16""data_17""data_18""data_19""data_20""data_21""data_22""data_23""data_24""data_25""data_26""data_27""data_28""data_29""data_30"enabled boolean erforderlich required boolean erforderlich weight integer erforderlich - minimum
1- maximum
10
Zusätzliche Felder sind in diesem Teilschema ausgeschlossen.
rules_hash string erforderlich - pattern
"^[a-f0-9]{64}$"
matching_rules_hash string erforderlich - pattern
"^[a-f0-9]{64}$"
Zusätzliche, hier nicht aufgeführte Felder sind erlaubt.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 321,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Userduplicatefunc.php",
"line": 28,
"sha256": "10da9ce285a01836c403fec784c04775e7713b8f0c61d49c21de38cf3f8ea157",
"reason": "Actual normalizeConfigForSave preserves unchanged rule hashes and normalizes current state."
},
{
"file": "application/models/v2/Userduplicatefunc.php",
"line": 40,
"sha256": "10da9ce285a01836c403fec784c04775e7713b8f0c61d49c21de38cf3f8ea157",
"reason": "Full known config defaults, coercion, clamping, hash/version semantics."
},
{
"file": "application/models/v2/Userduplicatefunc.php",
"line": 648,
"sha256": "10da9ce285a01836c403fec784c04775e7713b8f0c61d49c21de38cf3f8ea157",
"reason": "Rule filtering, uniqueness and weight normalization."
},
{
"file": "application/models/v2/Userduplicatefunc.php",
"line": 968,
"sha256": "10da9ce285a01836c403fec784c04775e7713b8f0c61d49c21de38cf3f8ea157",
"reason": "Allowed public data-field selectors for duplicate matching."
},
{
"file": "application/models/v2/Userduplicatefunc.php",
"line": 488,
"sha256": "10da9ce285a01836c403fec784c04775e7713b8f0c61d49c21de38cf3f8ea157",
"reason": "Changed matching rules invalidate derived duplicate data, not only the stored JSON."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}admin_avatar_mode Typ nicht eingeschränkt "face""symbol"Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 344,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}account_billing_recipient_type Typ nicht eingeschränkt "organization""billing_address""admin"Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 363,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}account_billing_recipient_email string Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 390
}account_billing_recipient_admin_id Typ nicht eingeschränkt Billing administrator as a public admin v2 ID; false when unset. Internal database primary keys are never serialized.
anyOf · Mindestens eine Variante muss passen
Variante 1 string Canonical public admin v2 ID issued in this account; server validates the account-bound checksum and rejects raw IDs.
- pattern
"^admin_[a-f0-9]{12}_(?:-35|[1-9][0-9]*)$"
Schema-Beispiel
"admin_012345abcdef_123456"Variante 2 Typ nicht eingeschränkt Fester Wert: false
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-id-kind": "empty-relation"
}Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 421,
"reason": "The corrected inbound getter accepts a canonical tenant-bound admin v2 reference and normalizes explicit clear sentinels; positive raw primary keys are rejected.",
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1"
},
{
"file": "application/models/v2/Settings.php",
"line": 437,
"reason": "The outbound setter encodes a positive database admin key as a public v2 ID and emits false for zero.",
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1"
},
{
"file": "application/models/v2/API_DATA.php",
"line": 1853,
"reason": "Join updates call the field getter before persisting; response serialization calls the field setter at line1068. Final joined writer rejects strict-false getters and unresolved/multi-join metadata before writes, anchors the joined row to the own parent (including account-key parents), and preserves constant join.where constraints as additional AND predicates. Join-only writes verify the own existing parent. Generic simple-owner hard/soft DELETE now verifies the own existing parent before hooks and repeats FID in DML; missing optional hook data no longer warns. Read, insert, signed authority and GET-effect classifications are unchanged.",
"sha256": "c0e15d26a7a4f3fb3c25e35557d4420ad395b2af3925caec292de08e32ebf44c"
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "ba623ac262f6f53eec7d494cd53d3c45f91f0eaa6e0d5757b869d71df6423aa5"
}
]
}account_billing_auto_charge_enabled boolean Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 440
}account_billing_topup_enabled boolean Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 459
}account_billing_topup_threshold number Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 478,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}account_billing_topup_amount number Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 497,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}internal_all boolean Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 516,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Settingsfunc.php",
"line": 23,
"sha256": "7a289d246c7c6b70fd88c739a308a883f0f983913cc06f6e04b160792aef3c4f",
"reason": "Actual field hook handles loose truthiness and subscription verification."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}notification_minimummaximum boolean Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 526
}notification_booking boolean Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 535
}vat_included Typ nicht eingeschränkt "exclusive""including"Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 544,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}vat_reverse_charge_texts Typ nicht eingeschränkt anyOf · Mindestens eine Variante muss passen
Variante 1 object Schema für zusätzliche Felder
Variante 2 array - maxItems
0
Variante 3 null Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 553,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/helpers/edooboxhelp_helper.php",
"line": 11560,
"sha256": "090d351b5bde81813c7a829bedf2f1f9f978fce5765f246989779f996198934e",
"reason": "Each recognized text is normalized by aP."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}offer_sort Typ nicht eingeschränkt "date""manual"Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 580,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}offer_func_1 boolean Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 589
}offer_func_1_status Typ nicht eingeschränkt 34Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 598,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}offer_archiving Typ nicht eingeschränkt 123falseFeld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 607,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}offer_archiving_reference_date Typ nicht eingeschränkt "start""visibility"Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 634,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}news_and_tricks boolean Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 644
}booking_create_admin Typ nicht eingeschränkt 12falseFeld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 653,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}booking_userlogin Typ nicht eingeschränkt 1234Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 686,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}booking_login Typ nicht eingeschränkt 123nullFeld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 713,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}booking_login_global_users boolean Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 738
}booking_cancellation Typ nicht eingeschränkt 1234Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 757,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}booking_cancellation_admin_confirmation_mail boolean Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 784
}booking_reservation boolean Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 803
}booking_paymentpage boolean Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 812
}booking_sendinfo boolean Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 822
}booking_label_notifications array Array-Elemente
label string erforderlich - minLength
1- maxLength
15
email string erforderlich emailtemplate string erforderlich - pattern
"^emailtemplate_[a-f0-9]{12}_-?[0-9]+$"
Zusätzliche Felder sind in diesem Teilschema ausgeschlossen.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 831,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Settings.php",
"line": 3060,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Actual rule filtering and per-account template lookup."
},
{
"file": "application/models/v2/Settings.php",
"line": 3105,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Response filter emits typed public emailtemplate IDs."
},
{
"file": "application/models/v2/Settings.php",
"line": 3159,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Template must belong to the account and be an email template, not PDF."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}booking_send_pdf boolean Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 850
}booking_send_ics boolean Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 859
}booking_reminder boolean Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 878
}booking_reminder_hours integer Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 887
}booking_visitconfirmation Typ nicht eingeschränkt 12falsebooking_number integer Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 937,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Settingsfunc.php",
"line": 288,
"sha256": "7a289d246c7c6b70fd88c739a308a883f0f983913cc06f6e04b160792aef3c4f",
"reason": "Actual hook range check and tenant-scoped uniqueness query."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}booking_cert_percent integer Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 948,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}booking_cert_notvisitmail boolean Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 975
}booking_cert_senddelayhours integer Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 996,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}booking_cert_validation_url boolean Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1024,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Settingsfunc.php",
"line": 40,
"sha256": "7a289d246c7c6b70fd88c739a308a883f0f983913cc06f6e04b160792aef3c4f",
"reason": "Actual field hook handles loose truthiness and subscription verification."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}booking_cert_attachpdf boolean Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 1046
}booking_cert_attachpdfpercent integer Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1206,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}booking_cert_secondemail boolean Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1094,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Settingsfunc.php",
"line": 641,
"sha256": "7a289d246c7c6b70fd88c739a308a883f0f983913cc06f6e04b160792aef3c4f",
"reason": "Actual conditional second-email flag hook; getter called explicitly and destination checked against stored settings."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}booking_cert_secondemail_field Typ nicht eingeschränkt anyOf · Mindestens eine Variante muss passen
Variante 1 string "status""gender""first_name""last_name""street""postcode""location""country""language""phone_number""email""company""data_1""data_2""data_3""data_4""data_5""data_6""data_7""data_8""data_9""data_10""data_11""data_12""data_13""data_14""data_15""data_16""data_17""data_18""data_19""data_20""data_21""data_22""data_23""data_24""data_25""data_26""data_27""data_28""data_29""data_30"Variante 2 Typ nicht eingeschränkt Fester Wert: false
Variante 3 null Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1115,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Datastructure.php",
"line": 20,
"sha256": "256cfd2c1002e4708b342b6649fa6bfda780273306c30ae2a43d424fd0e2e6a8",
"reason": "Public field-key to storage-column map; this selector is not a database record ID."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}booking_secondemail boolean Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1150,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Settingsfunc.php",
"line": 693,
"sha256": "7a289d246c7c6b70fd88c739a308a883f0f983913cc06f6e04b160792aef3c4f",
"reason": "Actual conditional second-email flag hook; getter called explicitly and destination checked against stored settings."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}booking_secondemail_field Typ nicht eingeschränkt anyOf · Mindestens eine Variante muss passen
Variante 1 string "status""gender""first_name""last_name""street""postcode""location""country""language""phone_number""email""company""data_1""data_2""data_3""data_4""data_5""data_6""data_7""data_8""data_9""data_10""data_11""data_12""data_13""data_14""data_15""data_16""data_17""data_18""data_19""data_20""data_21""data_22""data_23""data_24""data_25""data_26""data_27""data_28""data_29""data_30"Variante 2 Typ nicht eingeschränkt Fester Wert: false
Variante 3 null Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1171,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Datastructure.php",
"line": 20,
"sha256": "256cfd2c1002e4708b342b6649fa6bfda780273306c30ae2a43d424fd0e2e6a8",
"reason": "Public field-key to storage-column map; this selector is not a database record ID."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}booking_offerlist_secondemail_field Typ nicht eingeschränkt anyOf · Mindestens eine Variante muss passen
Variante 1 string "status""gender""first_name""last_name""street""postcode""location""country""language""phone_number""email""company""data_1""data_2""data_3""data_4""data_5""data_6""data_7""data_8""data_9""data_10""data_11""data_12""data_13""data_14""data_15""data_16""data_17""data_18""data_19""data_20""data_21""data_22""data_23""data_24""data_25""data_26""data_27""data_28""data_29""data_30"Variante 2 Typ nicht eingeschränkt Fester Wert: false
Variante 3 null Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1233,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Datastructure.php",
"line": 20,
"sha256": "256cfd2c1002e4708b342b6649fa6bfda780273306c30ae2a43d424fd0e2e6a8",
"reason": "Public field-key to storage-column map; this selector is not a database record ID."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}booking_offerlist_cancel_mail boolean Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 1268
}booking_allow_promotions boolean Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 1288
}booking_designation_promotions string Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 1297
}skip_counter integer Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 1306
}question_deliverables_show boolean Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 1316
}multi_offer_show boolean Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 1336
}multi_offer_child_limit integer Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 1346
}automatic_deletion Typ nicht eingeschränkt Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 1367
}edsupport_access integer Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1395,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}payment_confirmation_mail boolean Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 1428
}barcode_type Typ nicht eingeschränkt "pdf417""qrcode""datamatrix"barcode_mobile_wallet boolean Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 1461
}mobile_wallet_background_color string - pattern
"^#[0-9A-F]{6}$"
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1470,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Settings.php",
"line": 3181,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Shared color normalizer returns uppercase hex or the field-specific fallback."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}mobile_wallet_foreground_color string - pattern
"^(?:#[0-9A-F]{6})?$"
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1479,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Settings.php",
"line": 3181,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Shared color normalizer returns uppercase hex or the field-specific fallback."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}mobile_wallet_use_offer_image boolean Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 1488
}mobile_wallet_fallback_image_url string Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1497,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}mobile_wallet_display_name string Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1506,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}mobile_wallet_support_url string Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1515,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}barcode_ticket Typ nicht eingeschränkt false"always""offer"collective_booking_max integer Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 1548
}collective_booking_identify Typ nicht eingeschränkt anyOf · Mindestens eine Variante muss passen
Variante 1 string "status""gender""first_name""last_name""street""postcode""location""country""language""phone_number""email""company""data_1""data_2""data_3""data_4""data_5""data_6""data_7""data_8""data_9""data_10""data_11""data_12""data_13""data_14""data_15""data_16""data_17""data_18""data_19""data_20""data_21""data_22""data_23""data_24""data_25""data_26""data_27""data_28""data_29""data_30"Variante 2 Typ nicht eingeschränkt Fester Wert: false
Variante 3 null Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1563,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Datastructure.php",
"line": 20,
"sha256": "256cfd2c1002e4708b342b6649fa6bfda780273306c30ae2a43d424fd0e2e6a8",
"reason": "Public field-key to storage-column map; this selector is not a database record ID."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}collective_booking_identify_privacy Typ nicht eingeschränkt anyOf · Mindestens eine Variante muss passen
Variante 1 string "status""gender""first_name""last_name""street""postcode""location""country""language""phone_number""email""company""data_1""data_2""data_3""data_4""data_5""data_6""data_7""data_8""data_9""data_10""data_11""data_12""data_13""data_14""data_15""data_16""data_17""data_18""data_19""data_20""data_21""data_22""data_23""data_24""data_25""data_26""data_27""data_28""data_29""data_30"Variante 2 Typ nicht eingeschränkt Fester Wert: false
Variante 3 null Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1586,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Datastructure.php",
"line": 20,
"sha256": "256cfd2c1002e4708b342b6649fa6bfda780273306c30ae2a43d424fd0e2e6a8",
"reason": "Public field-key to storage-column map; this selector is not a database record ID."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}collective_booking_identify_obligatory boolean Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 1610
}collective_booking_master Typ nicht eingeschränkt "manual""all"falsesecurity_headers_csp boolean Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 1654
}design_subcategory boolean Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 1699
}legaltext_atc boolean Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 1708
}legaltext_ri boolean Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 1717
}legaltext_pp boolean Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 1726
}attendance_config array Array-Elemente
status integer | string erforderlich The key is derived with an integer cast; stored status representation is preserved in the record.
order integer erforderlich counter Typ nicht eingeschränkt val Typ nicht eingeschränkt color Typ nicht eingeschränkt help Typ nicht eingeschränkt lock boolean Zusätzliche, hier nicht aufgeführte Felder sind erlaubt.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settingsfunc.php",
"line": 153,
"reason": "PUT sorts the status-record array, casts status/order and normalizes counter.",
"sha256": "7a289d246c7c6b70fd88c739a308a883f0f983913cc06f6e04b160792aef3c4f"
},
{
"file": "application/models/v2/Settingsfunc.php",
"line": 208,
"reason": "Exactly three required-status occurrences are checked.",
"sha256": "7a289d246c7c6b70fd88c739a308a883f0f983913cc06f6e04b160792aef3c4f"
},
{
"file": "application/models/v2/Settings.php",
"line": 1739,
"reason": "Response returns ordered status records as a JSON array.",
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1"
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}language object languages array Array-Elemente
active object | array inactive object | array Zusätzliche, hier nicht aufgeführte Felder sind erlaubt.
edsubscription string Öffentliche v2-ID aus dem ausgewählten Account; keine interne Datenbank-ID.
- pattern
"^edsubscription_[a-f0-9]{12}_-?[0-9]+$"
edsubscription_testinguntildate Typ nicht eingeschränkt Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 1786
}versions object Zusätzliche, hier nicht aufgeführte Felder sind erlaubt.
pdf_engine Typ nicht eingeschränkt 12nullFeld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1821,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}pdf_edit_restriction_password boolean Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 1851
}pdf_paper_size string Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1870,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "vendor/dompdf/dompdf/src/Adapter/CPDF.php",
"line": 42,
"sha256": "7dca4a096b08c006f12bfccd733068223d92e502b9a625c49bd919373f714001",
"reason": "Installed Dompdf paper-size key list, matched case-insensitively by the source getter."
},
{
"file": "application/models/v2/API_DATA.php",
"line": 1853,
"sha256": "c0e15d26a7a4f3fb3c25e35557d4420ad395b2af3925caec292de08e32ebf44c",
"reason": "Normal fields check strict false; joined fields instead collect getter output at 1793 and execute it at 1827 without that rejection. Final joined writer rejects strict-false getters and unresolved/multi-join metadata before writes, anchors the joined row to the own parent (including account-key parents), and preserves constant join.where constraints as additional AND predicates. Join-only writes verify the own existing parent. Generic simple-owner hard/soft DELETE now verifies the own existing parent before hooks and repeats FID in DML; missing optional hook data no longer warns. Read, insert, signed authority and GET-effect classifications are unchanged."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}pdf_custom_css string Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1892,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/libraries/edoobox/integrations/pdf/Pdf.php",
"line": 16,
"sha256": "b286cdc4d20e02601db9acc35b06564357f10378961e72cb8f4e22e64b3a3254",
"reason": "Allowed PDF font keys used by the CSS normalizer."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}dinaco_client_id string Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 1960
}dinaco_client_secret Typ nicht eingeschränkt sensibler Wert Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 1979,
"x-edoobox-sensitive": true
}gtm_mess_id string Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1998,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/helpers/edooboxhelp_helper.php",
"line": 11560,
"sha256": "090d351b5bde81813c7a829bedf2f1f9f978fce5765f246989779f996198934e",
"reason": "aP normalization after the substring test."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}gtm_container_id string Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 2024
}meta_html string Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 2044,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}system_attachments_file_naming Typ nicht eingeschränkt Associative map, or [] when there are no naming rules.
anyOf · Mindestens eine Variante muss passen
Variante 1 object Schema für zusätzliche Felder
Schema für zusätzliche Felder
Variante 2 array - maxItems
0
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 2076,
"reason": "Input iterates template/ics keys and language-to-name objects; edid occurs on map keys.",
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1"
},
{
"file": "application/models/v2/Settings.php",
"line": 2106,
"reason": "Response maps stored keys back to public emailtemplate IDs or ics.",
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1"
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}website_integration Typ nicht eingeschränkt Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 2132
}website_url string Feld-Metadaten aus der Spezifikation
{
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 2159,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/API_DATA.php",
"line": 1853,
"sha256": "c0e15d26a7a4f3fb3c25e35557d4420ad395b2af3925caec292de08e32ebf44c",
"reason": "Strict false getter rejects invalid URL inputs. Final joined writer rejects strict-false getters and unresolved/multi-join metadata before writes, anchors the joined row to the own parent (including account-key parents), and preserves constant join.where constraints as additional AND predicates. Join-only writes verify the own existing parent. Generic simple-owner hard/soft DELETE now verifies the own existing parent before hooks and repeats FID in DML; missing optional hook data no longer warns. Read, insert, signed authority and GET-effect classifications are unchanged."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
}admin_custom_permissions boolean Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 2172
}admin_academic_title_use boolean Response field from the resource Structure; dynamic values remain unconstrained.
Feld-Metadaten aus der Spezifikation
{
"x-edoobox-sourceLine": 2192
}root_archive string Öffentliche v2-ID aus dem ausgewählten Account; keine interne Datenbank-ID.
- pattern
"^category_[a-f0-9]{12}_-?[0-9]+$"
root_trash string Öffentliche v2-ID aus dem ausgewählten Account; keine interne Datenbank-ID.
- pattern
"^category_[a-f0-9]{12}_-?[0-9]+$"
user_currencys array Array-Elemente
stripe_public_key string | boolean Zusätzliche, hier nicht aufgeführte Felder sind erlaubt.
type string Zusätzliche, hier nicht aufgeführte Felder sind erlaubt.
Vollständiges Schema als JSON
{
"type": "object",
"properties": {
"success": {
"type": "boolean"
},
"error": {
"type": [
"boolean",
"string"
]
},
"error_code": {
"type": "string"
},
"data": {
"anyOf": [
{
"type": "object",
"properties": {
"id": {
"type": "string",
"pattern": "^[a-z0-9]+_[a-f0-9]{12}_-?[0-9]+$",
"description": "Opaque edoobox v2 object ID returned by this account. Never send a raw database ID. The synthetic example is illustrative and is not a real record.",
"examples": [
"settings_012345abcdef_123456"
]
},
"firstweekday": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 44,
"type": "integer"
},
"format_date": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 53,
"type": "integer"
},
"format_time": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 62,
"type": "integer"
},
"format_calendar_grid": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 71,
"type": "integer"
},
"format_timezone": {
"type": "string",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settingsfunc.php",
"line": 5,
"reason": "PUT consumes a zone-name string instead of the integer get placeholder.",
"sha256": "7a289d246c7c6b70fd88c739a308a883f0f983913cc06f6e04b160792aef3c4f"
},
{
"file": "application/models/v2/Settings.php",
"line": 85,
"reason": "Response returns the account timezone zone_name.",
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1"
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"congress_module": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 102,
"type": "boolean"
},
"format_number": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 112,
"type": "integer"
},
"design": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 121,
"anyOf": [
{
"type": "string",
"pattern": "^[a-z0-9]+_[a-f0-9]{12}_-?[0-9]+$",
"description": "Opaque edoobox v2 object ID returned by this account. Never send a raw database ID. The synthetic example is illustrative and is not a real record.",
"examples": [
"design_012345abcdef_123456"
]
},
{
"const": false
},
{
"type": "null"
}
]
},
"root_category": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 130,
"anyOf": [
{
"type": "string",
"pattern": "^[a-z0-9]+_[a-f0-9]{12}_-?[0-9]+$",
"description": "Opaque edoobox v2 object ID returned by this account. Never send a raw database ID. The synthetic example is illustrative and is not a real record.",
"examples": [
"rootcategory_012345abcdef_123456"
]
},
{
"const": false
},
{
"type": "null"
}
]
},
"shortcut": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 140,
"type": "string"
},
"organization_name": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 150,
"type": "string"
},
"organization_contactperson": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 159,
"type": "string"
},
"organization_street": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 168,
"type": "string"
},
"organization_postcode": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 177,
"type": "string"
},
"organization_town": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 186,
"type": "string"
},
"organization_country": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 195,
"anyOf": [
{
"type": "string",
"pattern": "^[a-z0-9]+_[a-f0-9]{12}_-?[0-9]+$",
"description": "Opaque edoobox v2 object ID returned by this account. Never send a raw database ID. The synthetic example is illustrative and is not a real record.",
"examples": [
"organizationcountry_012345abcdef_123456"
]
},
{
"const": false
},
{
"type": "null"
}
]
},
"organization_language": {
"type": [
"string",
"null"
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 205,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/helpers/langedoobox_helper.php",
"line": 731,
"sha256": "6454b27d47a74f3cf236ef8e258fbe821228c1607165d00433a309b2e9127d3c",
"reason": "edLangIDByName returns configured entry, with fallback for unknown names."
},
{
"file": "application/helpers/langedoobox_helper.php",
"line": 566,
"sha256": "6454b27d47a74f3cf236ef8e258fbe821228c1607165d00433a309b2e9127d3c",
"reason": "edLangById converts internal entries back to public language keys."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"organization_phone": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 214,
"type": "string"
},
"organization_url": {
"type": "string",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 223,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/helpers/edooboxhelp_helper.php",
"line": 11560,
"sha256": "090d351b5bde81813c7a829bedf2f1f9f978fce5765f246989779f996198934e",
"reason": "aP text storage normalization."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"organization_email": {
"type": "string",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settingsfunc.php",
"line": 57,
"reason": "PUT callback validates the trimmed email syntax, checks raw and encoded lengths, and requires an exact aP/aQ identity before returning storage. False is rejected by generic update as ED90100 before a write.",
"sha256": "7a289d246c7c6b70fd88c739a308a883f0f983913cc06f6e04b160792aef3c4f",
"lineEnd": 75
},
{
"file": "application/models/v2/Settings.php",
"line": 237,
"reason": "Incoming model getter is bounded to200 characters; generic PUT uses the dedicated validation hook; response unescapes stored text.",
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"lineEnd": 246
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"organization_currency": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 247,
"type": "string"
},
"billingaddress_organization": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 257,
"type": "string"
},
"billingaddress_user": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 266,
"type": "string"
},
"billingaddress_street": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 275,
"type": "string"
},
"billingaddress_postcode_town": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 284,
"type": "string"
},
"billingaddress_phone": {
"type": "string",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 293,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/helpers/edooboxhelp_helper.php",
"line": 11560,
"sha256": "090d351b5bde81813c7a829bedf2f1f9f978fce5765f246989779f996198934e",
"reason": "Actual aP string-only/truncating storage normalization."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"billingaddress_email": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 303,
"type": "string"
},
"billingaddress_status": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 312,
"type": "boolean"
},
"user_duplicate_config": {
"type": "object",
"required": [
"version",
"enabled",
"candidate_threshold",
"auto_merge_threshold",
"survivor_strategy",
"max_merge_users",
"rules",
"rules_hash",
"matching_rules_hash"
],
"properties": {
"version": {
"const": 2
},
"enabled": {
"type": "boolean"
},
"candidate_threshold": {
"type": "integer",
"minimum": 0,
"maximum": 100
},
"auto_merge_threshold": {
"type": [
"integer",
"null"
],
"minimum": 1,
"maximum": 100
},
"survivor_strategy": {
"enum": [
"newest",
"oldest"
]
},
"max_merge_users": {
"type": "integer",
"minimum": 2,
"maximum": 10
},
"rules": {
"type": "array",
"items": {
"type": "object",
"required": [
"field",
"enabled",
"required",
"weight"
],
"properties": {
"field": {
"enum": [
"gender",
"first_name",
"last_name",
"street",
"postcode",
"location",
"country",
"language",
"phone_number",
"email",
"company",
"data_1",
"data_2",
"data_3",
"data_4",
"data_5",
"data_6",
"data_7",
"data_8",
"data_9",
"data_10",
"data_11",
"data_12",
"data_13",
"data_14",
"data_15",
"data_16",
"data_17",
"data_18",
"data_19",
"data_20",
"data_21",
"data_22",
"data_23",
"data_24",
"data_25",
"data_26",
"data_27",
"data_28",
"data_29",
"data_30"
]
},
"enabled": {
"type": "boolean"
},
"required": {
"type": "boolean"
},
"weight": {
"type": "integer",
"minimum": 1,
"maximum": 10
}
},
"additionalProperties": false
}
},
"rules_hash": {
"type": "string",
"pattern": "^[a-f0-9]{64}$"
},
"matching_rules_hash": {
"type": "string",
"pattern": "^[a-f0-9]{64}$"
}
},
"additionalProperties": true,
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 321,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Userduplicatefunc.php",
"line": 28,
"sha256": "10da9ce285a01836c403fec784c04775e7713b8f0c61d49c21de38cf3f8ea157",
"reason": "Actual normalizeConfigForSave preserves unchanged rule hashes and normalizes current state."
},
{
"file": "application/models/v2/Userduplicatefunc.php",
"line": 40,
"sha256": "10da9ce285a01836c403fec784c04775e7713b8f0c61d49c21de38cf3f8ea157",
"reason": "Full known config defaults, coercion, clamping, hash/version semantics."
},
{
"file": "application/models/v2/Userduplicatefunc.php",
"line": 648,
"sha256": "10da9ce285a01836c403fec784c04775e7713b8f0c61d49c21de38cf3f8ea157",
"reason": "Rule filtering, uniqueness and weight normalization."
},
{
"file": "application/models/v2/Userduplicatefunc.php",
"line": 968,
"sha256": "10da9ce285a01836c403fec784c04775e7713b8f0c61d49c21de38cf3f8ea157",
"reason": "Allowed public data-field selectors for duplicate matching."
},
{
"file": "application/models/v2/Userduplicatefunc.php",
"line": 488,
"sha256": "10da9ce285a01836c403fec784c04775e7713b8f0c61d49c21de38cf3f8ea157",
"reason": "Changed matching rules invalidate derived duplicate data, not only the stored JSON."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"admin_avatar_mode": {
"enum": [
"face",
"symbol"
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 344,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"account_billing_recipient_type": {
"enum": [
"organization",
"billing_address",
"admin"
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 363,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"account_billing_recipient_email": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 390,
"type": "string"
},
"account_billing_recipient_admin_id": {
"anyOf": [
{
"type": "string",
"pattern": "^admin_[a-f0-9]{12}_(?:-35|[1-9][0-9]*)$",
"examples": [
"admin_012345abcdef_123456"
],
"description": "Canonical public admin v2 ID issued in this account; server validates the account-bound checksum and rejects raw IDs."
},
{
"const": false,
"x-edoobox-id-kind": "empty-relation"
}
],
"description": "Billing administrator as a public admin v2 ID; false when unset. Internal database primary keys are never serialized.",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 421,
"reason": "The corrected inbound getter accepts a canonical tenant-bound admin v2 reference and normalizes explicit clear sentinels; positive raw primary keys are rejected.",
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1"
},
{
"file": "application/models/v2/Settings.php",
"line": 437,
"reason": "The outbound setter encodes a positive database admin key as a public v2 ID and emits false for zero.",
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1"
},
{
"file": "application/models/v2/API_DATA.php",
"line": 1853,
"reason": "Join updates call the field getter before persisting; response serialization calls the field setter at line1068. Final joined writer rejects strict-false getters and unresolved/multi-join metadata before writes, anchors the joined row to the own parent (including account-key parents), and preserves constant join.where constraints as additional AND predicates. Join-only writes verify the own existing parent. Generic simple-owner hard/soft DELETE now verifies the own existing parent before hooks and repeats FID in DML; missing optional hook data no longer warns. Read, insert, signed authority and GET-effect classifications are unchanged.",
"sha256": "c0e15d26a7a4f3fb3c25e35557d4420ad395b2af3925caec292de08e32ebf44c"
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "ba623ac262f6f53eec7d494cd53d3c45f91f0eaa6e0d5757b869d71df6423aa5"
}
]
},
"account_billing_auto_charge_enabled": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 440,
"type": "boolean"
},
"account_billing_topup_enabled": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 459,
"type": "boolean"
},
"account_billing_topup_threshold": {
"type": "number",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 478,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"account_billing_topup_amount": {
"type": "number",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 497,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"internal_all": {
"type": "boolean",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 516,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Settingsfunc.php",
"line": 23,
"sha256": "7a289d246c7c6b70fd88c739a308a883f0f983913cc06f6e04b160792aef3c4f",
"reason": "Actual field hook handles loose truthiness and subscription verification."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"notification_minimummaximum": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 526,
"type": "boolean"
},
"notification_booking": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 535,
"type": "boolean"
},
"vat_included": {
"enum": [
"exclusive",
"including"
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 544,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"vat_reverse_charge_texts": {
"anyOf": [
{
"type": "object",
"additionalProperties": {
"type": "string"
}
},
{
"type": "array",
"maxItems": 0
},
{
"type": "null"
}
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 553,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/helpers/edooboxhelp_helper.php",
"line": 11560,
"sha256": "090d351b5bde81813c7a829bedf2f1f9f978fce5765f246989779f996198934e",
"reason": "Each recognized text is normalized by aP."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"offer_sort": {
"enum": [
"date",
"manual"
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 580,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"offer_func_1": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 589,
"type": "boolean"
},
"offer_func_1_status": {
"enum": [
3,
4
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 598,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"offer_archiving": {
"enum": [
1,
2,
3,
false
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 607,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"offer_archiving_reference_date": {
"enum": [
"start",
"visibility"
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 634,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"news_and_tricks": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 644,
"type": "boolean"
},
"booking_create_admin": {
"enum": [
1,
2,
false
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 653,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"booking_userlogin": {
"enum": [
1,
2,
3,
4
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 686,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"booking_login": {
"enum": [
1,
2,
3,
null
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 713,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"booking_login_global_users": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 738,
"type": "boolean"
},
"booking_cancellation": {
"enum": [
1,
2,
3,
4
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 757,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"booking_cancellation_admin_confirmation_mail": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 784,
"type": "boolean"
},
"booking_reservation": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 803,
"type": "boolean"
},
"booking_paymentpage": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 812,
"type": "boolean"
},
"booking_sendinfo": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 822,
"type": "boolean"
},
"booking_label_notifications": {
"type": "array",
"items": {
"type": "object",
"required": [
"label",
"email",
"emailtemplate"
],
"properties": {
"label": {
"type": "string",
"minLength": 1,
"maxLength": 15
},
"email": {
"type": "string"
},
"emailtemplate": {
"type": "string",
"pattern": "^emailtemplate_[a-f0-9]{12}_-?[0-9]+$"
}
},
"additionalProperties": false
},
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 831,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Settings.php",
"line": 3060,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Actual rule filtering and per-account template lookup."
},
{
"file": "application/models/v2/Settings.php",
"line": 3105,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Response filter emits typed public emailtemplate IDs."
},
{
"file": "application/models/v2/Settings.php",
"line": 3159,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Template must belong to the account and be an email template, not PDF."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"booking_send_pdf": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 850,
"type": "boolean"
},
"booking_send_ics": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 859,
"type": "boolean"
},
"booking_reminder": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 878,
"type": "boolean"
},
"booking_reminder_hours": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 887,
"type": "integer"
},
"booking_visitconfirmation": {
"enum": [
1,
2,
false
]
},
"booking_number": {
"type": "integer",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 937,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Settingsfunc.php",
"line": 288,
"sha256": "7a289d246c7c6b70fd88c739a308a883f0f983913cc06f6e04b160792aef3c4f",
"reason": "Actual hook range check and tenant-scoped uniqueness query."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"booking_cert_percent": {
"type": "integer",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 948,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"booking_cert_notvisitmail": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 975,
"type": "boolean"
},
"booking_cert_senddelayhours": {
"type": "integer",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 996,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"booking_cert_validation_url": {
"type": "boolean",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1024,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Settingsfunc.php",
"line": 40,
"sha256": "7a289d246c7c6b70fd88c739a308a883f0f983913cc06f6e04b160792aef3c4f",
"reason": "Actual field hook handles loose truthiness and subscription verification."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"booking_cert_attachpdf": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1046,
"type": "boolean"
},
"booking_cert_attachpdfpercent": {
"type": "integer",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1206,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"booking_cert_secondemail": {
"type": "boolean",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1094,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Settingsfunc.php",
"line": 641,
"sha256": "7a289d246c7c6b70fd88c739a308a883f0f983913cc06f6e04b160792aef3c4f",
"reason": "Actual conditional second-email flag hook; getter called explicitly and destination checked against stored settings."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"booking_cert_secondemail_field": {
"anyOf": [
{
"type": "string",
"enum": [
"status",
"gender",
"first_name",
"last_name",
"street",
"postcode",
"location",
"country",
"language",
"phone_number",
"email",
"company",
"data_1",
"data_2",
"data_3",
"data_4",
"data_5",
"data_6",
"data_7",
"data_8",
"data_9",
"data_10",
"data_11",
"data_12",
"data_13",
"data_14",
"data_15",
"data_16",
"data_17",
"data_18",
"data_19",
"data_20",
"data_21",
"data_22",
"data_23",
"data_24",
"data_25",
"data_26",
"data_27",
"data_28",
"data_29",
"data_30"
]
},
{
"const": false
},
{
"type": "null"
}
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1115,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Datastructure.php",
"line": 20,
"sha256": "256cfd2c1002e4708b342b6649fa6bfda780273306c30ae2a43d424fd0e2e6a8",
"reason": "Public field-key to storage-column map; this selector is not a database record ID."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"booking_secondemail": {
"type": "boolean",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1150,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Settingsfunc.php",
"line": 693,
"sha256": "7a289d246c7c6b70fd88c739a308a883f0f983913cc06f6e04b160792aef3c4f",
"reason": "Actual conditional second-email flag hook; getter called explicitly and destination checked against stored settings."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"booking_secondemail_field": {
"anyOf": [
{
"type": "string",
"enum": [
"status",
"gender",
"first_name",
"last_name",
"street",
"postcode",
"location",
"country",
"language",
"phone_number",
"email",
"company",
"data_1",
"data_2",
"data_3",
"data_4",
"data_5",
"data_6",
"data_7",
"data_8",
"data_9",
"data_10",
"data_11",
"data_12",
"data_13",
"data_14",
"data_15",
"data_16",
"data_17",
"data_18",
"data_19",
"data_20",
"data_21",
"data_22",
"data_23",
"data_24",
"data_25",
"data_26",
"data_27",
"data_28",
"data_29",
"data_30"
]
},
{
"const": false
},
{
"type": "null"
}
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1171,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Datastructure.php",
"line": 20,
"sha256": "256cfd2c1002e4708b342b6649fa6bfda780273306c30ae2a43d424fd0e2e6a8",
"reason": "Public field-key to storage-column map; this selector is not a database record ID."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"booking_offerlist_secondemail_field": {
"anyOf": [
{
"type": "string",
"enum": [
"status",
"gender",
"first_name",
"last_name",
"street",
"postcode",
"location",
"country",
"language",
"phone_number",
"email",
"company",
"data_1",
"data_2",
"data_3",
"data_4",
"data_5",
"data_6",
"data_7",
"data_8",
"data_9",
"data_10",
"data_11",
"data_12",
"data_13",
"data_14",
"data_15",
"data_16",
"data_17",
"data_18",
"data_19",
"data_20",
"data_21",
"data_22",
"data_23",
"data_24",
"data_25",
"data_26",
"data_27",
"data_28",
"data_29",
"data_30"
]
},
{
"const": false
},
{
"type": "null"
}
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1233,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Datastructure.php",
"line": 20,
"sha256": "256cfd2c1002e4708b342b6649fa6bfda780273306c30ae2a43d424fd0e2e6a8",
"reason": "Public field-key to storage-column map; this selector is not a database record ID."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"booking_offerlist_cancel_mail": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1268,
"type": "boolean"
},
"booking_allow_promotions": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1288,
"type": "boolean"
},
"booking_designation_promotions": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1297,
"type": "string"
},
"skip_counter": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1306,
"type": "integer"
},
"question_deliverables_show": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1316,
"type": "boolean"
},
"multi_offer_show": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1336,
"type": "boolean"
},
"multi_offer_child_limit": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1346,
"type": "integer"
},
"automatic_deletion": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1367
},
"edsupport_access": {
"type": "integer",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1395,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"payment_confirmation_mail": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1428,
"type": "boolean"
},
"barcode_type": {
"enum": [
"pdf417",
"qrcode",
"datamatrix"
]
},
"barcode_mobile_wallet": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1461,
"type": "boolean"
},
"mobile_wallet_background_color": {
"type": "string",
"pattern": "^#[0-9A-F]{6}$",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1470,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Settings.php",
"line": 3181,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Shared color normalizer returns uppercase hex or the field-specific fallback."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"mobile_wallet_foreground_color": {
"type": "string",
"pattern": "^(?:#[0-9A-F]{6})?$",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1479,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Settings.php",
"line": 3181,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Shared color normalizer returns uppercase hex or the field-specific fallback."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"mobile_wallet_use_offer_image": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1488,
"type": "boolean"
},
"mobile_wallet_fallback_image_url": {
"type": "string",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1497,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"mobile_wallet_display_name": {
"type": "string",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1506,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"mobile_wallet_support_url": {
"type": "string",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1515,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"barcode_ticket": {
"enum": [
false,
"always",
"offer"
]
},
"collective_booking_max": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1548,
"type": "integer"
},
"collective_booking_identify": {
"anyOf": [
{
"type": "string",
"enum": [
"status",
"gender",
"first_name",
"last_name",
"street",
"postcode",
"location",
"country",
"language",
"phone_number",
"email",
"company",
"data_1",
"data_2",
"data_3",
"data_4",
"data_5",
"data_6",
"data_7",
"data_8",
"data_9",
"data_10",
"data_11",
"data_12",
"data_13",
"data_14",
"data_15",
"data_16",
"data_17",
"data_18",
"data_19",
"data_20",
"data_21",
"data_22",
"data_23",
"data_24",
"data_25",
"data_26",
"data_27",
"data_28",
"data_29",
"data_30"
]
},
{
"const": false
},
{
"type": "null"
}
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1563,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Datastructure.php",
"line": 20,
"sha256": "256cfd2c1002e4708b342b6649fa6bfda780273306c30ae2a43d424fd0e2e6a8",
"reason": "Public field-key to storage-column map; this selector is not a database record ID."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"collective_booking_identify_privacy": {
"anyOf": [
{
"type": "string",
"enum": [
"status",
"gender",
"first_name",
"last_name",
"street",
"postcode",
"location",
"country",
"language",
"phone_number",
"email",
"company",
"data_1",
"data_2",
"data_3",
"data_4",
"data_5",
"data_6",
"data_7",
"data_8",
"data_9",
"data_10",
"data_11",
"data_12",
"data_13",
"data_14",
"data_15",
"data_16",
"data_17",
"data_18",
"data_19",
"data_20",
"data_21",
"data_22",
"data_23",
"data_24",
"data_25",
"data_26",
"data_27",
"data_28",
"data_29",
"data_30"
]
},
{
"const": false
},
{
"type": "null"
}
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1586,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Datastructure.php",
"line": 20,
"sha256": "256cfd2c1002e4708b342b6649fa6bfda780273306c30ae2a43d424fd0e2e6a8",
"reason": "Public field-key to storage-column map; this selector is not a database record ID."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"collective_booking_identify_obligatory": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1610,
"type": "boolean"
},
"collective_booking_master": {
"enum": [
"manual",
"all",
false
]
},
"security_headers_csp": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1654,
"type": "boolean"
},
"design_subcategory": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1699,
"type": "boolean"
},
"legaltext_atc": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1708,
"type": "boolean"
},
"legaltext_ri": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1717,
"type": "boolean"
},
"legaltext_pp": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1726,
"type": "boolean"
},
"attendance_config": {
"type": "array",
"items": {
"type": "object",
"properties": {
"status": {
"type": [
"integer",
"string"
],
"description": "The key is derived with an integer cast; stored status representation is preserved in the record."
},
"order": {
"type": "integer"
},
"counter": {},
"val": {},
"color": {},
"help": {},
"lock": {
"type": "boolean"
}
},
"additionalProperties": true,
"required": [
"status",
"order"
]
},
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settingsfunc.php",
"line": 153,
"reason": "PUT sorts the status-record array, casts status/order and normalizes counter.",
"sha256": "7a289d246c7c6b70fd88c739a308a883f0f983913cc06f6e04b160792aef3c4f"
},
{
"file": "application/models/v2/Settingsfunc.php",
"line": 208,
"reason": "Exactly three required-status occurrences are checked.",
"sha256": "7a289d246c7c6b70fd88c739a308a883f0f983913cc06f6e04b160792aef3c4f"
},
{
"file": "application/models/v2/Settings.php",
"line": 1739,
"reason": "Response returns ordered status records as a JSON array.",
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1"
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"language": {
"type": "object",
"properties": {
"languages": {
"type": "array",
"items": {
"type": "string"
}
},
"active": {
"type": [
"object",
"array"
]
},
"inactive": {
"type": [
"object",
"array"
]
}
},
"additionalProperties": true
},
"edsubscription": {
"type": "string",
"pattern": "^edsubscription_[a-f0-9]{12}_-?[0-9]+$",
"description": "Öffentliche v2-ID aus dem ausgewählten Account; keine interne Datenbank-ID."
},
"edsubscription_testinguntildate": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1786
},
"versions": {
"type": "object",
"properties": {},
"additionalProperties": true
},
"pdf_engine": {
"enum": [
1,
2,
null
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1821,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"pdf_edit_restriction_password": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1851,
"type": "boolean"
},
"pdf_paper_size": {
"type": "string",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1870,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "vendor/dompdf/dompdf/src/Adapter/CPDF.php",
"line": 42,
"sha256": "7dca4a096b08c006f12bfccd733068223d92e502b9a625c49bd919373f714001",
"reason": "Installed Dompdf paper-size key list, matched case-insensitively by the source getter."
},
{
"file": "application/models/v2/API_DATA.php",
"line": 1853,
"sha256": "c0e15d26a7a4f3fb3c25e35557d4420ad395b2af3925caec292de08e32ebf44c",
"reason": "Normal fields check strict false; joined fields instead collect getter output at 1793 and execute it at 1827 without that rejection. Final joined writer rejects strict-false getters and unresolved/multi-join metadata before writes, anchors the joined row to the own parent (including account-key parents), and preserves constant join.where constraints as additional AND predicates. Join-only writes verify the own existing parent. Generic simple-owner hard/soft DELETE now verifies the own existing parent before hooks and repeats FID in DML; missing optional hook data no longer warns. Read, insert, signed authority and GET-effect classifications are unchanged."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"pdf_custom_css": {
"type": "string",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1892,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/libraries/edoobox/integrations/pdf/Pdf.php",
"line": 16,
"sha256": "b286cdc4d20e02601db9acc35b06564357f10378961e72cb8f4e22e64b3a3254",
"reason": "Allowed PDF font keys used by the CSS normalizer."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"dinaco_client_id": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1960,
"type": "string"
},
"dinaco_client_secret": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1979,
"x-edoobox-sensitive": true
},
"gtm_mess_id": {
"type": "string",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1998,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/helpers/edooboxhelp_helper.php",
"line": 11560,
"sha256": "090d351b5bde81813c7a829bedf2f1f9f978fce5765f246989779f996198934e",
"reason": "aP normalization after the substring test."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"gtm_container_id": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 2024,
"type": "string"
},
"meta_html": {
"type": "string",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 2044,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"system_attachments_file_naming": {
"anyOf": [
{
"type": "object",
"properties": {},
"additionalProperties": {
"type": "object",
"properties": {},
"additionalProperties": {
"type": "string"
}
}
},
{
"type": "array",
"maxItems": 0
}
],
"description": "Associative map, or [] when there are no naming rules.",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 2076,
"reason": "Input iterates template/ics keys and language-to-name objects; edid occurs on map keys.",
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1"
},
{
"file": "application/models/v2/Settings.php",
"line": 2106,
"reason": "Response maps stored keys back to public emailtemplate IDs or ics.",
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1"
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"website_integration": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 2132
},
"website_url": {
"type": "string",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 2159,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/API_DATA.php",
"line": 1853,
"sha256": "c0e15d26a7a4f3fb3c25e35557d4420ad395b2af3925caec292de08e32ebf44c",
"reason": "Strict false getter rejects invalid URL inputs. Final joined writer rejects strict-false getters and unresolved/multi-join metadata before writes, anchors the joined row to the own parent (including account-key parents), and preserves constant join.where constraints as additional AND predicates. Join-only writes verify the own existing parent. Generic simple-owner hard/soft DELETE now verifies the own existing parent before hooks and repeats FID in DML; missing optional hook data no longer warns. Read, insert, signed authority and GET-effect classifications are unchanged."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"admin_custom_permissions": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 2172,
"type": "boolean"
},
"admin_academic_title_use": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 2192,
"type": "boolean"
},
"root_archive": {
"type": "string",
"pattern": "^category_[a-f0-9]{12}_-?[0-9]+$",
"description": "Öffentliche v2-ID aus dem ausgewählten Account; keine interne Datenbank-ID."
},
"root_trash": {
"type": "string",
"pattern": "^category_[a-f0-9]{12}_-?[0-9]+$",
"description": "Öffentliche v2-ID aus dem ausgewählten Account; keine interne Datenbank-ID."
},
"user_currencys": {
"type": "array",
"items": {
"type": "string"
}
},
"stripe_public_key": {
"type": [
"string",
"boolean"
]
}
},
"additionalProperties": true
}
],
"description": "Einzelnes Account-Einstellungsobjekt; auch die Listenroute reduziert auf das erste gefundene Objekt."
},
"type": {
"type": "string"
}
},
"additionalProperties": true
}Beispiel
{
"success": true,
"error": false,
"data": {
"id": "account_012345abcdef_123456",
"organization_name": "Beispielorganisation",
"organization_language": "de",
"root_archive": "category_012345abcdef_123456",
"root_trash": "category_012345abcdef_123456",
"language": {
"languages": [
"Deutsch",
"English"
],
"active": [
"de"
],
"inactive": [
"en"
]
},
"user_currencys": [
"CHF"
],
"account_billing_recipient_admin_id": false
},
"limit": {
"start": 0,
"reply": 100,
"total": 1
}
}400application/json
Invalid request.
application/json
Kein Schema angegeben. Daraus lässt sich kein vollständiger Feldvertrag ableiten.
Beispiel
{
"success": false,
"error": "ED40006"
}401application/json
Missing/expired token, missing account context, account paused or model-specific authorization failure.
application/json
Kein Schema angegeben. Daraus lässt sich kein vollständiger Feldvertrag ableiten.
Beispiel
{
"success": false,
"error": "ED40103"
}402application/json
Missing/invalid action data or subscription/operation restriction.
application/json
Kein Schema angegeben. Daraus lässt sich kein vollständiger Feldvertrag ableiten.
Beispiel
{
"success": false,
"error": "ED80100"
}403application/json
Permission denied. Browser CORS rejection may have an empty body.
application/json
Kein Schema angegeben. Daraus lässt sich kein vollständiger Feldvertrag ableiten.
Beispiel
{
"success": false,
"error": "ED40340"
}404application/json
Unknown resource/action or unsupported method.
application/json
Kein Schema angegeben. Daraus lässt sich kein vollständiger Feldvertrag ableiten.
Beispiel
{
"success": false,
"error": "ED80019"
}422application/json
Validation failed.
application/json
Kein Schema angegeben. Daraus lässt sich kein vollständiger Feldvertrag ableiten.
Beispiel
{
"success": false,
"error": "ED80020"
}429application/json
Request/login rate limit exceeded. Honor Retry-After when supplied; legacy rate-limit paths may omit it. Retry only proven reads within a bounded deadline; a mutation is never automatically replayed after an ambiguous response.
Response Header
Retry-After
Optional server delay in whole seconds or an HTTP date. Absence is not permission for an immediate retry.
Schema-Beispiel
"30"Vollständiges Schema als JSON
{
"type": "string",
"examples": [
"30"
]
}application/json
Kein Schema angegeben. Daraus lässt sich kein vollständiger Feldvertrag ableiten.
Beispiel
{
"success": false,
"error": "ED42902"
}502application/json
Server-side operation failed.
application/json
Kein Schema angegeben. Daraus lässt sich kein vollständiger Feldvertrag ableiten.
Beispiel
{
"success": false,
"error": "ED50201"
}Quelle & Metadaten
application/models/v2/Settings.php:2408getSettings()Diese Angaben stammen unverändert aus der gelieferten OpenAPI-Datei. Zusätzliche Freigaben, Vorbedingungen, sensible Felder und Hinweise stehen in den Erweiterungen.
x-edoobox-mutates-state
truex-edoobox-sensitiveResponseFields
[
"dinaco_client_secret"
]x-edoobox-runtimeMutationGuard
falsex-edoobox-get-effect
"maintenance"x-edoobox-documentationReview
{
"file": "docs/openapi/operation-contracts/06-admin-settings.json",
"notes": []
}x-edoobox-source
{
"file": "application/models/v2/Settings.php",
"method": "getSettings",
"line": 2408
}x-edoobox-documentationStatus
"reviewed"x-edoobox-readOnly
falsex-edoobox-safeForAutomation
falsex-edoobox-permission
{
"resource": "settings",
"short": "setti",
"checkedByDispatcher": true,
"levels": [
1,
3,
4
],
"description": "Resource permission mapping from APIPermissions(), Authfunc::_getCheckJWT. Additional model/admin/plugin checks may apply; resources absent from api_permission do not acquire a fictitious scope."
}Vollständige Operation als JSON
{
"operationId": "get_v2_settings_id",
"summary": "Account-Einstellungen abrufen",
"description": "Liest die zentralen Einstellungen des ausgewählten Accounts sowie Sprachen, Archiv-/Papierkorb-IDs, Währungen, Abonnement- und Versionsinformationen. Die Antwort reduziert die generische Auswahl auf das erste gefundene Einstellungsobjekt und ergänzt Account-Metadaten. Bei Bedarf werden Versions-Caches für Admin-Konfigurationsvorlagen und Mehrwertsteuer befüllt. Keine Zugangsdaten aus der Antwort veröffentlichen.",
"tags": [
"settings"
],
"security": [
{
"bearerAuth": [],
"accountContext": []
},
{
"sessionCookie": [],
"accountContext": []
}
],
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"description": "Öffentliche Account-ID aus den Einstellungen.",
"schema": {
"type": "string",
"pattern": "^account_[a-f0-9]{12}_-?[0-9]+$",
"description": "Öffentliche v2-ID aus dem ausgewählten Account; keine interne Datenbank-ID.",
"examples": [
"account_012345abcdef_123456"
]
}
},
{
"name": "fields",
"in": "query",
"required": false,
"description": "JSON-encoded fields value consumed by RequestAPIData / API_DATA; specific actions may ignore it.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "string"
},
"examples": [
[
"id"
]
]
},
"example": [
"id"
]
}
}
},
{
"name": "filter",
"in": "query",
"required": false,
"description": "JSON-encoded filter value consumed by RequestAPIData / API_DATA; specific actions may ignore it.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"properties": {
"property": {
"type": "string"
},
"expression": {
"type": "string"
},
"value": {}
},
"additionalProperties": true
},
"examples": [
[
{
"property": "id",
"expression": "=",
"value": "settings_012345abcdef_123456"
}
]
]
},
"example": [
{
"property": "id",
"expression": "=",
"value": "settings_012345abcdef_123456"
}
]
}
}
},
{
"name": "limit",
"in": "query",
"required": false,
"description": "JSON-encoded limit value consumed by RequestAPIData / API_DATA; specific actions may ignore it.",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"start": {
"type": "integer",
"minimum": 0,
"default": 0
},
"reply": {
"type": "integer",
"maximum": 2000,
"default": 100
}
},
"examples": [
{
"start": 0,
"reply": 25
}
]
},
"example": {
"start": 0,
"reply": 25
}
}
}
},
{
"name": "order",
"in": "query",
"required": false,
"description": "JSON-encoded order value consumed by RequestAPIData / API_DATA; specific actions may ignore it.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"properties": {
"property": {
"type": "string"
},
"value": {
"type": "string",
"enum": [
"ASC",
"DESC"
]
}
},
"additionalProperties": true
},
"examples": [
[
{
"property": "id",
"value": "ASC"
}
]
]
},
"example": [
{
"property": "id",
"value": "ASC"
}
]
}
}
},
{
"name": "response_type",
"in": "query",
"required": false,
"schema": {
"type": "string",
"enum": [
"array",
"object"
],
"examples": [
"array"
]
},
"description": "Controls generic collection representation; default is an ID-keyed object."
},
{
"name": "language",
"in": "header",
"required": false,
"description": "Account language code, where the resource supports setLanguage().",
"schema": {
"type": "string",
"examples": [
"de"
]
}
}
],
"responses": {
"200": {
"description": "Ein einzelnes Einstellungsobjekt mit zusätzlichen Account-Metadaten, auch bei /list.",
"content": {
"application/json": {
"example": {
"success": true,
"error": false,
"data": {
"id": "account_012345abcdef_123456",
"organization_name": "Beispielorganisation",
"organization_language": "de",
"root_archive": "category_012345abcdef_123456",
"root_trash": "category_012345abcdef_123456",
"language": {
"languages": [
"Deutsch",
"English"
],
"active": [
"de"
],
"inactive": [
"en"
]
},
"user_currencys": [
"CHF"
],
"account_billing_recipient_admin_id": false
},
"limit": {
"start": 0,
"reply": 100,
"total": 1
}
},
"schema": {
"type": "object",
"properties": {
"success": {
"type": "boolean"
},
"error": {
"type": [
"boolean",
"string"
]
},
"error_code": {
"type": "string"
},
"data": {
"anyOf": [
{
"type": "object",
"properties": {
"id": {
"type": "string",
"pattern": "^[a-z0-9]+_[a-f0-9]{12}_-?[0-9]+$",
"description": "Opaque edoobox v2 object ID returned by this account. Never send a raw database ID. The synthetic example is illustrative and is not a real record.",
"examples": [
"settings_012345abcdef_123456"
]
},
"firstweekday": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 44,
"type": "integer"
},
"format_date": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 53,
"type": "integer"
},
"format_time": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 62,
"type": "integer"
},
"format_calendar_grid": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 71,
"type": "integer"
},
"format_timezone": {
"type": "string",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settingsfunc.php",
"line": 5,
"reason": "PUT consumes a zone-name string instead of the integer get placeholder.",
"sha256": "7a289d246c7c6b70fd88c739a308a883f0f983913cc06f6e04b160792aef3c4f"
},
{
"file": "application/models/v2/Settings.php",
"line": 85,
"reason": "Response returns the account timezone zone_name.",
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1"
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"congress_module": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 102,
"type": "boolean"
},
"format_number": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 112,
"type": "integer"
},
"design": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 121,
"anyOf": [
{
"type": "string",
"pattern": "^[a-z0-9]+_[a-f0-9]{12}_-?[0-9]+$",
"description": "Opaque edoobox v2 object ID returned by this account. Never send a raw database ID. The synthetic example is illustrative and is not a real record.",
"examples": [
"design_012345abcdef_123456"
]
},
{
"const": false
},
{
"type": "null"
}
]
},
"root_category": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 130,
"anyOf": [
{
"type": "string",
"pattern": "^[a-z0-9]+_[a-f0-9]{12}_-?[0-9]+$",
"description": "Opaque edoobox v2 object ID returned by this account. Never send a raw database ID. The synthetic example is illustrative and is not a real record.",
"examples": [
"rootcategory_012345abcdef_123456"
]
},
{
"const": false
},
{
"type": "null"
}
]
},
"shortcut": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 140,
"type": "string"
},
"organization_name": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 150,
"type": "string"
},
"organization_contactperson": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 159,
"type": "string"
},
"organization_street": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 168,
"type": "string"
},
"organization_postcode": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 177,
"type": "string"
},
"organization_town": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 186,
"type": "string"
},
"organization_country": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 195,
"anyOf": [
{
"type": "string",
"pattern": "^[a-z0-9]+_[a-f0-9]{12}_-?[0-9]+$",
"description": "Opaque edoobox v2 object ID returned by this account. Never send a raw database ID. The synthetic example is illustrative and is not a real record.",
"examples": [
"organizationcountry_012345abcdef_123456"
]
},
{
"const": false
},
{
"type": "null"
}
]
},
"organization_language": {
"type": [
"string",
"null"
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 205,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/helpers/langedoobox_helper.php",
"line": 731,
"sha256": "6454b27d47a74f3cf236ef8e258fbe821228c1607165d00433a309b2e9127d3c",
"reason": "edLangIDByName returns configured entry, with fallback for unknown names."
},
{
"file": "application/helpers/langedoobox_helper.php",
"line": 566,
"sha256": "6454b27d47a74f3cf236ef8e258fbe821228c1607165d00433a309b2e9127d3c",
"reason": "edLangById converts internal entries back to public language keys."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"organization_phone": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 214,
"type": "string"
},
"organization_url": {
"type": "string",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 223,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/helpers/edooboxhelp_helper.php",
"line": 11560,
"sha256": "090d351b5bde81813c7a829bedf2f1f9f978fce5765f246989779f996198934e",
"reason": "aP text storage normalization."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"organization_email": {
"type": "string",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settingsfunc.php",
"line": 57,
"reason": "PUT callback validates the trimmed email syntax, checks raw and encoded lengths, and requires an exact aP/aQ identity before returning storage. False is rejected by generic update as ED90100 before a write.",
"sha256": "7a289d246c7c6b70fd88c739a308a883f0f983913cc06f6e04b160792aef3c4f",
"lineEnd": 75
},
{
"file": "application/models/v2/Settings.php",
"line": 237,
"reason": "Incoming model getter is bounded to200 characters; generic PUT uses the dedicated validation hook; response unescapes stored text.",
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"lineEnd": 246
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"organization_currency": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 247,
"type": "string"
},
"billingaddress_organization": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 257,
"type": "string"
},
"billingaddress_user": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 266,
"type": "string"
},
"billingaddress_street": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 275,
"type": "string"
},
"billingaddress_postcode_town": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 284,
"type": "string"
},
"billingaddress_phone": {
"type": "string",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 293,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/helpers/edooboxhelp_helper.php",
"line": 11560,
"sha256": "090d351b5bde81813c7a829bedf2f1f9f978fce5765f246989779f996198934e",
"reason": "Actual aP string-only/truncating storage normalization."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"billingaddress_email": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 303,
"type": "string"
},
"billingaddress_status": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 312,
"type": "boolean"
},
"user_duplicate_config": {
"type": "object",
"required": [
"version",
"enabled",
"candidate_threshold",
"auto_merge_threshold",
"survivor_strategy",
"max_merge_users",
"rules",
"rules_hash",
"matching_rules_hash"
],
"properties": {
"version": {
"const": 2
},
"enabled": {
"type": "boolean"
},
"candidate_threshold": {
"type": "integer",
"minimum": 0,
"maximum": 100
},
"auto_merge_threshold": {
"type": [
"integer",
"null"
],
"minimum": 1,
"maximum": 100
},
"survivor_strategy": {
"enum": [
"newest",
"oldest"
]
},
"max_merge_users": {
"type": "integer",
"minimum": 2,
"maximum": 10
},
"rules": {
"type": "array",
"items": {
"type": "object",
"required": [
"field",
"enabled",
"required",
"weight"
],
"properties": {
"field": {
"enum": [
"gender",
"first_name",
"last_name",
"street",
"postcode",
"location",
"country",
"language",
"phone_number",
"email",
"company",
"data_1",
"data_2",
"data_3",
"data_4",
"data_5",
"data_6",
"data_7",
"data_8",
"data_9",
"data_10",
"data_11",
"data_12",
"data_13",
"data_14",
"data_15",
"data_16",
"data_17",
"data_18",
"data_19",
"data_20",
"data_21",
"data_22",
"data_23",
"data_24",
"data_25",
"data_26",
"data_27",
"data_28",
"data_29",
"data_30"
]
},
"enabled": {
"type": "boolean"
},
"required": {
"type": "boolean"
},
"weight": {
"type": "integer",
"minimum": 1,
"maximum": 10
}
},
"additionalProperties": false
}
},
"rules_hash": {
"type": "string",
"pattern": "^[a-f0-9]{64}$"
},
"matching_rules_hash": {
"type": "string",
"pattern": "^[a-f0-9]{64}$"
}
},
"additionalProperties": true,
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 321,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Userduplicatefunc.php",
"line": 28,
"sha256": "10da9ce285a01836c403fec784c04775e7713b8f0c61d49c21de38cf3f8ea157",
"reason": "Actual normalizeConfigForSave preserves unchanged rule hashes and normalizes current state."
},
{
"file": "application/models/v2/Userduplicatefunc.php",
"line": 40,
"sha256": "10da9ce285a01836c403fec784c04775e7713b8f0c61d49c21de38cf3f8ea157",
"reason": "Full known config defaults, coercion, clamping, hash/version semantics."
},
{
"file": "application/models/v2/Userduplicatefunc.php",
"line": 648,
"sha256": "10da9ce285a01836c403fec784c04775e7713b8f0c61d49c21de38cf3f8ea157",
"reason": "Rule filtering, uniqueness and weight normalization."
},
{
"file": "application/models/v2/Userduplicatefunc.php",
"line": 968,
"sha256": "10da9ce285a01836c403fec784c04775e7713b8f0c61d49c21de38cf3f8ea157",
"reason": "Allowed public data-field selectors for duplicate matching."
},
{
"file": "application/models/v2/Userduplicatefunc.php",
"line": 488,
"sha256": "10da9ce285a01836c403fec784c04775e7713b8f0c61d49c21de38cf3f8ea157",
"reason": "Changed matching rules invalidate derived duplicate data, not only the stored JSON."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"admin_avatar_mode": {
"enum": [
"face",
"symbol"
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 344,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"account_billing_recipient_type": {
"enum": [
"organization",
"billing_address",
"admin"
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 363,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"account_billing_recipient_email": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 390,
"type": "string"
},
"account_billing_recipient_admin_id": {
"anyOf": [
{
"type": "string",
"pattern": "^admin_[a-f0-9]{12}_(?:-35|[1-9][0-9]*)$",
"examples": [
"admin_012345abcdef_123456"
],
"description": "Canonical public admin v2 ID issued in this account; server validates the account-bound checksum and rejects raw IDs."
},
{
"const": false,
"x-edoobox-id-kind": "empty-relation"
}
],
"description": "Billing administrator as a public admin v2 ID; false when unset. Internal database primary keys are never serialized.",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 421,
"reason": "The corrected inbound getter accepts a canonical tenant-bound admin v2 reference and normalizes explicit clear sentinels; positive raw primary keys are rejected.",
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1"
},
{
"file": "application/models/v2/Settings.php",
"line": 437,
"reason": "The outbound setter encodes a positive database admin key as a public v2 ID and emits false for zero.",
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1"
},
{
"file": "application/models/v2/API_DATA.php",
"line": 1853,
"reason": "Join updates call the field getter before persisting; response serialization calls the field setter at line1068. Final joined writer rejects strict-false getters and unresolved/multi-join metadata before writes, anchors the joined row to the own parent (including account-key parents), and preserves constant join.where constraints as additional AND predicates. Join-only writes verify the own existing parent. Generic simple-owner hard/soft DELETE now verifies the own existing parent before hooks and repeats FID in DML; missing optional hook data no longer warns. Read, insert, signed authority and GET-effect classifications are unchanged.",
"sha256": "c0e15d26a7a4f3fb3c25e35557d4420ad395b2af3925caec292de08e32ebf44c"
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "ba623ac262f6f53eec7d494cd53d3c45f91f0eaa6e0d5757b869d71df6423aa5"
}
]
},
"account_billing_auto_charge_enabled": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 440,
"type": "boolean"
},
"account_billing_topup_enabled": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 459,
"type": "boolean"
},
"account_billing_topup_threshold": {
"type": "number",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 478,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"account_billing_topup_amount": {
"type": "number",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 497,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"internal_all": {
"type": "boolean",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 516,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Settingsfunc.php",
"line": 23,
"sha256": "7a289d246c7c6b70fd88c739a308a883f0f983913cc06f6e04b160792aef3c4f",
"reason": "Actual field hook handles loose truthiness and subscription verification."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"notification_minimummaximum": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 526,
"type": "boolean"
},
"notification_booking": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 535,
"type": "boolean"
},
"vat_included": {
"enum": [
"exclusive",
"including"
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 544,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"vat_reverse_charge_texts": {
"anyOf": [
{
"type": "object",
"additionalProperties": {
"type": "string"
}
},
{
"type": "array",
"maxItems": 0
},
{
"type": "null"
}
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 553,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/helpers/edooboxhelp_helper.php",
"line": 11560,
"sha256": "090d351b5bde81813c7a829bedf2f1f9f978fce5765f246989779f996198934e",
"reason": "Each recognized text is normalized by aP."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"offer_sort": {
"enum": [
"date",
"manual"
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 580,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"offer_func_1": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 589,
"type": "boolean"
},
"offer_func_1_status": {
"enum": [
3,
4
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 598,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"offer_archiving": {
"enum": [
1,
2,
3,
false
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 607,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"offer_archiving_reference_date": {
"enum": [
"start",
"visibility"
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 634,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"news_and_tricks": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 644,
"type": "boolean"
},
"booking_create_admin": {
"enum": [
1,
2,
false
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 653,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"booking_userlogin": {
"enum": [
1,
2,
3,
4
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 686,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"booking_login": {
"enum": [
1,
2,
3,
null
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 713,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"booking_login_global_users": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 738,
"type": "boolean"
},
"booking_cancellation": {
"enum": [
1,
2,
3,
4
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 757,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"booking_cancellation_admin_confirmation_mail": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 784,
"type": "boolean"
},
"booking_reservation": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 803,
"type": "boolean"
},
"booking_paymentpage": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 812,
"type": "boolean"
},
"booking_sendinfo": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 822,
"type": "boolean"
},
"booking_label_notifications": {
"type": "array",
"items": {
"type": "object",
"required": [
"label",
"email",
"emailtemplate"
],
"properties": {
"label": {
"type": "string",
"minLength": 1,
"maxLength": 15
},
"email": {
"type": "string"
},
"emailtemplate": {
"type": "string",
"pattern": "^emailtemplate_[a-f0-9]{12}_-?[0-9]+$"
}
},
"additionalProperties": false
},
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 831,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Settings.php",
"line": 3060,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Actual rule filtering and per-account template lookup."
},
{
"file": "application/models/v2/Settings.php",
"line": 3105,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Response filter emits typed public emailtemplate IDs."
},
{
"file": "application/models/v2/Settings.php",
"line": 3159,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Template must belong to the account and be an email template, not PDF."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"booking_send_pdf": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 850,
"type": "boolean"
},
"booking_send_ics": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 859,
"type": "boolean"
},
"booking_reminder": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 878,
"type": "boolean"
},
"booking_reminder_hours": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 887,
"type": "integer"
},
"booking_visitconfirmation": {
"enum": [
1,
2,
false
]
},
"booking_number": {
"type": "integer",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 937,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Settingsfunc.php",
"line": 288,
"sha256": "7a289d246c7c6b70fd88c739a308a883f0f983913cc06f6e04b160792aef3c4f",
"reason": "Actual hook range check and tenant-scoped uniqueness query."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"booking_cert_percent": {
"type": "integer",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 948,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"booking_cert_notvisitmail": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 975,
"type": "boolean"
},
"booking_cert_senddelayhours": {
"type": "integer",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 996,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"booking_cert_validation_url": {
"type": "boolean",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1024,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Settingsfunc.php",
"line": 40,
"sha256": "7a289d246c7c6b70fd88c739a308a883f0f983913cc06f6e04b160792aef3c4f",
"reason": "Actual field hook handles loose truthiness and subscription verification."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"booking_cert_attachpdf": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1046,
"type": "boolean"
},
"booking_cert_attachpdfpercent": {
"type": "integer",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1206,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"booking_cert_secondemail": {
"type": "boolean",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1094,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Settingsfunc.php",
"line": 641,
"sha256": "7a289d246c7c6b70fd88c739a308a883f0f983913cc06f6e04b160792aef3c4f",
"reason": "Actual conditional second-email flag hook; getter called explicitly and destination checked against stored settings."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"booking_cert_secondemail_field": {
"anyOf": [
{
"type": "string",
"enum": [
"status",
"gender",
"first_name",
"last_name",
"street",
"postcode",
"location",
"country",
"language",
"phone_number",
"email",
"company",
"data_1",
"data_2",
"data_3",
"data_4",
"data_5",
"data_6",
"data_7",
"data_8",
"data_9",
"data_10",
"data_11",
"data_12",
"data_13",
"data_14",
"data_15",
"data_16",
"data_17",
"data_18",
"data_19",
"data_20",
"data_21",
"data_22",
"data_23",
"data_24",
"data_25",
"data_26",
"data_27",
"data_28",
"data_29",
"data_30"
]
},
{
"const": false
},
{
"type": "null"
}
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1115,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Datastructure.php",
"line": 20,
"sha256": "256cfd2c1002e4708b342b6649fa6bfda780273306c30ae2a43d424fd0e2e6a8",
"reason": "Public field-key to storage-column map; this selector is not a database record ID."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"booking_secondemail": {
"type": "boolean",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1150,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Settingsfunc.php",
"line": 693,
"sha256": "7a289d246c7c6b70fd88c739a308a883f0f983913cc06f6e04b160792aef3c4f",
"reason": "Actual conditional second-email flag hook; getter called explicitly and destination checked against stored settings."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"booking_secondemail_field": {
"anyOf": [
{
"type": "string",
"enum": [
"status",
"gender",
"first_name",
"last_name",
"street",
"postcode",
"location",
"country",
"language",
"phone_number",
"email",
"company",
"data_1",
"data_2",
"data_3",
"data_4",
"data_5",
"data_6",
"data_7",
"data_8",
"data_9",
"data_10",
"data_11",
"data_12",
"data_13",
"data_14",
"data_15",
"data_16",
"data_17",
"data_18",
"data_19",
"data_20",
"data_21",
"data_22",
"data_23",
"data_24",
"data_25",
"data_26",
"data_27",
"data_28",
"data_29",
"data_30"
]
},
{
"const": false
},
{
"type": "null"
}
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1171,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Datastructure.php",
"line": 20,
"sha256": "256cfd2c1002e4708b342b6649fa6bfda780273306c30ae2a43d424fd0e2e6a8",
"reason": "Public field-key to storage-column map; this selector is not a database record ID."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"booking_offerlist_secondemail_field": {
"anyOf": [
{
"type": "string",
"enum": [
"status",
"gender",
"first_name",
"last_name",
"street",
"postcode",
"location",
"country",
"language",
"phone_number",
"email",
"company",
"data_1",
"data_2",
"data_3",
"data_4",
"data_5",
"data_6",
"data_7",
"data_8",
"data_9",
"data_10",
"data_11",
"data_12",
"data_13",
"data_14",
"data_15",
"data_16",
"data_17",
"data_18",
"data_19",
"data_20",
"data_21",
"data_22",
"data_23",
"data_24",
"data_25",
"data_26",
"data_27",
"data_28",
"data_29",
"data_30"
]
},
{
"const": false
},
{
"type": "null"
}
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1233,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Datastructure.php",
"line": 20,
"sha256": "256cfd2c1002e4708b342b6649fa6bfda780273306c30ae2a43d424fd0e2e6a8",
"reason": "Public field-key to storage-column map; this selector is not a database record ID."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"booking_offerlist_cancel_mail": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1268,
"type": "boolean"
},
"booking_allow_promotions": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1288,
"type": "boolean"
},
"booking_designation_promotions": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1297,
"type": "string"
},
"skip_counter": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1306,
"type": "integer"
},
"question_deliverables_show": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1316,
"type": "boolean"
},
"multi_offer_show": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1336,
"type": "boolean"
},
"multi_offer_child_limit": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1346,
"type": "integer"
},
"automatic_deletion": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1367
},
"edsupport_access": {
"type": "integer",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1395,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"payment_confirmation_mail": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1428,
"type": "boolean"
},
"barcode_type": {
"enum": [
"pdf417",
"qrcode",
"datamatrix"
]
},
"barcode_mobile_wallet": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1461,
"type": "boolean"
},
"mobile_wallet_background_color": {
"type": "string",
"pattern": "^#[0-9A-F]{6}$",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1470,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Settings.php",
"line": 3181,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Shared color normalizer returns uppercase hex or the field-specific fallback."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"mobile_wallet_foreground_color": {
"type": "string",
"pattern": "^(?:#[0-9A-F]{6})?$",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1479,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Settings.php",
"line": 3181,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Shared color normalizer returns uppercase hex or the field-specific fallback."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"mobile_wallet_use_offer_image": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1488,
"type": "boolean"
},
"mobile_wallet_fallback_image_url": {
"type": "string",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1497,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"mobile_wallet_display_name": {
"type": "string",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1506,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"mobile_wallet_support_url": {
"type": "string",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1515,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"barcode_ticket": {
"enum": [
false,
"always",
"offer"
]
},
"collective_booking_max": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1548,
"type": "integer"
},
"collective_booking_identify": {
"anyOf": [
{
"type": "string",
"enum": [
"status",
"gender",
"first_name",
"last_name",
"street",
"postcode",
"location",
"country",
"language",
"phone_number",
"email",
"company",
"data_1",
"data_2",
"data_3",
"data_4",
"data_5",
"data_6",
"data_7",
"data_8",
"data_9",
"data_10",
"data_11",
"data_12",
"data_13",
"data_14",
"data_15",
"data_16",
"data_17",
"data_18",
"data_19",
"data_20",
"data_21",
"data_22",
"data_23",
"data_24",
"data_25",
"data_26",
"data_27",
"data_28",
"data_29",
"data_30"
]
},
{
"const": false
},
{
"type": "null"
}
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1563,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Datastructure.php",
"line": 20,
"sha256": "256cfd2c1002e4708b342b6649fa6bfda780273306c30ae2a43d424fd0e2e6a8",
"reason": "Public field-key to storage-column map; this selector is not a database record ID."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"collective_booking_identify_privacy": {
"anyOf": [
{
"type": "string",
"enum": [
"status",
"gender",
"first_name",
"last_name",
"street",
"postcode",
"location",
"country",
"language",
"phone_number",
"email",
"company",
"data_1",
"data_2",
"data_3",
"data_4",
"data_5",
"data_6",
"data_7",
"data_8",
"data_9",
"data_10",
"data_11",
"data_12",
"data_13",
"data_14",
"data_15",
"data_16",
"data_17",
"data_18",
"data_19",
"data_20",
"data_21",
"data_22",
"data_23",
"data_24",
"data_25",
"data_26",
"data_27",
"data_28",
"data_29",
"data_30"
]
},
{
"const": false
},
{
"type": "null"
}
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1586,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/Datastructure.php",
"line": 20,
"sha256": "256cfd2c1002e4708b342b6649fa6bfda780273306c30ae2a43d424fd0e2e6a8",
"reason": "Public field-key to storage-column map; this selector is not a database record ID."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"collective_booking_identify_obligatory": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1610,
"type": "boolean"
},
"collective_booking_master": {
"enum": [
"manual",
"all",
false
]
},
"security_headers_csp": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1654,
"type": "boolean"
},
"design_subcategory": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1699,
"type": "boolean"
},
"legaltext_atc": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1708,
"type": "boolean"
},
"legaltext_ri": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1717,
"type": "boolean"
},
"legaltext_pp": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1726,
"type": "boolean"
},
"attendance_config": {
"type": "array",
"items": {
"type": "object",
"properties": {
"status": {
"type": [
"integer",
"string"
],
"description": "The key is derived with an integer cast; stored status representation is preserved in the record."
},
"order": {
"type": "integer"
},
"counter": {},
"val": {},
"color": {},
"help": {},
"lock": {
"type": "boolean"
}
},
"additionalProperties": true,
"required": [
"status",
"order"
]
},
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settingsfunc.php",
"line": 153,
"reason": "PUT sorts the status-record array, casts status/order and normalizes counter.",
"sha256": "7a289d246c7c6b70fd88c739a308a883f0f983913cc06f6e04b160792aef3c4f"
},
{
"file": "application/models/v2/Settingsfunc.php",
"line": 208,
"reason": "Exactly three required-status occurrences are checked.",
"sha256": "7a289d246c7c6b70fd88c739a308a883f0f983913cc06f6e04b160792aef3c4f"
},
{
"file": "application/models/v2/Settings.php",
"line": 1739,
"reason": "Response returns ordered status records as a JSON array.",
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1"
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"language": {
"type": "object",
"properties": {
"languages": {
"type": "array",
"items": {
"type": "string"
}
},
"active": {
"type": [
"object",
"array"
]
},
"inactive": {
"type": [
"object",
"array"
]
}
},
"additionalProperties": true
},
"edsubscription": {
"type": "string",
"pattern": "^edsubscription_[a-f0-9]{12}_-?[0-9]+$",
"description": "Öffentliche v2-ID aus dem ausgewählten Account; keine interne Datenbank-ID."
},
"edsubscription_testinguntildate": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1786
},
"versions": {
"type": "object",
"properties": {},
"additionalProperties": true
},
"pdf_engine": {
"enum": [
1,
2,
null
],
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1821,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"pdf_edit_restriction_password": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1851,
"type": "boolean"
},
"pdf_paper_size": {
"type": "string",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1870,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "vendor/dompdf/dompdf/src/Adapter/CPDF.php",
"line": 42,
"sha256": "7dca4a096b08c006f12bfccd733068223d92e502b9a625c49bd919373f714001",
"reason": "Installed Dompdf paper-size key list, matched case-insensitively by the source getter."
},
{
"file": "application/models/v2/API_DATA.php",
"line": 1853,
"sha256": "c0e15d26a7a4f3fb3c25e35557d4420ad395b2af3925caec292de08e32ebf44c",
"reason": "Normal fields check strict false; joined fields instead collect getter output at 1793 and execute it at 1827 without that rejection. Final joined writer rejects strict-false getters and unresolved/multi-join metadata before writes, anchors the joined row to the own parent (including account-key parents), and preserves constant join.where constraints as additional AND predicates. Join-only writes verify the own existing parent. Generic simple-owner hard/soft DELETE now verifies the own existing parent before hooks and repeats FID in DML; missing optional hook data no longer warns. Read, insert, signed authority and GET-effect classifications are unchanged."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"pdf_custom_css": {
"type": "string",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1892,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/libraries/edoobox/integrations/pdf/Pdf.php",
"line": 16,
"sha256": "b286cdc4d20e02601db9acc35b06564357f10378961e72cb8f4e22e64b3a3254",
"reason": "Allowed PDF font keys used by the CSS normalizer."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"dinaco_client_id": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1960,
"type": "string"
},
"dinaco_client_secret": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 1979,
"x-edoobox-sensitive": true
},
"gtm_mess_id": {
"type": "string",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 1998,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/helpers/edooboxhelp_helper.php",
"line": 11560,
"sha256": "090d351b5bde81813c7a829bedf2f1f9f978fce5765f246989779f996198934e",
"reason": "aP normalization after the substring test."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"gtm_container_id": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 2024,
"type": "string"
},
"meta_html": {
"type": "string",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 2044,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"system_attachments_file_naming": {
"anyOf": [
{
"type": "object",
"properties": {},
"additionalProperties": {
"type": "object",
"properties": {},
"additionalProperties": {
"type": "string"
}
}
},
{
"type": "array",
"maxItems": 0
}
],
"description": "Associative map, or [] when there are no naming rules.",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 2076,
"reason": "Input iterates template/ics keys and language-to-name objects; edid occurs on map keys.",
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1"
},
{
"file": "application/models/v2/Settings.php",
"line": 2106,
"reason": "Response maps stored keys back to public emailtemplate IDs or ics.",
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1"
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"website_integration": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 2132
},
"website_url": {
"type": "string",
"x-edoobox-contractSource": [
{
"file": "application/models/v2/Settings.php",
"line": 2159,
"sha256": "431e6774611828ce07fb932ead801e3b2e3b7a15214e5d9498487b545c0d73f1",
"reason": "Structure input getter, response setter and update flags."
},
{
"file": "application/models/v2/API_DATA.php",
"line": 1853,
"sha256": "c0e15d26a7a4f3fb3c25e35557d4420ad395b2af3925caec292de08e32ebf44c",
"reason": "Strict false getter rejects invalid URL inputs. Final joined writer rejects strict-false getters and unresolved/multi-join metadata before writes, anchors the joined row to the own parent (including account-key parents), and preserves constant join.where constraints as additional AND predicates. Join-only writes verify the own existing parent. Generic simple-owner hard/soft DELETE now verifies the own existing parent before hooks and repeats FID in DML; missing optional hook data no longer warns. Read, insert, signed authority and GET-effect classifications are unchanged."
},
{
"file": "docs/openapi/reviews/settings-fields.json",
"line": 1,
"reason": "Field-level Settings source review and runtime limitations; source-executing offline regressions are separate evidence.",
"sha256": "be8942fdca4dbcf16a5c5767f778b5644e53284101fa8aa6d00d8f1de7cf3df9"
}
]
},
"admin_custom_permissions": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 2172,
"type": "boolean"
},
"admin_academic_title_use": {
"description": "Response field from the resource Structure; dynamic values remain unconstrained.",
"x-edoobox-sourceLine": 2192,
"type": "boolean"
},
"root_archive": {
"type": "string",
"pattern": "^category_[a-f0-9]{12}_-?[0-9]+$",
"description": "Öffentliche v2-ID aus dem ausgewählten Account; keine interne Datenbank-ID."
},
"root_trash": {
"type": "string",
"pattern": "^category_[a-f0-9]{12}_-?[0-9]+$",
"description": "Öffentliche v2-ID aus dem ausgewählten Account; keine interne Datenbank-ID."
},
"user_currencys": {
"type": "array",
"items": {
"type": "string"
}
},
"stripe_public_key": {
"type": [
"string",
"boolean"
]
}
},
"additionalProperties": true
}
],
"description": "Einzelnes Account-Einstellungsobjekt; auch die Listenroute reduziert auf das erste gefundene Objekt."
},
"type": {
"type": "string"
}
},
"additionalProperties": true
}
}
}
},
"400": {
"description": "Invalid request.",
"content": {
"application/json": {
"example": {
"success": false,
"error": "ED40006"
}
}
}
},
"401": {
"description": "Missing/expired token, missing account context, account paused or model-specific authorization failure.",
"content": {
"application/json": {
"example": {
"success": false,
"error": "ED40103"
}
}
}
},
"402": {
"description": "Missing/invalid action data or subscription/operation restriction.",
"content": {
"application/json": {
"example": {
"success": false,
"error": "ED80100"
}
}
}
},
"403": {
"description": "Permission denied. Browser CORS rejection may have an empty body.",
"content": {
"application/json": {
"example": {
"success": false,
"error": "ED40340"
}
}
}
},
"404": {
"description": "Unknown resource/action or unsupported method.",
"content": {
"application/json": {
"example": {
"success": false,
"error": "ED80019"
}
}
}
},
"422": {
"description": "Validation failed.",
"content": {
"application/json": {
"example": {
"success": false,
"error": "ED80020"
}
}
}
},
"429": {
"description": "Request/login rate limit exceeded. Honor Retry-After when supplied; legacy rate-limit paths may omit it. Retry only proven reads within a bounded deadline; a mutation is never automatically replayed after an ambiguous response.",
"content": {
"application/json": {
"example": {
"success": false,
"error": "ED42902"
}
}
},
"headers": {
"Retry-After": {
"description": "Optional server delay in whole seconds or an HTTP date. Absence is not permission for an immediate retry.",
"schema": {
"type": "string",
"examples": [
"30"
]
}
}
}
},
"502": {
"description": "Server-side operation failed.",
"content": {
"application/json": {
"example": {
"success": false,
"error": "ED50201"
}
}
}
}
},
"x-edoobox-mutates-state": true,
"x-edoobox-sensitiveResponseFields": [
"dinaco_client_secret"
],
"x-edoobox-runtimeMutationGuard": false,
"x-edoobox-get-effect": "maintenance",
"x-edoobox-documentationReview": {
"file": "docs/openapi/operation-contracts/06-admin-settings.json",
"notes": []
},
"x-edoobox-source": {
"file": "application/models/v2/Settings.php",
"method": "getSettings",
"line": 2408
},
"x-edoobox-documentationStatus": "reviewed",
"x-edoobox-readOnly": false,
"x-edoobox-safeForAutomation": false,
"x-edoobox-permission": {
"resource": "settings",
"short": "setti",
"checkedByDispatcher": true,
"levels": [
1,
3,
4
],
"description": "Resource permission mapping from APIPermissions(), Authfunc::_getCheckJWT. Additional model/admin/plugin checks may apply; resources absent from api_permission do not acquire a fictitious scope."
}
}