Save Data Collections settings
save_data_collectionsPARTIAL SAVE: writes ONLY the 'DataCollections' field of TitlePublicConfigurationModel; all other v1/v2 fields stay untouched. Data collections - the creator's own data structures, a Firebase/Supabase-like store inside the platform for games, apps and sites. USE A READY PLATFORM MODULE FIRST (currencies, items, store, lootboxes, quests, leaderboards, chat, social, workshop, match, season, tutorial, localization, push, analytics); declare a collection only for what no module provides (guilds, auctions, orders, catalogs, articles, saved levels, feeds, mail) or for extra data attached to module entities. NEVER store currencies or items inside a record: reference them with a Ref field (Kind Item/Currency/User/…) and move value with Economy (Cost/Grant in engine resource format, charged in the same transaction as the write). Collections maps a collection id (letters, digits, '_', '-', ':' up to 64; a front-end module prefixes its namespace, e.g. 'guild-system:guilds') to: Kind (UserOwned: each record belongs to one user; Shared: records used by many users; Temporary: short-lived, mandatory TTL up to 30 days; Log: append-only, read by time); Mode (Strict = only declared fields); Fields (String, Text = searchable by words, Int, Number, Bool, Date, Json, Array with ItemType, Ref with Ref.Kind, File) with Required/Default (JSON literal)/Min/Max/MaxLength/MaxItems/Enum/Unique/Indexed/Visibility (Everyone/Owner/Server)/ClientWritable=false for server-only fields/Immutable; SortKeys (id + 1..4 components, each a scalar field or createdAt/updatedAt, optionally Descending) - every ordered query uses one, and equality filters on its leading components narrow the range; Access with Read/Create/Update/Delete lists of rules OR-ed together (Anyone - Read only, Authenticated, Owner, Members with MembersField = an Array of Ref(User), Role with a role id from Roles, Server); Limits (MaxItemBytes, MaxItemsPerOwner, TtlSeconds); OnOwnerDeleted (Delete/Anonymize/Keep); Counters (Count or Sum, optional GroupBy - maintained atomically, not allowed for expiring records); Integrations (QuestMetricOnCreate/Update/Delete advance quest objectives with Source ServerApi, AnalyticsEventOn*, TriggerOn* run a CloudCode handler asynchronously); Moderation.BlockedTerms; WriteGate (SegmentGate); PublicViews (published to the CDN for anonymous/site reads: SortKey, optional PartitionField, PageSize, MaxItems, PublishItems) and AnonymousSearch. Queries from a game may filter ONLY by Indexed fields and sort ONLY by declared SortKeys - there are no table scans on the shared cluster. Roles lists title user roles; they are assigned only by CloudCode (server.SetUserRoles) and the dashboard. The count of collections, searchable fields, sort keys, record size and storage are capped by the plan. Records themselves are NOT here - they live in the engine's DataCollection* collections; CloudCode reads and writes them with server.GetDataItem/QueryDataItems/CreateDataItem/UpdateDataItem/DeleteDataItem/BatchDataItems/GetDataCounter.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| value | Yes | Title data collections: a Firebase/Supabase-like store inside the platform. The creator declares structures (collections) with typed fields, searchable fields, sort keys, access rules and limits; the platform enforces tenant isolation, access, indexes, limits, deletion and billing. Use a ready platform module first (currency, items, store, quests, leaderboards, chat, workshop…); use collections only for what no module provides, or for extra data attached to module entities. Never store currencies/items in a collection — reference them and move value through the engine economy (Cost/Grant). | |
| title_id | Yes | TitleID, для которого сохраняются данные. |