36 "when": "Only if category metadata beyond name/assignment must survive (Wix category carries name + assigned events)."
37 }
38 ],
39 "reliability": {
40 "status": "unknown",
41 "flags": []
42 },
43 "mappingGuidance": [
44 "Create categories first, then assign events to them by ID — assignment happens on the category, not the event.",
45 "Wix Events categories are flat: flatten hierarchical source taxonomies and record the faithfulness-ledger entry."
46 ],
47 "setupRequirements": [
48 "Wix Events app"
49 ],
50 "pitfalls": [
51 {
52 "code": "flat-categories",
53 "severity": "warning",
54 "summary": "Wix Events categories are flat; a hierarchical source event taxonomy (tribe_events_cat is hierarchical) flattens on import — faithfulness-ledger entry required."
55 },
56 {
57 "code": "names-not-unique",
58 "severity": "warning",
59 "summary": "VERIFIED LIVE 2026-10-27: two categories with the same name are both created. A lost create response is resolved by exact name over queryAllEventCategories: one match → adopt, none → resend, several → hold. Two source categories with one name stay two Wix categories."
60 },
61 {
62 "code": "query-needs-paging",
63 "severity": "warning",
64 "summary": "VERIFIED LIVE 2026-10-27: POST /events/v1/categories/query returns zero rows (with a non-zero total) unless `paging` is sent, and a `name` or `states` filter also returns zero rows. List with paging and match in code (queryAllEventCategories)."
65 }
66 ],
67 "notes": "Writer createEventCategory. Verified live 2026-10-27: create, list with paging, duplicate names.",
80 "note": "Verified live: create + query-back readback, safe mode on — 3/3 categories created via POST /events/v1/categories, server IDs crosswalked; assignment-to-events not exercised (events stayed drafts)"
81 },
82 {
83 "type": "live-run",
84 "path": "anonymized-live-verification",
85 "note": "Verified live 2026-10-27 on a throwaway site created for the probe (notifications muted): create, read back, query, past dates, category assignment."