@datocms/cma-client 5.2.0-alpha.4 → 5.2.0-alpha.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. package/README.md +4 -0
  2. package/dist/cjs/generated/Client.js +1 -1
  3. package/dist/cjs/generated/resources/ItemType.js +12 -12
  4. package/dist/cjs/generated/resources/SearchIndex.js +10 -22
  5. package/dist/cjs/generated/resources/SearchIndex.js.map +1 -1
  6. package/dist/cjs/utilities/schemaRepository.js +131 -0
  7. package/dist/cjs/utilities/schemaRepository.js.map +1 -1
  8. package/dist/esm/generated/ApiTypes.d.ts +161 -158
  9. package/dist/esm/generated/Client.js +1 -1
  10. package/dist/esm/generated/RawApiTypes.d.ts +148 -141
  11. package/dist/esm/generated/resources/ItemType.d.ts +12 -12
  12. package/dist/esm/generated/resources/ItemType.js +12 -12
  13. package/dist/esm/generated/resources/SearchIndex.d.ts +8 -8
  14. package/dist/esm/generated/resources/SearchIndex.js +10 -22
  15. package/dist/esm/generated/resources/SearchIndex.js.map +1 -1
  16. package/dist/esm/utilities/schemaRepository.d.ts +42 -2
  17. package/dist/esm/utilities/schemaRepository.js +132 -1
  18. package/dist/esm/utilities/schemaRepository.js.map +1 -1
  19. package/dist/types/generated/ApiTypes.d.ts +161 -158
  20. package/dist/types/generated/RawApiTypes.d.ts +148 -141
  21. package/dist/types/generated/resources/ItemType.d.ts +12 -12
  22. package/dist/types/generated/resources/SearchIndex.d.ts +8 -8
  23. package/dist/types/utilities/schemaRepository.d.ts +42 -2
  24. package/package.json +3 -3
  25. package/resources.json +10 -12
  26. package/src/generated/ApiTypes.ts +161 -158
  27. package/src/generated/Client.ts +1 -1
  28. package/src/generated/RawApiTypes.ts +148 -141
  29. package/src/generated/resources/ItemType.ts +12 -12
  30. package/src/generated/resources/SearchIndex.ts +10 -22
  31. package/src/utilities/schemaRepository.ts +167 -9
@@ -962,19 +962,19 @@ export type ItemInstancesHrefSchema<
962
962
  */
963
963
  filter?: {
964
964
  /**
965
- * Record (or block record) IDs to fetch, comma separated. If you use this filter, you _must not_ use `filter[type]` or `filter[fields]`
965
+ * Record (or block record) IDs to fetch, comma separated. If you use this filter, you _must not_ use `filter[type]`. You can combine it with meta fields (like `_published_at`, `_status`), but _must not_ use model-specific fields
966
966
  */
967
967
  ids?: string;
968
968
  /**
969
- * Model ID or `api_key` to filter. If you use this filter, you _must not_ use `filter[ids]`. Comma separated values are accepted, but you _must not_ use `filter[fields]` in this case
969
+ * Model/Block model ID or `api_key` to filter. If you use this filter, you _must not_ use `filter[ids]`. When passing a single element, you can use both meta fields and model-specific fields (note: model-specific fields only work with models, not block models). When passing multiple comma-separated values, you can use meta fields but _must not_ use model-specific fields
970
970
  */
971
971
  type?: string;
972
972
  /**
973
- * Textual query to match. You _must not_ use `filter[ids]`. If `locale` is defined, search within that locale. Otherwise environment's main locale will be used.
973
+ * Textual query to match. Can be combined with other filters. When used, only records (not blocks) are returned. If `locale` is defined, search within that locale. Otherwise environment's main locale will be used.
974
974
  */
975
975
  query?: string;
976
976
  /**
977
- * Same as [GraphQL API records filters](/docs/content-delivery-api/filtering-records): you must use square brackets to indicate nesting levels. E.g. if you wanna [filter by parent record](/docs/content-delivery-api/filtering-records#parent) in a tree of records, you must use `filter[fields][parent][eq]=<ID_VALUE>`. Use snake_case for fields names. If `locale` is defined, search within that locale. Otherwise environment's main locale will be used.
977
+ * Filter by record fields. Meta fields (like `_published_at`, `_status`) can be used in most cases. Model-specific fields (like `title`, `name`) require `filter[type]` to specify a single model, and only work with models (not block models). Same syntax as [GraphQL API records filters](/docs/content-delivery-api/filtering-records): use square brackets to indicate nesting levels. E.g. `filter[fields][parent][eq]=<ID_VALUE>`. Use snake_case for field names. If `locale` is defined, search within that locale. Otherwise environment's main locale will be used.
978
978
  */
979
979
  fields?: ToItemHrefSchemaField<D>;
980
980
  /**
@@ -1043,7 +1043,7 @@ export type ItemSelfHrefSchema = {
1043
1043
  */
1044
1044
  nested?: boolean;
1045
1045
  /**
1046
- * Whether you want the currently published versions (`published`, default) of your records, or the latest available (`current`)
1046
+ * Whether you want the currently published versions (`published`) of your records, or the latest available (`current`, default)
1047
1047
  */
1048
1048
  version?: string;
1049
1049
  [k: string]: unknown;
@@ -1421,11 +1421,11 @@ export type SearchResultInstancesHrefSchema = {
1421
1421
  */
1422
1422
  query: string;
1423
1423
  /**
1424
- * The search index ID or name on which the search will be performed. If not provided, the first enabled search index will be used.
1424
+ * The search index ID on which the search will be performed. If not provided, the first enabled search index will be used.
1425
1425
  */
1426
1426
  search_index_id?: string;
1427
1427
  /**
1428
- * **[Deprecated]** Use `search_index_id` instead. The build trigger ID or name on which the search will be performed. This parameter is only supported for backward compatibility and will return an error if the build trigger has multiple search indexes associated.
1428
+ * The build trigger ID or name on which the search will be performed.
1429
1429
  */
1430
1430
  build_trigger_id?: string;
1431
1431
  /**
@@ -2058,7 +2058,7 @@ export type Role = {
2058
2058
  */
2059
2059
  can_edit_site: boolean;
2060
2060
  /**
2061
- * Can create/edit models and plugins
2061
+ * Can create and edit models and plugins
2062
2062
  */
2063
2063
  can_edit_schema: boolean;
2064
2064
  /**
@@ -2078,31 +2078,31 @@ export type Role = {
2078
2078
  */
2079
2079
  environments_access: 'all' | 'primary_only' | 'sandbox_only' | 'none';
2080
2080
  /**
2081
- * Can create/edit roles and invite/remove collaborators
2081
+ * Can create and edit roles and invite/remove collaborators
2082
2082
  */
2083
2083
  can_manage_users: boolean;
2084
2084
  /**
2085
- * Can create/edit shared filters (both for models and the media area)
2085
+ * Can create and edit shared filters (both for models and the media area)
2086
2086
  */
2087
2087
  can_manage_shared_filters: boolean;
2088
2088
  /**
2089
- * Can create/edit upload collections
2089
+ * Can create and edit upload collections
2090
2090
  */
2091
2091
  can_manage_upload_collections: boolean;
2092
2092
  /**
2093
- * Can create/edit Build triggers
2093
+ * Can create and edit build triggers
2094
2094
  */
2095
2095
  can_manage_build_triggers: boolean;
2096
2096
  /**
2097
- * Can create/edit Search Indexes
2097
+ * Can create and edit search indexes
2098
2098
  */
2099
2099
  can_manage_search_indexes: boolean;
2100
2100
  /**
2101
- * Can create/edit webhooks
2101
+ * Can create and edit webhooks
2102
2102
  */
2103
2103
  can_manage_webhooks: boolean;
2104
2104
  /**
2105
- * Can create/delete sandbox environments and promote them to primary environment
2105
+ * Can create and delete sandbox environments and promote them to primary environment
2106
2106
  */
2107
2107
  can_manage_environments: boolean;
2108
2108
  /**
@@ -2114,7 +2114,7 @@ export type Role = {
2114
2114
  */
2115
2115
  can_access_audit_log: boolean;
2116
2116
  /**
2117
- * Can create/edit workflows
2117
+ * Can create and edit workflows
2118
2118
  */
2119
2119
  can_manage_workflows: boolean;
2120
2120
  /**
@@ -2276,13 +2276,13 @@ export type Role = {
2276
2276
  build_trigger?: BuildTriggerIdentity | null;
2277
2277
  }[];
2278
2278
  /**
2279
- * Allowed search indexes for a role
2279
+ * Search indexes that can be triggered by a role
2280
2280
  */
2281
2281
  positive_search_index_permissions: {
2282
2282
  search_index?: SearchIndexIdentity | null;
2283
2283
  }[];
2284
2284
  /**
2285
- * Prohibited search indexes for a role
2285
+ * Search indexes that can't be triggered by a role
2286
2286
  */
2287
2287
  negative_search_index_permissions: {
2288
2288
  search_index?: SearchIndexIdentity | null;
@@ -2325,7 +2325,7 @@ export type RoleMeta = {
2325
2325
  */
2326
2326
  can_edit_site: boolean;
2327
2327
  /**
2328
- * Can create/edit models and plugins
2328
+ * Can create and edit models and plugins
2329
2329
  */
2330
2330
  can_edit_schema: boolean;
2331
2331
  /**
@@ -2345,31 +2345,31 @@ export type RoleMeta = {
2345
2345
  */
2346
2346
  environments_access: 'all' | 'primary_only' | 'sandbox_only' | 'none';
2347
2347
  /**
2348
- * Can create/edit roles and invite/remove collaborators
2348
+ * Can create and edit roles and invite/remove collaborators
2349
2349
  */
2350
2350
  can_manage_users: boolean;
2351
2351
  /**
2352
- * Can create/edit shared filters (both for models and the media area)
2352
+ * Can create and edit shared filters (both for models and the media area)
2353
2353
  */
2354
2354
  can_manage_shared_filters: boolean;
2355
2355
  /**
2356
- * Can create/edit upload collections
2356
+ * Can create and edit upload collections
2357
2357
  */
2358
2358
  can_manage_upload_collections: boolean;
2359
2359
  /**
2360
- * Can create/edit Build triggers
2360
+ * Can create and edit build triggers
2361
2361
  */
2362
2362
  can_manage_build_triggers: boolean;
2363
2363
  /**
2364
- * Can create/edit Search Indexes
2364
+ * Can create and edit search indexes
2365
2365
  */
2366
2366
  can_manage_search_indexes: boolean;
2367
2367
  /**
2368
- * Can create/edit webhooks
2368
+ * Can create and edit webhooks
2369
2369
  */
2370
2370
  can_manage_webhooks: boolean;
2371
2371
  /**
2372
- * Can create/delete sandbox environments and promote them to primary environment
2372
+ * Can create and delete sandbox environments and promote them to primary environment
2373
2373
  */
2374
2374
  can_manage_environments: boolean;
2375
2375
  /**
@@ -2381,7 +2381,7 @@ export type RoleMeta = {
2381
2381
  */
2382
2382
  can_access_audit_log: boolean;
2383
2383
  /**
2384
- * Can create/edit workflows
2384
+ * Can create and edit workflows
2385
2385
  */
2386
2386
  can_manage_workflows: boolean;
2387
2387
  /**
@@ -2543,13 +2543,13 @@ export type RoleMeta = {
2543
2543
  build_trigger?: BuildTriggerIdentity | null;
2544
2544
  }[];
2545
2545
  /**
2546
- * Allowed search indexes for a role
2546
+ * Search indexes that can be triggered by a role
2547
2547
  */
2548
2548
  positive_search_index_permissions: {
2549
2549
  search_index?: SearchIndexIdentity | null;
2550
2550
  }[];
2551
2551
  /**
2552
- * Prohibited search indexes for a role
2552
+ * Search indexes that can't be triggered by a role
2553
2553
  */
2554
2554
  negative_search_index_permissions: {
2555
2555
  search_index?: SearchIndexIdentity | null;
@@ -2576,7 +2576,7 @@ export type RoleAttributes = {
2576
2576
  */
2577
2577
  can_edit_site: boolean;
2578
2578
  /**
2579
- * Can create/edit models and plugins
2579
+ * Can create and edit models and plugins
2580
2580
  */
2581
2581
  can_edit_schema: boolean;
2582
2582
  /**
@@ -2596,31 +2596,31 @@ export type RoleAttributes = {
2596
2596
  */
2597
2597
  environments_access: 'all' | 'primary_only' | 'sandbox_only' | 'none';
2598
2598
  /**
2599
- * Can create/edit roles and invite/remove collaborators
2599
+ * Can create and edit roles and invite/remove collaborators
2600
2600
  */
2601
2601
  can_manage_users: boolean;
2602
2602
  /**
2603
- * Can create/edit shared filters (both for models and the media area)
2603
+ * Can create and edit shared filters (both for models and the media area)
2604
2604
  */
2605
2605
  can_manage_shared_filters: boolean;
2606
2606
  /**
2607
- * Can create/edit upload collections
2607
+ * Can create and edit upload collections
2608
2608
  */
2609
2609
  can_manage_upload_collections: boolean;
2610
2610
  /**
2611
- * Can create/edit Build triggers
2611
+ * Can create and edit build triggers
2612
2612
  */
2613
2613
  can_manage_build_triggers: boolean;
2614
2614
  /**
2615
- * Can create/edit Search Indexes
2615
+ * Can create and edit search indexes
2616
2616
  */
2617
2617
  can_manage_search_indexes: boolean;
2618
2618
  /**
2619
- * Can create/edit webhooks
2619
+ * Can create and edit webhooks
2620
2620
  */
2621
2621
  can_manage_webhooks: boolean;
2622
2622
  /**
2623
- * Can create/delete sandbox environments and promote them to primary environment
2623
+ * Can create and delete sandbox environments and promote them to primary environment
2624
2624
  */
2625
2625
  can_manage_environments: boolean;
2626
2626
  /**
@@ -2632,7 +2632,7 @@ export type RoleAttributes = {
2632
2632
  */
2633
2633
  can_access_audit_log: boolean;
2634
2634
  /**
2635
- * Can create/edit workflows
2635
+ * Can create and edit workflows
2636
2636
  */
2637
2637
  can_manage_workflows: boolean;
2638
2638
  /**
@@ -2794,13 +2794,13 @@ export type RoleAttributes = {
2794
2794
  build_trigger?: BuildTriggerIdentity | null;
2795
2795
  }[];
2796
2796
  /**
2797
- * Allowed search indexes for a role
2797
+ * Search indexes that can be triggered by a role
2798
2798
  */
2799
2799
  positive_search_index_permissions: {
2800
2800
  search_index?: SearchIndexIdentity | null;
2801
2801
  }[];
2802
2802
  /**
2803
- * Prohibited search indexes for a role
2803
+ * Search indexes that can't be triggered by a role
2804
2804
  */
2805
2805
  negative_search_index_permissions: {
2806
2806
  search_index?: SearchIndexIdentity | null;
@@ -2834,7 +2834,7 @@ export type RoleCreateSchema = {
2834
2834
  */
2835
2835
  can_edit_site?: boolean;
2836
2836
  /**
2837
- * Can create/edit models and plugins
2837
+ * Can create and edit models and plugins
2838
2838
  */
2839
2839
  can_edit_schema?: boolean;
2840
2840
  /**
@@ -2854,31 +2854,31 @@ export type RoleCreateSchema = {
2854
2854
  */
2855
2855
  environments_access?: 'all' | 'primary_only' | 'sandbox_only' | 'none';
2856
2856
  /**
2857
- * Can create/edit roles and invite/remove collaborators
2857
+ * Can create and edit roles and invite/remove collaborators
2858
2858
  */
2859
2859
  can_manage_users?: boolean;
2860
2860
  /**
2861
- * Can create/edit shared filters (both for models and the media area)
2861
+ * Can create and edit shared filters (both for models and the media area)
2862
2862
  */
2863
2863
  can_manage_shared_filters?: boolean;
2864
2864
  /**
2865
- * Can create/edit Search Indexes
2865
+ * Can create and edit search indexes
2866
2866
  */
2867
2867
  can_manage_search_indexes?: boolean;
2868
2868
  /**
2869
- * Can create/edit upload collections
2869
+ * Can create and edit upload collections
2870
2870
  */
2871
2871
  can_manage_upload_collections?: boolean;
2872
2872
  /**
2873
- * Can create/edit Build triggers
2873
+ * Can create and edit build triggers
2874
2874
  */
2875
2875
  can_manage_build_triggers?: boolean;
2876
2876
  /**
2877
- * Can create/edit webhooks
2877
+ * Can create and edit webhooks
2878
2878
  */
2879
2879
  can_manage_webhooks?: boolean;
2880
2880
  /**
2881
- * Can create/delete sandbox environments and promote them to primary environment
2881
+ * Can create and delete sandbox environments and promote them to primary environment
2882
2882
  */
2883
2883
  can_manage_environments?: boolean;
2884
2884
  /**
@@ -2890,7 +2890,7 @@ export type RoleCreateSchema = {
2890
2890
  */
2891
2891
  can_access_audit_log?: boolean;
2892
2892
  /**
2893
- * Can create/edit workflows
2893
+ * Can create and edit workflows
2894
2894
  */
2895
2895
  can_manage_workflows?: boolean;
2896
2896
  /**
@@ -3052,13 +3052,13 @@ export type RoleCreateSchema = {
3052
3052
  build_trigger?: BuildTriggerIdentity | null;
3053
3053
  }[];
3054
3054
  /**
3055
- * Allowed search indexes for a role
3055
+ * Search indexes that can be triggered by a role
3056
3056
  */
3057
3057
  positive_search_index_permissions?: {
3058
3058
  search_index?: SearchIndexIdentity | null;
3059
3059
  }[];
3060
3060
  /**
3061
- * Prohibited search indexes for a role
3061
+ * Search indexes that can't be triggered by a role
3062
3062
  */
3063
3063
  negative_search_index_permissions?: {
3064
3064
  search_index?: SearchIndexIdentity | null;
@@ -3086,7 +3086,7 @@ export type RoleUpdateSchema = {
3086
3086
  */
3087
3087
  can_edit_site?: boolean;
3088
3088
  /**
3089
- * Can create/edit models and plugins
3089
+ * Can create and edit models and plugins
3090
3090
  */
3091
3091
  can_edit_schema?: boolean;
3092
3092
  /**
@@ -3106,31 +3106,31 @@ export type RoleUpdateSchema = {
3106
3106
  */
3107
3107
  environments_access?: 'all' | 'primary_only' | 'sandbox_only' | 'none';
3108
3108
  /**
3109
- * Can create/edit roles and invite/remove collaborators
3109
+ * Can create and edit roles and invite/remove collaborators
3110
3110
  */
3111
3111
  can_manage_users?: boolean;
3112
3112
  /**
3113
- * Can create/edit shared filters (both for models and the media area)
3113
+ * Can create and edit shared filters (both for models and the media area)
3114
3114
  */
3115
3115
  can_manage_shared_filters?: boolean;
3116
3116
  /**
3117
- * Can create/edit Search Indexes
3117
+ * Can create and edit search indexes
3118
3118
  */
3119
3119
  can_manage_search_indexes?: boolean;
3120
3120
  /**
3121
- * Can create/edit upload collections
3121
+ * Can create and edit upload collections
3122
3122
  */
3123
3123
  can_manage_upload_collections?: boolean;
3124
3124
  /**
3125
- * Can create/edit Build triggers
3125
+ * Can create and edit build triggers
3126
3126
  */
3127
3127
  can_manage_build_triggers?: boolean;
3128
3128
  /**
3129
- * Can create/edit webhooks
3129
+ * Can create and edit webhooks
3130
3130
  */
3131
3131
  can_manage_webhooks?: boolean;
3132
3132
  /**
3133
- * Can create/delete sandbox environments and promote them to primary environment
3133
+ * Can create and delete sandbox environments and promote them to primary environment
3134
3134
  */
3135
3135
  can_manage_environments?: boolean;
3136
3136
  /**
@@ -3142,7 +3142,7 @@ export type RoleUpdateSchema = {
3142
3142
  */
3143
3143
  can_access_audit_log?: boolean;
3144
3144
  /**
3145
- * Can create/edit workflows
3145
+ * Can create and edit workflows
3146
3146
  */
3147
3147
  can_manage_workflows?: boolean;
3148
3148
  /**
@@ -3304,13 +3304,13 @@ export type RoleUpdateSchema = {
3304
3304
  build_trigger?: BuildTriggerIdentity | null;
3305
3305
  }[];
3306
3306
  /**
3307
- * Allowed search indexes for a role
3307
+ * Search indexes that can be triggered by a role
3308
3308
  */
3309
3309
  positive_search_index_permissions?: {
3310
3310
  search_index?: SearchIndexIdentity | null;
3311
3311
  }[];
3312
3312
  /**
3313
- * Prohibited search indexes for a role
3313
+ * Search indexes that can't be triggered by a role
3314
3314
  */
3315
3315
  negative_search_index_permissions?: {
3316
3316
  search_index?: SearchIndexIdentity | null;
@@ -4943,7 +4943,26 @@ export type UploadCollectionUpdateSchema = {
4943
4943
  children?: UploadCollectionData[];
4944
4944
  };
4945
4945
  /**
4946
- * The way you define the kind of content you can edit inside your administrative area passes through the concept of Models, which are much like database tables. For backward-compatibility reasons, the API refers to models as "item types".
4946
+ * The way you define the kind of content you can edit inside a DatoCMS project passes through the concept of **models** and **block models**. For backward-compatibility reasons, the API refers to both as "item types".
4947
+ *
4948
+ * ## Models
4949
+ *
4950
+ * Models are much like database tables — they define the structure of your main content types (e.g., blog posts, products, landing pages). Each model is composed of fields with custom validations. Records created from models exist independently and can be referenced by other records through link fields.
4951
+ *
4952
+ * ## Block Models
4953
+ *
4954
+ * Block models define complex and repeatable structures that can be embedded inside records. They are the foundation behind features like [Modular Content](/docs/content-modelling/modular-content.md) and [Structured Text](/docs/content-modelling/structured-text.md).
4955
+ *
4956
+ * ### Key differences:
4957
+ *
4958
+ * - **Models** create standalone records that can be referenced and have independent value
4959
+ * - **Block models** create blocks that only exist within parent records and cannot be referenced via link fields
4960
+ * - Block models defined in the library can be reused across different models
4961
+ * - When a record gets deleted, all the blocks it contains are deleted with it
4962
+ * - Blocks do not count towards your plan's records limit
4963
+ *
4964
+ * You can distinguish between models and block models using the `modular_block` attribute: `true` indicates a block model, `false` indicates a regular model.
4965
+ *
4947
4966
  *
4948
4967
  * This interface was referenced by `DatoApi`'s JSON-Schema
4949
4968
  * via the `definition` "item_type".
@@ -4952,11 +4971,11 @@ export type ItemType = {
4952
4971
  id: ItemTypeIdentity;
4953
4972
  type: ItemTypeType;
4954
4973
  /**
4955
- * Name of the model
4974
+ * Name of the model/block model
4956
4975
  */
4957
4976
  name: string;
4958
4977
  /**
4959
- * API key of the model
4978
+ * API key of the model/block model
4960
4979
  */
4961
4980
  api_key: string;
4962
4981
  /**
@@ -4964,11 +4983,11 @@ export type ItemType = {
4964
4983
  */
4965
4984
  collection_appeareance?: 'compact' | 'table';
4966
4985
  /**
4967
- * The way the model collection should be presented to the editors
4986
+ * The way the model/block model collection should be presented to the editors
4968
4987
  */
4969
4988
  collection_appearance: 'compact' | 'table';
4970
4989
  /**
4971
- * Whether the model is single-instance or not
4990
+ * Whether the model is single-instance or not. This property only applies to models, not block models
4972
4991
  */
4973
4992
  singleton: boolean;
4974
4993
  /**
@@ -4976,31 +4995,31 @@ export type ItemType = {
4976
4995
  */
4977
4996
  all_locales_required: boolean;
4978
4997
  /**
4979
- * Whether editors can sort records via drag & drop or not
4998
+ * Whether editors can sort records via drag & drop or not. Must be false for block models
4980
4999
  */
4981
5000
  sortable: boolean;
4982
5001
  /**
4983
- * Whether this model is a modular content block or not
5002
+ * Whether this is a block model or not. Block models define structures that can be embedded inside records, while regular models create standalone records
4984
5003
  */
4985
5004
  modular_block: boolean;
4986
5005
  /**
4987
- * Whether draft/published mode is active or not
5006
+ * Whether draft/published mode is active or not. Must be false for block models
4988
5007
  */
4989
5008
  draft_mode_active: boolean;
4990
5009
  /**
4991
- * Whether draft records can be saved without satisfying the validations or not
5010
+ * Whether draft records can be saved without satisfying the validations or not. Must be false for block models
4992
5011
  */
4993
5012
  draft_saving_active: boolean;
4994
5013
  /**
4995
- * Whether editors can organize records in a tree or not
5014
+ * Whether editors can organize records in a tree or not. Must be false for block models
4996
5015
  */
4997
5016
  tree: boolean;
4998
5017
  /**
4999
- * If an ordering field is set, this fields specify the sorting direction
5018
+ * If an ordering field is set, this field specifies the sorting direction. This property does not apply to block models
5000
5019
  */
5001
5020
  ordering_direction: null | 'asc' | 'desc';
5002
5021
  /**
5003
- * Specifies the model's sorting method. Cannot be set in concurrency with ordering_field
5022
+ * Specifies the model's sorting method. Cannot be set in concurrency with ordering_field. This property does not apply to block models
5004
5023
  */
5005
5024
  ordering_meta:
5006
5025
  | null
@@ -5009,15 +5028,15 @@ export type ItemType = {
5009
5028
  | 'first_published_at'
5010
5029
  | 'published_at';
5011
5030
  /**
5012
- * If this model is single-instance, this tells the single-instance record has already been created or not
5031
+ * If this model is single-instance, this tells whether the single-instance record has already been created or not. This property only applies to models, not block models
5013
5032
  */
5014
5033
  has_singleton_item: boolean;
5015
5034
  /**
5016
- * A hint shown to editors to help them understand the purpose of this model/block
5035
+ * A hint shown to editors to help them understand the purpose of this model/block model
5017
5036
  */
5018
5037
  hint: string | null;
5019
5038
  /**
5020
- * Whether inverse relationships fields are expressed in GraphQL or not
5039
+ * Whether inverse relationships fields are expressed in GraphQL or not. Must be false for block models
5021
5040
  */
5022
5041
  inverse_relationships_enabled: boolean;
5023
5042
  singleton_item: ItemData | null;
@@ -5078,14 +5097,14 @@ export type WorkflowData = {
5078
5097
  id: WorkflowIdentity;
5079
5098
  };
5080
5099
  /**
5081
- * Meta information regarding the item type
5100
+ * Meta information regarding the model/block model
5082
5101
  *
5083
5102
  * This interface was referenced by `ItemType`'s JSON-Schema
5084
5103
  * via the `definition` "meta".
5085
5104
  */
5086
5105
  export type ItemTypeMeta = {
5087
5106
  /**
5088
- * If this model is single-instance, this tells the single-instance record has already been created or not
5107
+ * If this model is single-instance, this tells whether the single-instance record has already been created or not. This property only applies to models, not block models
5089
5108
  */
5090
5109
  has_singleton_item: boolean;
5091
5110
  };
@@ -5097,11 +5116,11 @@ export type ItemTypeMeta = {
5097
5116
  */
5098
5117
  export type ItemTypeAttributes = {
5099
5118
  /**
5100
- * Name of the model
5119
+ * Name of the model/block model
5101
5120
  */
5102
5121
  name: string;
5103
5122
  /**
5104
- * API key of the model
5123
+ * API key of the model/block model
5105
5124
  */
5106
5125
  api_key: string;
5107
5126
  /**
@@ -5109,11 +5128,11 @@ export type ItemTypeAttributes = {
5109
5128
  */
5110
5129
  collection_appeareance?: 'compact' | 'table';
5111
5130
  /**
5112
- * The way the model collection should be presented to the editors
5131
+ * The way the model/block model collection should be presented to the editors
5113
5132
  */
5114
5133
  collection_appearance: 'compact' | 'table';
5115
5134
  /**
5116
- * Whether the model is single-instance or not
5135
+ * Whether the model is single-instance or not. This property only applies to models, not block models
5117
5136
  */
5118
5137
  singleton: boolean;
5119
5138
  /**
@@ -5121,31 +5140,31 @@ export type ItemTypeAttributes = {
5121
5140
  */
5122
5141
  all_locales_required: boolean;
5123
5142
  /**
5124
- * Whether editors can sort records via drag & drop or not
5143
+ * Whether editors can sort records via drag & drop or not. Must be false for block models
5125
5144
  */
5126
5145
  sortable: boolean;
5127
5146
  /**
5128
- * Whether this model is a modular content block or not
5147
+ * Whether this is a block model or not. Block models define structures that can be embedded inside records, while regular models create standalone records
5129
5148
  */
5130
5149
  modular_block: boolean;
5131
5150
  /**
5132
- * Whether draft/published mode is active or not
5151
+ * Whether draft/published mode is active or not. Must be false for block models
5133
5152
  */
5134
5153
  draft_mode_active: boolean;
5135
5154
  /**
5136
- * Whether draft records can be saved without satisfying the validations or not
5155
+ * Whether draft records can be saved without satisfying the validations or not. Must be false for block models
5137
5156
  */
5138
5157
  draft_saving_active: boolean;
5139
5158
  /**
5140
- * Whether editors can organize records in a tree or not
5159
+ * Whether editors can organize records in a tree or not. Must be false for block models
5141
5160
  */
5142
5161
  tree: boolean;
5143
5162
  /**
5144
- * If an ordering field is set, this fields specify the sorting direction
5163
+ * If an ordering field is set, this field specifies the sorting direction. This property does not apply to block models
5145
5164
  */
5146
5165
  ordering_direction: null | 'asc' | 'desc';
5147
5166
  /**
5148
- * Specifies the model's sorting method. Cannot be set in concurrency with ordering_field
5167
+ * Specifies the model's sorting method. Cannot be set in concurrency with ordering_field. This property does not apply to block models
5149
5168
  */
5150
5169
  ordering_meta:
5151
5170
  | null
@@ -5154,15 +5173,15 @@ export type ItemTypeAttributes = {
5154
5173
  | 'first_published_at'
5155
5174
  | 'published_at';
5156
5175
  /**
5157
- * If this model is single-instance, this tells the single-instance record has already been created or not
5176
+ * If this model is single-instance, this tells whether the single-instance record has already been created or not. This property only applies to models, not block models
5158
5177
  */
5159
5178
  has_singleton_item: boolean;
5160
5179
  /**
5161
- * A hint shown to editors to help them understand the purpose of this model/block
5180
+ * A hint shown to editors to help them understand the purpose of this model/block model
5162
5181
  */
5163
5182
  hint: string | null;
5164
5183
  /**
5165
- * Whether inverse relationships fields are expressed in GraphQL or not
5184
+ * Whether inverse relationships fields are expressed in GraphQL or not. Must be false for block models
5166
5185
  */
5167
5186
  inverse_relationships_enabled: boolean;
5168
5187
  };
@@ -5192,15 +5211,15 @@ export type ItemTypeCreateSchema = {
5192
5211
  id?: ItemTypeIdentity;
5193
5212
  type?: ItemTypeType;
5194
5213
  /**
5195
- * Name of the model
5214
+ * Name of the model/block model
5196
5215
  */
5197
5216
  name: string;
5198
5217
  /**
5199
- * API key of the model
5218
+ * API key of the model/block model
5200
5219
  */
5201
5220
  api_key: string;
5202
5221
  /**
5203
- * Whether the model is single-instance or not
5222
+ * Whether the model is single-instance or not. This property only applies to models, not block models
5204
5223
  */
5205
5224
  singleton?: boolean;
5206
5225
  /**
@@ -5208,31 +5227,31 @@ export type ItemTypeCreateSchema = {
5208
5227
  */
5209
5228
  all_locales_required?: boolean;
5210
5229
  /**
5211
- * Whether editors can sort records via drag & drop or not
5230
+ * Whether editors can sort records via drag & drop or not. Must be false for block models
5212
5231
  */
5213
5232
  sortable?: boolean;
5214
5233
  /**
5215
- * Whether this model is a modular content block or not
5234
+ * Whether this is a block model or not. Block models define structures that can be embedded inside records, while regular models create standalone records
5216
5235
  */
5217
5236
  modular_block?: boolean;
5218
5237
  /**
5219
- * Whether draft/published mode is active or not
5238
+ * Whether draft/published mode is active or not. Must be false for block models
5220
5239
  */
5221
5240
  draft_mode_active?: boolean;
5222
5241
  /**
5223
- * Whether draft records can be saved without satisfying the validations or not
5242
+ * Whether draft records can be saved without satisfying the validations or not. Must be false for block models
5224
5243
  */
5225
5244
  draft_saving_active?: boolean;
5226
5245
  /**
5227
- * Whether editors can organize records in a tree or not
5246
+ * Whether editors can organize records in a tree or not. Must be false for block models
5228
5247
  */
5229
5248
  tree?: boolean;
5230
5249
  /**
5231
- * If an ordering field is set, this fields specify the sorting direction
5250
+ * If an ordering field is set, this field specifies the sorting direction. This property does not apply to block models
5232
5251
  */
5233
5252
  ordering_direction?: null | 'asc' | 'desc';
5234
5253
  /**
5235
- * Specifies the model's sorting method. Cannot be set in concurrency with ordering_field
5254
+ * Specifies the model's sorting method. Cannot be set in concurrency with ordering_field. This property does not apply to block models
5236
5255
  */
5237
5256
  ordering_meta?:
5238
5257
  | null
@@ -5245,15 +5264,15 @@ export type ItemTypeCreateSchema = {
5245
5264
  */
5246
5265
  collection_appeareance?: 'compact' | 'table';
5247
5266
  /**
5248
- * The way the model collection should be presented to the editors
5267
+ * The way the model/block model collection should be presented to the editors
5249
5268
  */
5250
5269
  collection_appearance?: 'compact' | 'table';
5251
5270
  /**
5252
- * A hint shown to editors to help them understand the purpose of this model/block
5271
+ * A hint shown to editors to help them understand the purpose of this model/block model
5253
5272
  */
5254
5273
  hint?: string | null;
5255
5274
  /**
5256
- * Whether inverse relationships fields are expressed in GraphQL or not
5275
+ * Whether inverse relationships fields are expressed in GraphQL or not. Must be false for block models
5257
5276
  */
5258
5277
  inverse_relationships_enabled?: boolean;
5259
5278
  ordering_field?: FieldData | null;
@@ -5272,11 +5291,11 @@ export type ItemTypeUpdateSchema = {
5272
5291
  id?: ItemTypeIdentity;
5273
5292
  type?: ItemTypeType;
5274
5293
  /**
5275
- * Name of the model
5294
+ * Name of the model/block model
5276
5295
  */
5277
5296
  name?: string;
5278
5297
  /**
5279
- * API key of the model
5298
+ * API key of the model/block model
5280
5299
  */
5281
5300
  api_key?: string;
5282
5301
  /**
@@ -5284,11 +5303,11 @@ export type ItemTypeUpdateSchema = {
5284
5303
  */
5285
5304
  collection_appeareance?: 'compact' | 'table';
5286
5305
  /**
5287
- * The way the model collection should be presented to the editors
5306
+ * The way the model/block model collection should be presented to the editors
5288
5307
  */
5289
5308
  collection_appearance?: 'compact' | 'table';
5290
5309
  /**
5291
- * Whether the model is single-instance or not
5310
+ * Whether the model is single-instance or not. This property only applies to models, not block models
5292
5311
  */
5293
5312
  singleton?: boolean;
5294
5313
  /**
@@ -5296,31 +5315,31 @@ export type ItemTypeUpdateSchema = {
5296
5315
  */
5297
5316
  all_locales_required?: boolean;
5298
5317
  /**
5299
- * Whether editors can sort records via drag & drop or not
5318
+ * Whether editors can sort records via drag & drop or not. Must be false for block models
5300
5319
  */
5301
5320
  sortable?: boolean;
5302
5321
  /**
5303
- * Whether this model is a modular content block or not
5322
+ * Whether this is a block model or not. Block models define structures that can be embedded inside records, while regular models create standalone records
5304
5323
  */
5305
5324
  modular_block?: boolean;
5306
5325
  /**
5307
- * Whether draft/published mode is active or not
5326
+ * Whether draft/published mode is active or not. Must be false for block models
5308
5327
  */
5309
5328
  draft_mode_active?: boolean;
5310
5329
  /**
5311
- * Whether draft records can be saved without satisfying the validations or not
5330
+ * Whether draft records can be saved without satisfying the validations or not. Must be false for block models
5312
5331
  */
5313
5332
  draft_saving_active?: boolean;
5314
5333
  /**
5315
- * Whether editors can organize records in a tree or not
5334
+ * Whether editors can organize records in a tree or not. Must be false for block models
5316
5335
  */
5317
5336
  tree?: boolean;
5318
5337
  /**
5319
- * If an ordering field is set, this fields specify the sorting direction
5338
+ * If an ordering field is set, this field specifies the sorting direction. This property does not apply to block models
5320
5339
  */
5321
5340
  ordering_direction?: null | 'asc' | 'desc';
5322
5341
  /**
5323
- * Specifies the model's sorting method. Cannot be set in concurrency with ordering_field
5342
+ * Specifies the model's sorting method. Cannot be set in concurrency with ordering_field. This property does not apply to block models
5324
5343
  */
5325
5344
  ordering_meta?:
5326
5345
  | null
@@ -5329,15 +5348,15 @@ export type ItemTypeUpdateSchema = {
5329
5348
  | 'first_published_at'
5330
5349
  | 'published_at';
5331
5350
  /**
5332
- * If this model is single-instance, this tells the single-instance record has already been created or not
5351
+ * If this model is single-instance, this tells whether the single-instance record has already been created or not. This property only applies to models, not block models
5333
5352
  */
5334
5353
  has_singleton_item?: boolean;
5335
5354
  /**
5336
- * A hint shown to editors to help them understand the purpose of this model/block
5355
+ * A hint shown to editors to help them understand the purpose of this model/block model
5337
5356
  */
5338
5357
  hint?: string | null;
5339
5358
  /**
5340
- * Whether inverse relationships fields are expressed in GraphQL or not
5359
+ * Whether inverse relationships fields are expressed in GraphQL or not. Must be false for block models
5341
5360
  */
5342
5361
  inverse_relationships_enabled?: boolean;
5343
5362
  ordering_field?: FieldData | null;
@@ -5349,7 +5368,7 @@ export type ItemTypeUpdateSchema = {
5349
5368
  workflow?: WorkflowData | null;
5350
5369
  meta?: {
5351
5370
  /**
5352
- * If this model is single-instance, this tells the single-instance record has already been created or not
5371
+ * If this model is single-instance, this tells whether the single-instance record has already been created or not. This property only applies to models, not block models
5353
5372
  */
5354
5373
  has_singleton_item?: boolean;
5355
5374
  };
@@ -7418,7 +7437,7 @@ export type SubscriptionFeatureAttributes = {
7418
7437
  enabled: boolean;
7419
7438
  };
7420
7439
  /**
7421
- * Represents an event occurred during the deploy process of your administrative area.
7440
+ * Represents an event occurred during the deploy process of a build trigger.
7422
7441
  *
7423
7442
  * This interface was referenced by `DatoApi`'s JSON-Schema
7424
7443
  * via the `definition` "build_event".
@@ -7507,7 +7526,7 @@ export type BuildEventRelationships = {
7507
7526
  build_trigger: BuildTriggerData;
7508
7527
  };
7509
7528
  /**
7510
- * Represents an event occurred during the search indexing process.
7529
+ * Represents an event occurred during the indexing process via search indexes.
7511
7530
  *
7512
7531
  * This interface was referenced by `DatoApi`'s JSON-Schema
7513
7532
  * via the `definition` "search_index_event".
@@ -9734,6 +9753,10 @@ export type BuildTrigger = {
9734
9753
  * Name of the build trigger
9735
9754
  */
9736
9755
  name: string;
9756
+ /**
9757
+ * Whether the build trigger is enabled or not
9758
+ */
9759
+ enabled: boolean;
9737
9760
  /**
9738
9761
  * The type of build trigger
9739
9762
  */
@@ -9765,7 +9788,7 @@ export type BuildTrigger = {
9765
9788
  */
9766
9789
  indexing_status: string;
9767
9790
  /**
9768
- * The public URL of the frontend. If Site Search is enabled (indicated by `indexing_enabled`), this is the starting point from which the website's spidering will start
9791
+ * The public URL of the frontend.
9769
9792
  */
9770
9793
  frontend_url: string | null;
9771
9794
  /**
@@ -9776,10 +9799,6 @@ export type BuildTrigger = {
9776
9799
  * Wether Site Search is enabled or not. With Site Search, everytime the website is built, DatoCMS will respider it to get updated content
9777
9800
  */
9778
9801
  indexing_enabled: boolean;
9779
- /**
9780
- * Whether the build trigger is enabled or not
9781
- */
9782
- enabled: boolean;
9783
9802
  };
9784
9803
  export type BuildTriggerSelfTargetSchema = BuildTrigger;
9785
9804
  export type BuildTriggerCreateTargetSchema = BuildTrigger;
@@ -9796,6 +9815,10 @@ export type BuildTriggerAttributes = {
9796
9815
  * Name of the build trigger
9797
9816
  */
9798
9817
  name: string;
9818
+ /**
9819
+ * Whether the build trigger is enabled or not
9820
+ */
9821
+ enabled: boolean;
9799
9822
  /**
9800
9823
  * The type of build trigger
9801
9824
  */
@@ -9827,7 +9850,7 @@ export type BuildTriggerAttributes = {
9827
9850
  */
9828
9851
  indexing_status: string;
9829
9852
  /**
9830
- * The public URL of the frontend. If Site Search is enabled (indicated by `indexing_enabled`), this is the starting point from which the website's spidering will start
9853
+ * The public URL of the frontend.
9831
9854
  */
9832
9855
  frontend_url: string | null;
9833
9856
  /**
@@ -9838,10 +9861,6 @@ export type BuildTriggerAttributes = {
9838
9861
  * Wether Site Search is enabled or not. With Site Search, everytime the website is built, DatoCMS will respider it to get updated content
9839
9862
  */
9840
9863
  indexing_enabled: boolean;
9841
- /**
9842
- * Whether the build trigger is enabled or not
9843
- */
9844
- enabled: boolean;
9845
9864
  };
9846
9865
  /**
9847
9866
  * This interface was referenced by `BuildTrigger`'s JSON-Schema
@@ -9864,13 +9883,13 @@ export type BuildTriggerCreateSchema = {
9864
9883
  /**
9865
9884
  * Wether Site Search is enabled or not. With Site Search, everytime the website is built, DatoCMS will respider it to get updated content
9866
9885
  */
9867
- indexing_enabled: boolean;
9886
+ indexing_enabled?: boolean;
9868
9887
  /**
9869
9888
  * Whether the build trigger is enabled or not
9870
9889
  */
9871
9890
  enabled?: boolean;
9872
9891
  /**
9873
- * The public URL of the frontend. If Site Search is enabled (indicated by `indexing_enabled`), this is the starting point from which the website's spidering will start
9892
+ * The public URL of the frontend.
9874
9893
  */
9875
9894
  frontend_url: string | null;
9876
9895
  /**
@@ -9908,7 +9927,7 @@ export type BuildTriggerUpdateSchema = {
9908
9927
  */
9909
9928
  enabled?: boolean;
9910
9929
  /**
9911
- * The public URL of the frontend. If Site Search is enabled (indicated by `indexing_enabled`), this is the starting point from which the website's spidering will start
9930
+ * The public URL of the frontend.
9912
9931
  */
9913
9932
  frontend_url?: string | null;
9914
9933
  /**
@@ -9923,7 +9942,7 @@ export type BuildTriggerUpdateSchema = {
9923
9942
  };
9924
9943
  };
9925
9944
  /**
9926
- * A Search Index represents a website that should be indexed by DatoCMS Site Search. When enabled, DatoCMS will periodically spider the website to update the search index.
9945
+ * A Search Index is used to index a website to provide DatoCMS Site Search functionality.
9927
9946
  *
9928
9947
  * This interface was referenced by `DatoApi`'s JSON-Schema
9929
9948
  * via the `definition` "search_index".
@@ -9940,11 +9959,7 @@ export type SearchIndex = {
9940
9959
  */
9941
9960
  enabled: boolean;
9942
9961
  /**
9943
- * Whether the spidering should automatically run after associated build triggers complete
9944
- */
9945
- build_trigger_indexing_enabled: boolean;
9946
- /**
9947
- * The public URL of the frontend. This is the starting point from which the website's spidering will start
9962
+ * The public URL of the website. This is the starting point from which the website's spidering will start
9948
9963
  */
9949
9964
  frontend_url: string | null;
9950
9965
  /**
@@ -9966,7 +9981,7 @@ export type SearchIndexDestroyTargetSchema = SearchIndex;
9966
9981
  */
9967
9982
  export type SearchIndexMeta = {
9968
9983
  /**
9969
- * Status of the site search indexing
9984
+ * Status of the search indexing
9970
9985
  */
9971
9986
  indexing_status: 'unstarted' | 'pending' | 'success' | 'failed';
9972
9987
  /**
@@ -9990,11 +10005,7 @@ export type SearchIndexAttributes = {
9990
10005
  */
9991
10006
  enabled: boolean;
9992
10007
  /**
9993
- * Whether the spidering should automatically run after associated build triggers complete
9994
- */
9995
- build_trigger_indexing_enabled: boolean;
9996
- /**
9997
- * The public URL of the frontend. This is the starting point from which the website's spidering will start
10008
+ * The public URL of the website. This is the starting point from which the website's spidering will start
9998
10009
  */
9999
10010
  frontend_url: string | null;
10000
10011
  /**
@@ -10026,11 +10037,7 @@ export type SearchIndexCreateSchema = {
10026
10037
  */
10027
10038
  enabled: boolean;
10028
10039
  /**
10029
- * Whether the spidering should automatically run after associated build triggers complete
10030
- */
10031
- build_trigger_indexing_enabled?: boolean;
10032
- /**
10033
- * The public URL of the frontend. This is the starting point from which the website's spidering will start
10040
+ * The public URL of the website. This is the starting point from which the website's spidering will start
10034
10041
  */
10035
10042
  frontend_url: string | null;
10036
10043
  /**
@@ -10055,11 +10062,7 @@ export type SearchIndexUpdateSchema = {
10055
10062
  */
10056
10063
  enabled?: boolean;
10057
10064
  /**
10058
- * Whether the spidering should automatically run after associated build triggers complete
10059
- */
10060
- build_trigger_indexing_enabled?: boolean;
10061
- /**
10062
- * The public URL of the frontend. This is the starting point from which the website's spidering will start
10065
+ * The public URL of the website. This is the starting point from which the website's spidering will start
10063
10066
  */
10064
10067
  frontend_url?: string | null;
10065
10068
  /**