picked 0.0.101 → 0.0.102-next.2
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.
- package/docs/reference/dashboard/workflow-test-runs.md +40 -17
- package/docs/reference/management-api/schema/action.md +67 -79
- package/docs/reference/management-api/schema/analytics-session.md +77 -94
- package/docs/reference/management-api/schema/analytics.md +16 -14
- package/docs/reference/management-api/schema/api-key.md +43 -51
- package/docs/reference/management-api/schema/auth.md +271 -404
- package/docs/reference/management-api/schema/cms-fields.md +348 -245
- package/docs/reference/management-api/schema/cms-models.md +369 -378
- package/docs/reference/management-api/schema/common.md +69 -130
- package/docs/reference/management-api/schema/condition.md +63 -74
- package/docs/reference/management-api/schema/design-system.md +59 -51
- package/docs/reference/management-api/schema/experience.md +388 -364
- package/docs/reference/management-api/schema/external-api.md +153 -171
- package/docs/reference/management-api/schema/feature.md +85 -103
- package/docs/reference/management-api/schema/feedback.md +27 -31
- package/docs/reference/management-api/schema/field.md +117 -135
- package/docs/reference/management-api/schema/index.md +184 -184
- package/docs/reference/management-api/schema/integration.md +72 -78
- package/docs/reference/management-api/schema/label.md +81 -137
- package/docs/reference/management-api/schema/lead.md +80 -119
- package/docs/reference/management-api/schema/mcp-server.md +73 -71
- package/docs/reference/management-api/schema/metric.md +6 -9
- package/docs/reference/management-api/schema/operation.md +17 -26
- package/docs/reference/management-api/schema/organization.md +198 -220
- package/docs/reference/management-api/schema/project.md +177 -186
- package/docs/reference/management-api/schema/report.md +69 -65
- package/docs/reference/management-api/schema/saved-view.md +71 -71
- package/docs/reference/management-api/schema/shopify.md +331 -204
- package/docs/reference/management-api/schema/step.md +72 -80
- package/docs/reference/management-api/schema/tenant-branding.md +48 -70
- package/docs/reference/management-api/schema/workbench.md +54 -66
- package/docs/reference/management-api/schema/workflow-run.md +66 -79
- package/docs/reference/management-api/schema/workflow.md +310 -353
- package/docs/reference/management-api/schema/workspace-version.md +212 -261
- package/docs/reference/management-api/schema/workspace.md +275 -328
- package/package.json +4 -4
|
@@ -6,21 +6,36 @@ generated: true
|
|
|
6
6
|
|
|
7
7
|
# Cms models schema
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
See [Management API schema](/reference/management-api/schema) for every domain, the endpoint and authentication.
|
|
10
10
|
|
|
11
11
|
## Queries
|
|
12
12
|
|
|
13
13
|
### `contentModels`
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
Lists the models in a workspace.
|
|
16
|
+
Scope: `ORGANIZATION_WORKSPACE_READ`.
|
|
16
17
|
|
|
17
18
|
```graphql
|
|
18
|
-
contentModels(
|
|
19
|
+
contentModels(
|
|
20
|
+
workspaceId: ID!
|
|
21
|
+
"""The role to filter by. Omit it for every model."""
|
|
22
|
+
category: ContentModelCategory
|
|
23
|
+
first: Int
|
|
24
|
+
after: String
|
|
25
|
+
last: Int
|
|
26
|
+
before: String
|
|
27
|
+
"""Text that the model name contains, ignoring case."""
|
|
28
|
+
search: String
|
|
29
|
+
sortKey: ContentModelSortKeys = NAME
|
|
30
|
+
"""Whether to reverse the order of `sortKey`."""
|
|
31
|
+
reverse: Boolean = false
|
|
32
|
+
): ContentModelConnection! @auth
|
|
19
33
|
```
|
|
20
34
|
|
|
21
35
|
### `contentModel`
|
|
22
36
|
|
|
23
|
-
|
|
37
|
+
Reads a model.
|
|
38
|
+
Scope: `ORGANIZATION_WORKSPACE_READ`.
|
|
24
39
|
|
|
25
40
|
```graphql
|
|
26
41
|
contentModel(id: ID!): ContentModel @auth
|
|
@@ -28,15 +43,30 @@ contentModel(id: ID!): ContentModel @auth
|
|
|
28
43
|
|
|
29
44
|
### `contentBlocks`
|
|
30
45
|
|
|
31
|
-
|
|
46
|
+
Lists the blocks in a workspace.
|
|
47
|
+
Scope: `ORGANIZATION_WORKSPACE_READ`.
|
|
32
48
|
|
|
33
49
|
```graphql
|
|
34
|
-
contentBlocks(
|
|
50
|
+
contentBlocks(
|
|
51
|
+
workspaceId: ID!
|
|
52
|
+
"""The role to filter by. Omit it for every block."""
|
|
53
|
+
category: ContentBlockCategory
|
|
54
|
+
first: Int
|
|
55
|
+
after: String
|
|
56
|
+
last: Int
|
|
57
|
+
before: String
|
|
58
|
+
"""Text that the block name contains, ignoring case."""
|
|
59
|
+
search: String
|
|
60
|
+
sortKey: ContentBlockSortKeys = NAME
|
|
61
|
+
"""Whether to reverse the order of `sortKey`."""
|
|
62
|
+
reverse: Boolean = false
|
|
63
|
+
): ContentBlockConnection! @auth
|
|
35
64
|
```
|
|
36
65
|
|
|
37
66
|
### `contentBlock`
|
|
38
67
|
|
|
39
|
-
|
|
68
|
+
Reads a block.
|
|
69
|
+
Scope: `ORGANIZATION_WORKSPACE_READ`.
|
|
40
70
|
|
|
41
71
|
```graphql
|
|
42
72
|
contentBlock(id: ID!): ContentBlock @auth
|
|
@@ -44,15 +74,28 @@ contentBlock(id: ID!): ContentBlock @auth
|
|
|
44
74
|
|
|
45
75
|
### `contentEntries`
|
|
46
76
|
|
|
47
|
-
|
|
77
|
+
Lists the content entries in a workspace.
|
|
78
|
+
Scope: `ORGANIZATION_WORKSPACE_READ`.
|
|
48
79
|
|
|
49
80
|
```graphql
|
|
50
|
-
contentEntries(
|
|
81
|
+
contentEntries(
|
|
82
|
+
workspaceId: ID!
|
|
83
|
+
"""The ID of the model to filter by. Omit it for every content entry."""
|
|
84
|
+
contentModelId: ID
|
|
85
|
+
first: Int
|
|
86
|
+
after: String
|
|
87
|
+
last: Int
|
|
88
|
+
before: String
|
|
89
|
+
sortKey: ContentEntrySortKeys = CREATED_AT
|
|
90
|
+
"""Whether to reverse the order of `sortKey`."""
|
|
91
|
+
reverse: Boolean = false
|
|
92
|
+
): ContentEntryConnection! @auth
|
|
51
93
|
```
|
|
52
94
|
|
|
53
95
|
### `contentEntry`
|
|
54
96
|
|
|
55
|
-
|
|
97
|
+
Reads a content entry.
|
|
98
|
+
Scope: `ORGANIZATION_WORKSPACE_READ`.
|
|
56
99
|
|
|
57
100
|
```graphql
|
|
58
101
|
contentEntry(id: ID!): ContentEntry @auth
|
|
@@ -60,15 +103,34 @@ contentEntry(id: ID!): ContentEntry @auth
|
|
|
60
103
|
|
|
61
104
|
### `assets`
|
|
62
105
|
|
|
63
|
-
|
|
106
|
+
Lists the assets in a project, newest first by default.
|
|
107
|
+
Scope: `ORGANIZATION_PROJECTS_READ`.
|
|
64
108
|
|
|
65
109
|
```graphql
|
|
66
|
-
assets(
|
|
110
|
+
assets(
|
|
111
|
+
projectId: ID!
|
|
112
|
+
first: Int
|
|
113
|
+
after: String
|
|
114
|
+
last: Int
|
|
115
|
+
before: String
|
|
116
|
+
"""Text that the file name contains, ignoring case."""
|
|
117
|
+
search: String
|
|
118
|
+
"""The media type group to filter by."""
|
|
119
|
+
kind: AssetKind
|
|
120
|
+
"""
|
|
121
|
+
The MIME types to filter by. An entry such as `image/*` matches every subtype.
|
|
122
|
+
"""
|
|
123
|
+
acceptedMimeTypes: [String!]
|
|
124
|
+
sortKey: AssetSortKeys = CREATED_AT
|
|
125
|
+
"""Whether to reverse the order of `sortKey`."""
|
|
126
|
+
reverse: Boolean = true
|
|
127
|
+
): AssetConnection! @auth
|
|
67
128
|
```
|
|
68
129
|
|
|
69
130
|
### `asset`
|
|
70
131
|
|
|
71
|
-
|
|
132
|
+
Reads an asset.
|
|
133
|
+
Scope: `ORGANIZATION_PROJECTS_READ`.
|
|
72
134
|
|
|
73
135
|
```graphql
|
|
74
136
|
asset(id: ID!): Asset @auth
|
|
@@ -76,21 +138,24 @@ asset(id: ID!): Asset @auth
|
|
|
76
138
|
|
|
77
139
|
### `workspaceContentEntryValidation`
|
|
78
140
|
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
schema change. Optionally narrow the sweep to a single Content Model
|
|
83
|
-
with `contentModelId`.
|
|
141
|
+
Verifies each content entry in a workspace against its model's schema, including embedded blocks.
|
|
142
|
+
It changes no data.
|
|
143
|
+
Scope: `ORGANIZATION_WORKSPACE_READ`.
|
|
84
144
|
|
|
85
145
|
```graphql
|
|
86
|
-
workspaceContentEntryValidation(
|
|
146
|
+
workspaceContentEntryValidation(
|
|
147
|
+
workspaceId: ID!
|
|
148
|
+
"""The ID of a model, to check only its content entries."""
|
|
149
|
+
contentModelId: ID
|
|
150
|
+
): WorkspaceContentEntryValidationPayload! @auth
|
|
87
151
|
```
|
|
88
152
|
|
|
89
153
|
## Mutations
|
|
90
154
|
|
|
91
155
|
### `contentModelCreate`
|
|
92
156
|
|
|
93
|
-
|
|
157
|
+
Creates a model.
|
|
158
|
+
Scope: `ORGANIZATION_WORKSPACE_UPDATE`.
|
|
94
159
|
|
|
95
160
|
```graphql
|
|
96
161
|
contentModelCreate(input: ContentModelCreateInput!): ContentModelCreatePayload! @auth
|
|
@@ -98,7 +163,9 @@ contentModelCreate(input: ContentModelCreateInput!): ContentModelCreatePayload!
|
|
|
98
163
|
|
|
99
164
|
### `contentModelUpdate`
|
|
100
165
|
|
|
101
|
-
|
|
166
|
+
Updates a model. A schema change migrates the data of its content entries and lists each
|
|
167
|
+
removed value in `migrationWarnings`.
|
|
168
|
+
Scope: `ORGANIZATION_WORKSPACE_UPDATE`.
|
|
102
169
|
|
|
103
170
|
```graphql
|
|
104
171
|
contentModelUpdate(input: ContentModelUpdateInput!): ContentModelUpdatePayload! @auth
|
|
@@ -106,7 +173,9 @@ contentModelUpdate(input: ContentModelUpdateInput!): ContentModelUpdatePayload!
|
|
|
106
173
|
|
|
107
174
|
### `contentModelDelete`
|
|
108
175
|
|
|
109
|
-
|
|
176
|
+
Deletes a model. Fails with `CONFLICT` while content entries use it, or while another schema's
|
|
177
|
+
reference field targets it.
|
|
178
|
+
Scope: `ORGANIZATION_WORKSPACE_UPDATE`.
|
|
110
179
|
|
|
111
180
|
```graphql
|
|
112
181
|
contentModelDelete(input: ContentModelDeleteInput!): ContentModelDeletePayload! @auth
|
|
@@ -114,7 +183,8 @@ contentModelDelete(input: ContentModelDeleteInput!): ContentModelDeletePayload!
|
|
|
114
183
|
|
|
115
184
|
### `contentBlockCreate`
|
|
116
185
|
|
|
117
|
-
|
|
186
|
+
Creates a block.
|
|
187
|
+
Scope: `ORGANIZATION_WORKSPACE_UPDATE`.
|
|
118
188
|
|
|
119
189
|
```graphql
|
|
120
190
|
contentBlockCreate(input: ContentBlockCreateInput!): ContentBlockCreatePayload! @auth
|
|
@@ -122,7 +192,8 @@ contentBlockCreate(input: ContentBlockCreateInput!): ContentBlockCreatePayload!
|
|
|
122
192
|
|
|
123
193
|
### `contentBlockUpdate`
|
|
124
194
|
|
|
125
|
-
|
|
195
|
+
Updates a block. A schema change does not migrate the content entries that embed it.
|
|
196
|
+
Scope: `ORGANIZATION_WORKSPACE_UPDATE`.
|
|
126
197
|
|
|
127
198
|
```graphql
|
|
128
199
|
contentBlockUpdate(input: ContentBlockUpdateInput!): ContentBlockUpdatePayload! @auth
|
|
@@ -130,7 +201,8 @@ contentBlockUpdate(input: ContentBlockUpdateInput!): ContentBlockUpdatePayload!
|
|
|
130
201
|
|
|
131
202
|
### `contentBlockDelete`
|
|
132
203
|
|
|
133
|
-
|
|
204
|
+
Deletes a block.
|
|
205
|
+
Scope: `ORGANIZATION_WORKSPACE_UPDATE`.
|
|
134
206
|
|
|
135
207
|
```graphql
|
|
136
208
|
contentBlockDelete(input: ContentBlockDeleteInput!): ContentBlockDeletePayload! @auth
|
|
@@ -138,7 +210,9 @@ contentBlockDelete(input: ContentBlockDeleteInput!): ContentBlockDeletePayload!
|
|
|
138
210
|
|
|
139
211
|
### `contentEntryCreate`
|
|
140
212
|
|
|
141
|
-
|
|
213
|
+
Creates a content entry of a model. Each asset reference without a version is pinned to the
|
|
214
|
+
asset's current version.
|
|
215
|
+
Scope: `ORGANIZATION_WORKSPACE_UPDATE`.
|
|
142
216
|
|
|
143
217
|
```graphql
|
|
144
218
|
contentEntryCreate(input: ContentEntryCreateInput!): ContentEntryCreatePayload! @auth
|
|
@@ -146,7 +220,9 @@ contentEntryCreate(input: ContentEntryCreateInput!): ContentEntryCreatePayload!
|
|
|
146
220
|
|
|
147
221
|
### `contentEntryUpdate`
|
|
148
222
|
|
|
149
|
-
|
|
223
|
+
Updates the data of a content entry. Each asset reference without a version is pinned to the
|
|
224
|
+
asset's current version.
|
|
225
|
+
Scope: `ORGANIZATION_WORKSPACE_UPDATE`.
|
|
150
226
|
|
|
151
227
|
```graphql
|
|
152
228
|
contentEntryUpdate(input: ContentEntryUpdateInput!): ContentEntryUpdatePayload! @auth
|
|
@@ -154,7 +230,9 @@ contentEntryUpdate(input: ContentEntryUpdateInput!): ContentEntryUpdatePayload!
|
|
|
154
230
|
|
|
155
231
|
### `contentEntryDelete`
|
|
156
232
|
|
|
157
|
-
|
|
233
|
+
Deletes a content entry. Fails with `CONFLICT` while a step uses it as its layout, or while
|
|
234
|
+
another content entry references it.
|
|
235
|
+
Scope: `ORGANIZATION_WORKSPACE_UPDATE`.
|
|
158
236
|
|
|
159
237
|
```graphql
|
|
160
238
|
contentEntryDelete(input: ContentEntryDeleteInput!): ContentEntryDeletePayload! @auth
|
|
@@ -162,7 +240,9 @@ contentEntryDelete(input: ContentEntryDeleteInput!): ContentEntryDeletePayload!
|
|
|
162
240
|
|
|
163
241
|
### `assetUploadInit`
|
|
164
242
|
|
|
165
|
-
|
|
243
|
+
Starts an asset upload and returns a pre-signed URL to PUT the bytes to. Nothing is stored until
|
|
244
|
+
`assetCommit`.
|
|
245
|
+
Scope: `ORGANIZATION_PROJECTS_UPDATE`.
|
|
166
246
|
|
|
167
247
|
```graphql
|
|
168
248
|
assetUploadInit(input: AssetUploadInitInput!): AssetUploadInitPayload! @auth
|
|
@@ -170,7 +250,9 @@ assetUploadInit(input: AssetUploadInitInput!): AssetUploadInitPayload! @auth
|
|
|
170
250
|
|
|
171
251
|
### `assetCommit`
|
|
172
252
|
|
|
173
|
-
|
|
253
|
+
Commits an uploaded file as the asset's current version, recording its size, MIME type and image
|
|
254
|
+
dimensions. Fails when the bytes do not match the claimed content type.
|
|
255
|
+
Scope: `ORGANIZATION_PROJECTS_UPDATE`.
|
|
174
256
|
|
|
175
257
|
```graphql
|
|
176
258
|
assetCommit(input: AssetCommitInput!): AssetCommitPayload! @auth
|
|
@@ -178,7 +260,9 @@ assetCommit(input: AssetCommitInput!): AssetCommitPayload! @auth
|
|
|
178
260
|
|
|
179
261
|
### `assetDelete`
|
|
180
262
|
|
|
181
|
-
|
|
263
|
+
Deletes an asset and its stored files. Fails with `CONFLICT` once a publish uses any of its
|
|
264
|
+
versions; content entries that reference it are not checked.
|
|
265
|
+
Scope: `ORGANIZATION_PROJECTS_UPDATE`.
|
|
182
266
|
|
|
183
267
|
```graphql
|
|
184
268
|
assetDelete(input: AssetDeleteInput!): AssetDeletePayload! @auth
|
|
@@ -189,14 +273,11 @@ assetDelete(input: AssetDeleteInput!): AssetDeletePayload! @auth
|
|
|
189
273
|
### `ContentModelCategory`
|
|
190
274
|
|
|
191
275
|
```graphql
|
|
192
|
-
"""
|
|
193
|
-
Content Model schema category. Picking a category determines where the
|
|
194
|
-
Content Model surfaces in the dashboard.
|
|
195
|
-
"""
|
|
276
|
+
"""The role of a model, which decides what its entries lay out."""
|
|
196
277
|
enum ContentModelCategory {
|
|
197
|
-
"""
|
|
278
|
+
"""The layout of one step inside a flow."""
|
|
198
279
|
STEP_LAYOUT
|
|
199
|
-
"""
|
|
280
|
+
"""The layout of a page."""
|
|
200
281
|
PAGE_LAYOUT
|
|
201
282
|
}
|
|
202
283
|
```
|
|
@@ -204,13 +285,9 @@ enum ContentModelCategory {
|
|
|
204
285
|
### `ContentBlockCategory`
|
|
205
286
|
|
|
206
287
|
```graphql
|
|
207
|
-
"""
|
|
208
|
-
Content Block schema category. Blocks of a given category can only be
|
|
209
|
-
embedded inside Models / Blocks whose schema declares a
|
|
210
|
-
`ContentBlockFieldDefinition` accepting that category.
|
|
211
|
-
"""
|
|
288
|
+
"""The role of a block, which decides which block fields accept it."""
|
|
212
289
|
enum ContentBlockCategory {
|
|
213
|
-
"""A page section
|
|
290
|
+
"""A page section, such as a hero, a feature list or a testimonial."""
|
|
214
291
|
SECTION
|
|
215
292
|
}
|
|
216
293
|
```
|
|
@@ -218,19 +295,15 @@ enum ContentBlockCategory {
|
|
|
218
295
|
### `MigrationWarningType`
|
|
219
296
|
|
|
220
297
|
```graphql
|
|
221
|
-
"""
|
|
222
|
-
Kind of warning produced by an auto-migration of dependent Content Entries when a parent Content Model's schema changes.
|
|
223
|
-
"""
|
|
298
|
+
"""What a model schema change did to the data of one content entry."""
|
|
224
299
|
enum MigrationWarningType {
|
|
225
|
-
"""
|
|
226
|
-
A field was dropped from the schema; entry data for that field has been removed.
|
|
227
|
-
"""
|
|
300
|
+
"""The field left the schema, and its value was removed."""
|
|
228
301
|
FIELD_REMOVED
|
|
229
302
|
"""
|
|
230
|
-
|
|
303
|
+
The field changed type, and its value could not be converted, so it was removed.
|
|
231
304
|
"""
|
|
232
305
|
TYPE_CHANGE
|
|
233
|
-
"""
|
|
306
|
+
"""The field was renamed, and its value needs moving by hand."""
|
|
234
307
|
RENAME_REQUIRED
|
|
235
308
|
}
|
|
236
309
|
```
|
|
@@ -239,33 +312,31 @@ enum MigrationWarningType {
|
|
|
239
312
|
|
|
240
313
|
```graphql
|
|
241
314
|
"""
|
|
242
|
-
A
|
|
243
|
-
|
|
244
|
-
auto-migrates dependent entries (see `migrationWarnings` on the
|
|
245
|
-
update payload).
|
|
315
|
+
A reusable schema that sets which fields a content entry can hold. Changing its schema migrates
|
|
316
|
+
the data of its entries.
|
|
246
317
|
"""
|
|
247
318
|
type ContentModel {
|
|
248
|
-
"""
|
|
319
|
+
"""The ID of the model."""
|
|
249
320
|
id: ID!
|
|
250
|
-
"""The workspace
|
|
321
|
+
"""The workspace that holds the model."""
|
|
251
322
|
workspace: Workspace!
|
|
252
323
|
"""
|
|
253
|
-
|
|
324
|
+
The role of the model. Null for general content, which has no layout role.
|
|
254
325
|
"""
|
|
255
326
|
category: ContentModelCategory
|
|
256
|
-
"""
|
|
327
|
+
"""The name of the model."""
|
|
257
328
|
name: String!
|
|
258
|
-
"""
|
|
329
|
+
"""The description of the model. Null when it has none."""
|
|
259
330
|
description: String
|
|
260
|
-
"""
|
|
331
|
+
"""The stable identifier of the model. It cannot change."""
|
|
261
332
|
key: String!
|
|
262
|
-
"""The
|
|
333
|
+
"""The fields that the model's entries hold."""
|
|
263
334
|
schema: ContentSchema!
|
|
264
|
-
"""
|
|
335
|
+
"""The content entries of the model."""
|
|
265
336
|
contentEntries(first: Int, after: String, last: Int, before: String): ContentEntryConnection!
|
|
266
|
-
"""When
|
|
337
|
+
"""When the model was created."""
|
|
267
338
|
createdAt: DateTime!
|
|
268
|
-
"""When
|
|
339
|
+
"""When the model last changed."""
|
|
269
340
|
updatedAt: DateTime!
|
|
270
341
|
}
|
|
271
342
|
```
|
|
@@ -273,11 +344,11 @@ type ContentModel {
|
|
|
273
344
|
### `ContentModelEdge`
|
|
274
345
|
|
|
275
346
|
```graphql
|
|
276
|
-
"""
|
|
347
|
+
"""A model in a page of results."""
|
|
277
348
|
type ContentModelEdge {
|
|
278
|
-
"""
|
|
349
|
+
"""The cursor of this edge."""
|
|
279
350
|
cursor: String!
|
|
280
|
-
"""The
|
|
351
|
+
"""The model."""
|
|
281
352
|
node: ContentModel!
|
|
282
353
|
}
|
|
283
354
|
```
|
|
@@ -285,17 +356,17 @@ type ContentModelEdge {
|
|
|
285
356
|
### `ContentModelConnection`
|
|
286
357
|
|
|
287
358
|
```graphql
|
|
288
|
-
"""
|
|
289
|
-
Relay-style connection of Content Models, with both an `edges` list and a flat `nodes` accessor.
|
|
290
|
-
"""
|
|
359
|
+
"""A page of models."""
|
|
291
360
|
type ContentModelConnection {
|
|
292
|
-
"""
|
|
361
|
+
"""The edges in this page."""
|
|
293
362
|
edges: [ContentModelEdge!]!
|
|
294
|
-
"""
|
|
363
|
+
"""The models in this page."""
|
|
295
364
|
nodes: [ContentModel!]!
|
|
296
|
-
"""
|
|
365
|
+
"""Where this page sits in the list."""
|
|
297
366
|
pageInfo: PageInfo!
|
|
298
|
-
"""
|
|
367
|
+
"""
|
|
368
|
+
The number of models that match `category`. `search` does not narrow it.
|
|
369
|
+
"""
|
|
299
370
|
totalCount: Int!
|
|
300
371
|
}
|
|
301
372
|
```
|
|
@@ -304,34 +375,30 @@ type ContentModelConnection {
|
|
|
304
375
|
|
|
305
376
|
```graphql
|
|
306
377
|
"""
|
|
307
|
-
A
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
WARNING: Unlike Content Models, changing a Content Block's schema does
|
|
311
|
-
NOT auto-migrate dependent Content Entries that embed it. Run
|
|
312
|
-
`workspaceContentEntryValidation` as a pre-publish sanity gate after
|
|
313
|
-
modifying a Content Block schema.
|
|
378
|
+
A reusable schema fragment that you put inside one or more models. Changing its schema does not
|
|
379
|
+
migrate the content entries that embed it; `workspaceContentEntryValidation` finds the entries
|
|
380
|
+
that do not match.
|
|
314
381
|
"""
|
|
315
382
|
type ContentBlock {
|
|
316
|
-
"""
|
|
383
|
+
"""The ID of the block."""
|
|
317
384
|
id: ID!
|
|
318
|
-
"""The workspace
|
|
385
|
+
"""The workspace that holds the block."""
|
|
319
386
|
workspace: Workspace!
|
|
320
387
|
"""
|
|
321
|
-
|
|
388
|
+
The role of the block. Null for general content, which has no layout role.
|
|
322
389
|
"""
|
|
323
390
|
category: ContentBlockCategory
|
|
324
|
-
"""
|
|
391
|
+
"""The name of the block."""
|
|
325
392
|
name: String!
|
|
326
|
-
"""
|
|
393
|
+
"""The description of the block. Null when it has none."""
|
|
327
394
|
description: String
|
|
328
|
-
"""
|
|
395
|
+
"""The stable identifier of the block. It cannot change."""
|
|
329
396
|
key: String!
|
|
330
|
-
"""The
|
|
397
|
+
"""The fields that each instance of the block holds."""
|
|
331
398
|
schema: ContentSchema!
|
|
332
|
-
"""When
|
|
399
|
+
"""When the block was created."""
|
|
333
400
|
createdAt: DateTime!
|
|
334
|
-
"""When
|
|
401
|
+
"""When the block last changed."""
|
|
335
402
|
updatedAt: DateTime!
|
|
336
403
|
}
|
|
337
404
|
```
|
|
@@ -339,11 +406,11 @@ type ContentBlock {
|
|
|
339
406
|
### `ContentBlockEdge`
|
|
340
407
|
|
|
341
408
|
```graphql
|
|
342
|
-
"""
|
|
409
|
+
"""A block in a page of results."""
|
|
343
410
|
type ContentBlockEdge {
|
|
344
|
-
"""
|
|
411
|
+
"""The cursor of this edge."""
|
|
345
412
|
cursor: String!
|
|
346
|
-
"""The
|
|
413
|
+
"""The block."""
|
|
347
414
|
node: ContentBlock!
|
|
348
415
|
}
|
|
349
416
|
```
|
|
@@ -351,17 +418,17 @@ type ContentBlockEdge {
|
|
|
351
418
|
### `ContentBlockConnection`
|
|
352
419
|
|
|
353
420
|
```graphql
|
|
354
|
-
"""
|
|
355
|
-
Relay-style connection of Content Blocks, with both an `edges` list and a flat `nodes` accessor.
|
|
356
|
-
"""
|
|
421
|
+
"""A page of blocks."""
|
|
357
422
|
type ContentBlockConnection {
|
|
358
|
-
"""
|
|
423
|
+
"""The edges in this page."""
|
|
359
424
|
edges: [ContentBlockEdge!]!
|
|
360
|
-
"""
|
|
425
|
+
"""The blocks in this page."""
|
|
361
426
|
nodes: [ContentBlock!]!
|
|
362
|
-
"""
|
|
427
|
+
"""Where this page sits in the list."""
|
|
363
428
|
pageInfo: PageInfo!
|
|
364
|
-
"""
|
|
429
|
+
"""
|
|
430
|
+
The number of blocks that match `category`. `search` does not narrow it.
|
|
431
|
+
"""
|
|
365
432
|
totalCount: Int!
|
|
366
433
|
}
|
|
367
434
|
```
|
|
@@ -369,30 +436,24 @@ type ContentBlockConnection {
|
|
|
369
436
|
### `ContentEntry`
|
|
370
437
|
|
|
371
438
|
```graphql
|
|
372
|
-
"""
|
|
373
|
-
A workspace-scoped CMS Content Entry — an instance of a parent Content
|
|
374
|
-
Model's schema. The `data` field is strongly typed: a single codec
|
|
375
|
-
encodes / decodes the underlying `jsonb` column against the parent
|
|
376
|
-
schema.
|
|
377
|
-
"""
|
|
439
|
+
"""One instance of a model, filled with real values."""
|
|
378
440
|
type ContentEntry {
|
|
379
|
-
"""
|
|
441
|
+
"""The ID of the content entry."""
|
|
380
442
|
id: ID!
|
|
381
|
-
"""The workspace
|
|
443
|
+
"""The workspace that holds the content entry."""
|
|
382
444
|
workspace: Workspace!
|
|
383
|
-
"""
|
|
445
|
+
"""The model that the content entry is an instance of."""
|
|
384
446
|
contentModel: ContentModel!
|
|
385
447
|
"""
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
`id` when none is present.
|
|
448
|
+
The name that the entries list shows: the first filled single-line text field, or `Untitled`
|
|
449
|
+
when there is none.
|
|
389
450
|
"""
|
|
390
451
|
title: String!
|
|
391
|
-
"""The entry
|
|
452
|
+
"""The values of the content entry, typed by its model's schema."""
|
|
392
453
|
data: ContentEntryData!
|
|
393
|
-
"""When
|
|
454
|
+
"""When the content entry was created."""
|
|
394
455
|
createdAt: DateTime!
|
|
395
|
-
"""When
|
|
456
|
+
"""When the content entry last changed."""
|
|
396
457
|
updatedAt: DateTime!
|
|
397
458
|
}
|
|
398
459
|
```
|
|
@@ -400,11 +461,11 @@ type ContentEntry {
|
|
|
400
461
|
### `ContentEntryEdge`
|
|
401
462
|
|
|
402
463
|
```graphql
|
|
403
|
-
"""
|
|
464
|
+
"""A content entry in a page of results."""
|
|
404
465
|
type ContentEntryEdge {
|
|
405
|
-
"""
|
|
466
|
+
"""The cursor of this edge."""
|
|
406
467
|
cursor: String!
|
|
407
|
-
"""The
|
|
468
|
+
"""The content entry."""
|
|
408
469
|
node: ContentEntry!
|
|
409
470
|
}
|
|
410
471
|
```
|
|
@@ -412,17 +473,15 @@ type ContentEntryEdge {
|
|
|
412
473
|
### `ContentEntryConnection`
|
|
413
474
|
|
|
414
475
|
```graphql
|
|
415
|
-
"""
|
|
416
|
-
Relay-style connection of Content Entries, with both an `edges` list and a flat `nodes` accessor.
|
|
417
|
-
"""
|
|
476
|
+
"""A page of content entries."""
|
|
418
477
|
type ContentEntryConnection {
|
|
419
|
-
"""
|
|
478
|
+
"""The edges in this page."""
|
|
420
479
|
edges: [ContentEntryEdge!]!
|
|
421
|
-
"""
|
|
480
|
+
"""The content entries in this page."""
|
|
422
481
|
nodes: [ContentEntry!]!
|
|
423
|
-
"""
|
|
482
|
+
"""Where this page sits in the list."""
|
|
424
483
|
pageInfo: PageInfo!
|
|
425
|
-
"""
|
|
484
|
+
"""The number of content entries that match the filters."""
|
|
426
485
|
totalCount: Int!
|
|
427
486
|
}
|
|
428
487
|
```
|
|
@@ -431,53 +490,45 @@ type ContentEntryConnection {
|
|
|
431
490
|
|
|
432
491
|
```graphql
|
|
433
492
|
"""
|
|
434
|
-
A
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
Lifecycle: `assetUploadInit` reserves an id and returns a pre-signed
|
|
438
|
-
PUT URL; the dashboard uploads directly to storage; `assetCommit`
|
|
439
|
-
finalises the row with `sizeBytes`, `mimeType`, and (for images)
|
|
440
|
-
`width` / `height`. Soft-delete via `assetDelete` — the underlying
|
|
441
|
-
object is removed best-effort.
|
|
493
|
+
A file that your content points at: an image, a video, a document, or HTML. It belongs to a
|
|
494
|
+
project, and each upload of new bytes makes or replaces an asset version.
|
|
442
495
|
"""
|
|
443
496
|
type Asset {
|
|
444
|
-
"""
|
|
497
|
+
"""The ID of the asset."""
|
|
445
498
|
id: ID!
|
|
446
|
-
"""The project
|
|
499
|
+
"""The project that holds the asset."""
|
|
447
500
|
project: Project!
|
|
448
|
-
"""
|
|
501
|
+
"""The file name given at upload."""
|
|
449
502
|
fileName: String!
|
|
450
503
|
"""
|
|
451
|
-
The
|
|
504
|
+
The workbench that owns the asset. Null for an asset in the project's asset library.
|
|
452
505
|
"""
|
|
453
506
|
owner: AssetOwner
|
|
454
|
-
"""MIME type
|
|
507
|
+
"""The MIME type of the current version."""
|
|
455
508
|
mimeType: String!
|
|
456
|
-
"""
|
|
509
|
+
"""The size of the current version, in bytes."""
|
|
457
510
|
sizeBytes: Int!
|
|
458
511
|
"""
|
|
459
|
-
|
|
512
|
+
The width of the current version, in pixels. Null when it is not an image.
|
|
460
513
|
"""
|
|
461
514
|
width: Int
|
|
462
515
|
"""
|
|
463
|
-
|
|
516
|
+
The height of the current version, in pixels. Null when it is not an image.
|
|
464
517
|
"""
|
|
465
518
|
height: Int
|
|
466
519
|
"""
|
|
467
|
-
The path
|
|
520
|
+
The storage path of the current version: `<project>/<asset>/<version>/<file name>`.
|
|
468
521
|
"""
|
|
469
522
|
storagePath: String!
|
|
470
|
-
"""
|
|
471
|
-
The proxy URL the dashboard / SDK can use to fetch the current version's binary.
|
|
472
|
-
"""
|
|
523
|
+
"""The public URL of the current version's file."""
|
|
473
524
|
url: String!
|
|
474
525
|
"""
|
|
475
|
-
The version
|
|
526
|
+
The version whose bytes `url`, `mimeType`, `sizeBytes`, `width` and `height` describe.
|
|
476
527
|
"""
|
|
477
528
|
currentVersion: AssetVersion!
|
|
478
|
-
"""Every version of
|
|
529
|
+
"""Every version of the asset, oldest first."""
|
|
479
530
|
versions: [AssetVersion!]!
|
|
480
|
-
"""When
|
|
531
|
+
"""When the asset was created."""
|
|
481
532
|
createdAt: DateTime!
|
|
482
533
|
}
|
|
483
534
|
```
|
|
@@ -486,37 +537,30 @@ type Asset {
|
|
|
486
537
|
|
|
487
538
|
```graphql
|
|
488
539
|
"""
|
|
489
|
-
|
|
490
|
-
|
|
540
|
+
One file that somebody uploaded for an asset. Once a publish uses a version, the version never
|
|
541
|
+
changes, and the next upload makes a new version.
|
|
491
542
|
"""
|
|
492
543
|
type AssetVersion {
|
|
493
|
-
"""
|
|
544
|
+
"""The ID of the asset version."""
|
|
494
545
|
id: ID!
|
|
495
|
-
"""MIME type
|
|
546
|
+
"""The MIME type of the file."""
|
|
496
547
|
mimeType: String!
|
|
497
|
-
"""
|
|
548
|
+
"""The size of the file, in bytes."""
|
|
498
549
|
sizeBytes: Int!
|
|
499
|
-
"""
|
|
550
|
+
"""The width of the file, in pixels. Null when it is not an image."""
|
|
500
551
|
width: Int
|
|
501
|
-
"""
|
|
502
|
-
Intrinsic image height in pixels — populated only for image MIME types.
|
|
503
|
-
"""
|
|
552
|
+
"""The height of the file, in pixels. Null when it is not an image."""
|
|
504
553
|
height: Int
|
|
505
|
-
"""
|
|
506
|
-
True once this version has been referenced by a publish — never overwritten again.
|
|
507
|
-
"""
|
|
554
|
+
"""Whether a publish uses the version, so that it never changes."""
|
|
508
555
|
isImmutable: Boolean!
|
|
509
556
|
"""
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
while an upload that overwrites this version in place is not yet committed.
|
|
557
|
+
The lowercase hex SHA-256 of the stored bytes. Null when no hash was recorded, and while an
|
|
558
|
+
upload that replaces this version is not committed.
|
|
513
559
|
"""
|
|
514
560
|
sha256: String
|
|
515
|
-
"""
|
|
516
|
-
The proxy URL the dashboard / SDK can use to fetch this version's binary.
|
|
517
|
-
"""
|
|
561
|
+
"""The public URL of the version's file."""
|
|
518
562
|
url: String!
|
|
519
|
-
"""When
|
|
563
|
+
"""When the version was created."""
|
|
520
564
|
createdAt: DateTime!
|
|
521
565
|
}
|
|
522
566
|
```
|
|
@@ -524,11 +568,11 @@ type AssetVersion {
|
|
|
524
568
|
### `AssetOwner`
|
|
525
569
|
|
|
526
570
|
```graphql
|
|
527
|
-
"""
|
|
571
|
+
"""The workbench that owns an asset."""
|
|
528
572
|
type AssetOwner {
|
|
529
|
-
"""The
|
|
573
|
+
"""The kind of owner. Always `"workbench"`."""
|
|
530
574
|
type: String!
|
|
531
|
-
"""The
|
|
575
|
+
"""The ID of the workbench."""
|
|
532
576
|
id: String!
|
|
533
577
|
}
|
|
534
578
|
```
|
|
@@ -536,11 +580,11 @@ type AssetOwner {
|
|
|
536
580
|
### `AssetEdge`
|
|
537
581
|
|
|
538
582
|
```graphql
|
|
539
|
-
"""
|
|
583
|
+
"""An asset in a page of results."""
|
|
540
584
|
type AssetEdge {
|
|
541
|
-
"""
|
|
585
|
+
"""The cursor of this edge."""
|
|
542
586
|
cursor: String!
|
|
543
|
-
"""The
|
|
587
|
+
"""The asset."""
|
|
544
588
|
node: Asset!
|
|
545
589
|
}
|
|
546
590
|
```
|
|
@@ -548,17 +592,15 @@ type AssetEdge {
|
|
|
548
592
|
### `AssetConnection`
|
|
549
593
|
|
|
550
594
|
```graphql
|
|
551
|
-
"""
|
|
552
|
-
Relay-style connection of Assets, with both an `edges` list and a flat `nodes` accessor.
|
|
553
|
-
"""
|
|
595
|
+
"""A page of assets."""
|
|
554
596
|
type AssetConnection {
|
|
555
|
-
"""
|
|
597
|
+
"""The edges in this page."""
|
|
556
598
|
edges: [AssetEdge!]!
|
|
557
|
-
"""
|
|
599
|
+
"""The assets in this page."""
|
|
558
600
|
nodes: [Asset!]!
|
|
559
|
-
"""
|
|
601
|
+
"""Where this page sits in the list."""
|
|
560
602
|
pageInfo: PageInfo!
|
|
561
|
-
"""
|
|
603
|
+
"""The number of assets that match the filters."""
|
|
562
604
|
totalCount: Int!
|
|
563
605
|
}
|
|
564
606
|
```
|
|
@@ -567,19 +609,17 @@ type AssetConnection {
|
|
|
567
609
|
|
|
568
610
|
```graphql
|
|
569
611
|
"""
|
|
570
|
-
A
|
|
571
|
-
Model's schema changes and dependent entries' data needed to be
|
|
572
|
-
auto-coerced or dropped.
|
|
612
|
+
A change that a model schema update made to the data of one content entry.
|
|
573
613
|
"""
|
|
574
614
|
type MigrationWarning {
|
|
575
|
-
"""The
|
|
615
|
+
"""The ID of the content entry whose data changed."""
|
|
576
616
|
contentEntryId: ID!
|
|
577
|
-
"""
|
|
617
|
+
"""The path of the field in the entry data, such as `$.title`."""
|
|
578
618
|
fieldPath: String!
|
|
579
|
-
"""
|
|
619
|
+
"""What happened to the value."""
|
|
580
620
|
warningType: MigrationWarningType!
|
|
581
621
|
"""
|
|
582
|
-
|
|
622
|
+
The value before the change, cut to 80 characters. Null when the value was null.
|
|
583
623
|
"""
|
|
584
624
|
oldValue: String
|
|
585
625
|
}
|
|
@@ -589,24 +629,17 @@ type MigrationWarning {
|
|
|
589
629
|
|
|
590
630
|
```graphql
|
|
591
631
|
"""
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
instances).
|
|
595
|
-
|
|
596
|
-
Useful as a pre-publish sanity gate, especially after a Content Block
|
|
597
|
-
schema change (which does NOT auto-migrate dependent Content Entries
|
|
598
|
-
the way Content Model schema changes do).
|
|
632
|
+
The result of `workspaceContentEntryValidation`. It checks each content entry against its model's
|
|
633
|
+
schema, including embedded blocks.
|
|
599
634
|
"""
|
|
600
635
|
type WorkspaceContentEntryValidationPayload {
|
|
601
|
-
"""
|
|
636
|
+
"""The number of content entries checked."""
|
|
602
637
|
totalCount: Int!
|
|
603
|
-
"""
|
|
638
|
+
"""The number of content entries that match their schema."""
|
|
604
639
|
validCount: Int!
|
|
605
|
-
"""
|
|
640
|
+
"""The number of content entries with at least one validation error."""
|
|
606
641
|
invalidCount: Int!
|
|
607
|
-
"""
|
|
608
|
-
Per-Content-Entry outcomes, in DB-order (matches `contentEntries` query ordering).
|
|
609
|
-
"""
|
|
642
|
+
"""The outcome for each content entry, oldest first."""
|
|
610
643
|
outcomes: [ContentEntryValidationOutcome!]!
|
|
611
644
|
}
|
|
612
645
|
```
|
|
@@ -614,31 +647,23 @@ type WorkspaceContentEntryValidationPayload {
|
|
|
614
647
|
### `ContentEntryValidationOutcome`
|
|
615
648
|
|
|
616
649
|
```graphql
|
|
617
|
-
"""
|
|
650
|
+
"""The validation outcome of one content entry."""
|
|
618
651
|
type ContentEntryValidationOutcome {
|
|
619
|
-
"""
|
|
620
|
-
Identifier for the Content Entry — always present, even when `contentEntry` is null due to a soft-delete race.
|
|
621
|
-
"""
|
|
652
|
+
"""The ID of the content entry."""
|
|
622
653
|
contentEntryId: ID!
|
|
623
|
-
"""
|
|
624
|
-
Identifier for the parent Content Model — always present, even when `contentModel` is null due to a soft-delete race.
|
|
625
|
-
"""
|
|
654
|
+
"""The ID of the content entry's model."""
|
|
626
655
|
contentModelId: ID!
|
|
627
|
-
"""
|
|
628
|
-
The Content Entry that was validated. Null if it was concurrently soft-deleted.
|
|
629
|
-
"""
|
|
656
|
+
"""The content entry. Null when it was deleted during the check."""
|
|
630
657
|
contentEntry: ContentEntry
|
|
631
|
-
"""The
|
|
658
|
+
"""The content entry's model. Null when it was deleted during the check."""
|
|
632
659
|
contentModel: ContentModel
|
|
633
660
|
"""
|
|
634
|
-
|
|
661
|
+
The name of the model at the time of the check, or `(unknown)` when the model is missing.
|
|
635
662
|
"""
|
|
636
663
|
contentModelName: String!
|
|
637
|
-
"""
|
|
638
|
-
Whether the Content Entry data conforms to the parent Content Model schema.
|
|
639
|
-
"""
|
|
664
|
+
"""Whether the content entry matches its model's schema."""
|
|
640
665
|
valid: Boolean!
|
|
641
|
-
"""
|
|
666
|
+
"""The validation errors. Empty when `valid` is true."""
|
|
642
667
|
errors: [ContentEntryValidationError!]!
|
|
643
668
|
}
|
|
644
669
|
```
|
|
@@ -646,15 +671,13 @@ type ContentEntryValidationOutcome {
|
|
|
646
671
|
### `ContentEntryValidationError`
|
|
647
672
|
|
|
648
673
|
```graphql
|
|
649
|
-
"""
|
|
650
|
-
A single Content Entry validation error pinned to a path inside the `data` blob.
|
|
651
|
-
"""
|
|
674
|
+
"""A report that one field in a content entry does not match its schema."""
|
|
652
675
|
type ContentEntryValidationError {
|
|
653
676
|
"""
|
|
654
|
-
|
|
677
|
+
The path of the field in the entry data, such as `$.sections[0].headline`.
|
|
655
678
|
"""
|
|
656
679
|
path: String!
|
|
657
|
-
"""
|
|
680
|
+
"""A human-readable description of the error."""
|
|
658
681
|
message: String!
|
|
659
682
|
}
|
|
660
683
|
```
|
|
@@ -662,21 +685,21 @@ type ContentEntryValidationError {
|
|
|
662
685
|
### `ContentModelCreateInput`
|
|
663
686
|
|
|
664
687
|
```graphql
|
|
665
|
-
"""
|
|
688
|
+
"""The input of `contentModelCreate`."""
|
|
666
689
|
input ContentModelCreateInput {
|
|
667
|
-
"""
|
|
690
|
+
"""The ID of the workspace to create the model in."""
|
|
668
691
|
workspaceId: ID!
|
|
669
692
|
"""
|
|
670
|
-
|
|
693
|
+
The role of the model. Omit it for general content. It cannot change later.
|
|
671
694
|
"""
|
|
672
695
|
category: ContentModelCategory
|
|
673
|
-
"""
|
|
696
|
+
"""The name of the model. It must not be blank."""
|
|
674
697
|
name: String!
|
|
675
|
-
"""
|
|
698
|
+
"""The description of the model."""
|
|
676
699
|
description: String
|
|
677
|
-
"""
|
|
700
|
+
"""The stable identifier of the model. It cannot change later."""
|
|
678
701
|
key: String!
|
|
679
|
-
"""
|
|
702
|
+
"""The fields that the model's entries hold."""
|
|
680
703
|
schema: ContentSchemaInput!
|
|
681
704
|
}
|
|
682
705
|
```
|
|
@@ -684,9 +707,9 @@ input ContentModelCreateInput {
|
|
|
684
707
|
### `ContentModelCreatePayload`
|
|
685
708
|
|
|
686
709
|
```graphql
|
|
687
|
-
"""
|
|
710
|
+
"""The result of `contentModelCreate`."""
|
|
688
711
|
type ContentModelCreatePayload {
|
|
689
|
-
"""The created
|
|
712
|
+
"""The created model."""
|
|
690
713
|
contentModel: ContentModel
|
|
691
714
|
}
|
|
692
715
|
```
|
|
@@ -694,17 +717,15 @@ type ContentModelCreatePayload {
|
|
|
694
717
|
### `ContentModelUpdateInput`
|
|
695
718
|
|
|
696
719
|
```graphql
|
|
697
|
-
"""
|
|
720
|
+
"""The input of `contentModelUpdate`. Omit a field to keep its value."""
|
|
698
721
|
input ContentModelUpdateInput {
|
|
699
|
-
"""
|
|
722
|
+
"""The ID of the model. Required."""
|
|
700
723
|
id: ID!
|
|
701
|
-
"""
|
|
724
|
+
"""The new name. It must not be blank."""
|
|
702
725
|
name: String
|
|
703
|
-
"""
|
|
726
|
+
"""The new description."""
|
|
704
727
|
description: String
|
|
705
|
-
"""
|
|
706
|
-
New schema. Schema changes auto-migrate dependent Content Entries; affected paths are returned in `migrationWarnings`.
|
|
707
|
-
"""
|
|
728
|
+
"""The new schema. The data of the model's entries migrates to it."""
|
|
708
729
|
schema: ContentSchemaInput
|
|
709
730
|
}
|
|
710
731
|
```
|
|
@@ -712,16 +733,12 @@ input ContentModelUpdateInput {
|
|
|
712
733
|
### `ContentModelUpdatePayload`
|
|
713
734
|
|
|
714
735
|
```graphql
|
|
715
|
-
"""
|
|
716
|
-
Payload returned by `contentModelUpdate`. `migrationWarnings` lists
|
|
717
|
-
every per-Content-Entry coercion or field-removal performed when the
|
|
718
|
-
schema change required it.
|
|
719
|
-
"""
|
|
736
|
+
"""The result of `contentModelUpdate`."""
|
|
720
737
|
type ContentModelUpdatePayload {
|
|
721
|
-
"""The updated
|
|
738
|
+
"""The updated model."""
|
|
722
739
|
contentModel: ContentModel
|
|
723
740
|
"""
|
|
724
|
-
|
|
741
|
+
The values that the schema change removed from content entries. Empty when none.
|
|
725
742
|
"""
|
|
726
743
|
migrationWarnings: [MigrationWarning!]!
|
|
727
744
|
}
|
|
@@ -730,11 +747,9 @@ type ContentModelUpdatePayload {
|
|
|
730
747
|
### `ContentModelDeleteInput`
|
|
731
748
|
|
|
732
749
|
```graphql
|
|
733
|
-
"""
|
|
734
|
-
Input for `contentModelDelete`. Refused if dependent Content Entry rows still exist.
|
|
735
|
-
"""
|
|
750
|
+
"""The input of `contentModelDelete`."""
|
|
736
751
|
input ContentModelDeleteInput {
|
|
737
|
-
"""
|
|
752
|
+
"""The ID of the model."""
|
|
738
753
|
id: ID!
|
|
739
754
|
}
|
|
740
755
|
```
|
|
@@ -742,9 +757,9 @@ input ContentModelDeleteInput {
|
|
|
742
757
|
### `ContentModelDeletePayload`
|
|
743
758
|
|
|
744
759
|
```graphql
|
|
745
|
-
"""
|
|
760
|
+
"""The result of `contentModelDelete`."""
|
|
746
761
|
type ContentModelDeletePayload {
|
|
747
|
-
"""ID of the deleted
|
|
762
|
+
"""The ID of the deleted model."""
|
|
748
763
|
contentModelId: ID
|
|
749
764
|
}
|
|
750
765
|
```
|
|
@@ -752,21 +767,21 @@ type ContentModelDeletePayload {
|
|
|
752
767
|
### `ContentBlockCreateInput`
|
|
753
768
|
|
|
754
769
|
```graphql
|
|
755
|
-
"""
|
|
770
|
+
"""The input of `contentBlockCreate`."""
|
|
756
771
|
input ContentBlockCreateInput {
|
|
757
|
-
"""
|
|
772
|
+
"""The ID of the workspace to create the block in."""
|
|
758
773
|
workspaceId: ID!
|
|
759
774
|
"""
|
|
760
|
-
|
|
775
|
+
The role of the block. Omit it for general content. It cannot change later.
|
|
761
776
|
"""
|
|
762
777
|
category: ContentBlockCategory
|
|
763
|
-
"""
|
|
778
|
+
"""The name of the block. It must not be blank."""
|
|
764
779
|
name: String!
|
|
765
|
-
"""
|
|
780
|
+
"""The description of the block."""
|
|
766
781
|
description: String
|
|
767
|
-
"""
|
|
782
|
+
"""The stable identifier of the block. It cannot change later."""
|
|
768
783
|
key: String!
|
|
769
|
-
"""
|
|
784
|
+
"""The fields that each instance of the block holds."""
|
|
770
785
|
schema: ContentSchemaInput!
|
|
771
786
|
}
|
|
772
787
|
```
|
|
@@ -774,9 +789,9 @@ input ContentBlockCreateInput {
|
|
|
774
789
|
### `ContentBlockCreatePayload`
|
|
775
790
|
|
|
776
791
|
```graphql
|
|
777
|
-
"""
|
|
792
|
+
"""The result of `contentBlockCreate`."""
|
|
778
793
|
type ContentBlockCreatePayload {
|
|
779
|
-
"""The created
|
|
794
|
+
"""The created block."""
|
|
780
795
|
contentBlock: ContentBlock
|
|
781
796
|
}
|
|
782
797
|
```
|
|
@@ -784,16 +799,16 @@ type ContentBlockCreatePayload {
|
|
|
784
799
|
### `ContentBlockUpdateInput`
|
|
785
800
|
|
|
786
801
|
```graphql
|
|
787
|
-
"""
|
|
802
|
+
"""The input of `contentBlockUpdate`. Omit a field to keep its value."""
|
|
788
803
|
input ContentBlockUpdateInput {
|
|
789
|
-
"""
|
|
804
|
+
"""The ID of the block. Required."""
|
|
790
805
|
id: ID!
|
|
791
|
-
"""
|
|
806
|
+
"""The new name. It must not be blank."""
|
|
792
807
|
name: String
|
|
793
|
-
"""
|
|
808
|
+
"""The new description."""
|
|
794
809
|
description: String
|
|
795
810
|
"""
|
|
796
|
-
|
|
811
|
+
The new schema. The data of content entries that embed the block does not migrate.
|
|
797
812
|
"""
|
|
798
813
|
schema: ContentSchemaInput
|
|
799
814
|
}
|
|
@@ -802,9 +817,9 @@ input ContentBlockUpdateInput {
|
|
|
802
817
|
### `ContentBlockUpdatePayload`
|
|
803
818
|
|
|
804
819
|
```graphql
|
|
805
|
-
"""
|
|
820
|
+
"""The result of `contentBlockUpdate`."""
|
|
806
821
|
type ContentBlockUpdatePayload {
|
|
807
|
-
"""The updated
|
|
822
|
+
"""The updated block."""
|
|
808
823
|
contentBlock: ContentBlock
|
|
809
824
|
}
|
|
810
825
|
```
|
|
@@ -812,9 +827,9 @@ type ContentBlockUpdatePayload {
|
|
|
812
827
|
### `ContentBlockDeleteInput`
|
|
813
828
|
|
|
814
829
|
```graphql
|
|
815
|
-
"""
|
|
830
|
+
"""The input of `contentBlockDelete`."""
|
|
816
831
|
input ContentBlockDeleteInput {
|
|
817
|
-
"""
|
|
832
|
+
"""The ID of the block."""
|
|
818
833
|
id: ID!
|
|
819
834
|
}
|
|
820
835
|
```
|
|
@@ -822,9 +837,9 @@ input ContentBlockDeleteInput {
|
|
|
822
837
|
### `ContentBlockDeletePayload`
|
|
823
838
|
|
|
824
839
|
```graphql
|
|
825
|
-
"""
|
|
840
|
+
"""The result of `contentBlockDelete`."""
|
|
826
841
|
type ContentBlockDeletePayload {
|
|
827
|
-
"""ID of the deleted
|
|
842
|
+
"""The ID of the deleted block."""
|
|
828
843
|
contentBlockId: ID
|
|
829
844
|
}
|
|
830
845
|
```
|
|
@@ -832,13 +847,14 @@ type ContentBlockDeletePayload {
|
|
|
832
847
|
### `ContentEntryCreateInput`
|
|
833
848
|
|
|
834
849
|
```graphql
|
|
835
|
-
"""
|
|
850
|
+
"""The input of `contentEntryCreate`."""
|
|
836
851
|
input ContentEntryCreateInput {
|
|
852
|
+
"""The ID of the model whose schema the data must match."""
|
|
853
|
+
contentModelId: ID!
|
|
837
854
|
"""
|
|
838
|
-
|
|
855
|
+
The values of the content entry. Empty data makes an empty entry; data with any value must hold
|
|
856
|
+
every required field.
|
|
839
857
|
"""
|
|
840
|
-
contentModelId: ID!
|
|
841
|
-
"""The entry's data, structurally typed against the parent schema."""
|
|
842
858
|
data: ContentEntryDataInput!
|
|
843
859
|
}
|
|
844
860
|
```
|
|
@@ -846,9 +862,9 @@ input ContentEntryCreateInput {
|
|
|
846
862
|
### `ContentEntryCreatePayload`
|
|
847
863
|
|
|
848
864
|
```graphql
|
|
849
|
-
"""
|
|
865
|
+
"""The result of `contentEntryCreate`."""
|
|
850
866
|
type ContentEntryCreatePayload {
|
|
851
|
-
"""The created
|
|
867
|
+
"""The created content entry."""
|
|
852
868
|
contentEntry: ContentEntry
|
|
853
869
|
}
|
|
854
870
|
```
|
|
@@ -856,13 +872,14 @@ type ContentEntryCreatePayload {
|
|
|
856
872
|
### `ContentEntryUpdateInput`
|
|
857
873
|
|
|
858
874
|
```graphql
|
|
859
|
-
"""
|
|
860
|
-
Input for `contentEntryUpdate`. The entire `data` blob is replaced; partial updates are not supported.
|
|
861
|
-
"""
|
|
875
|
+
"""The input of `contentEntryUpdate`. Every field is required."""
|
|
862
876
|
input ContentEntryUpdateInput {
|
|
863
|
-
"""
|
|
877
|
+
"""The ID of the content entry."""
|
|
864
878
|
id: ID!
|
|
865
|
-
"""
|
|
879
|
+
"""
|
|
880
|
+
The new values of the content entry. They replace all of its data and must hold every required
|
|
881
|
+
field.
|
|
882
|
+
"""
|
|
866
883
|
data: ContentEntryDataInput!
|
|
867
884
|
}
|
|
868
885
|
```
|
|
@@ -870,9 +887,9 @@ input ContentEntryUpdateInput {
|
|
|
870
887
|
### `ContentEntryUpdatePayload`
|
|
871
888
|
|
|
872
889
|
```graphql
|
|
873
|
-
"""
|
|
890
|
+
"""The result of `contentEntryUpdate`."""
|
|
874
891
|
type ContentEntryUpdatePayload {
|
|
875
|
-
"""The updated
|
|
892
|
+
"""The updated content entry."""
|
|
876
893
|
contentEntry: ContentEntry
|
|
877
894
|
}
|
|
878
895
|
```
|
|
@@ -880,9 +897,9 @@ type ContentEntryUpdatePayload {
|
|
|
880
897
|
### `ContentEntryDeleteInput`
|
|
881
898
|
|
|
882
899
|
```graphql
|
|
883
|
-
"""
|
|
900
|
+
"""The input of `contentEntryDelete`."""
|
|
884
901
|
input ContentEntryDeleteInput {
|
|
885
|
-
"""
|
|
902
|
+
"""The ID of the content entry."""
|
|
886
903
|
id: ID!
|
|
887
904
|
}
|
|
888
905
|
```
|
|
@@ -890,9 +907,9 @@ input ContentEntryDeleteInput {
|
|
|
890
907
|
### `ContentEntryDeletePayload`
|
|
891
908
|
|
|
892
909
|
```graphql
|
|
893
|
-
"""
|
|
910
|
+
"""The result of `contentEntryDelete`."""
|
|
894
911
|
type ContentEntryDeletePayload {
|
|
895
|
-
"""ID of the deleted
|
|
912
|
+
"""The ID of the deleted content entry."""
|
|
896
913
|
contentEntryId: ID
|
|
897
914
|
}
|
|
898
915
|
```
|
|
@@ -901,43 +918,35 @@ type ContentEntryDeletePayload {
|
|
|
901
918
|
|
|
902
919
|
```graphql
|
|
903
920
|
"""
|
|
904
|
-
|
|
905
|
-
|
|
906
|
-
overwrites the current version in place while it is mutable, or forks a new
|
|
907
|
-
version once the current version has been published (copy-on-write).
|
|
908
|
-
|
|
909
|
-
Passing `sha256` on a new project-level upload (no `assetId`, no `workbenchId`)
|
|
910
|
-
deduplicates it: when a non-deleted, project-level (not Workbench-owned) Asset
|
|
911
|
-
in the same project already has a version with those bytes, the payload returns that Asset and version with
|
|
912
|
-
`deduplicated: true` and no `uploadUrl`, and there is nothing to upload or
|
|
913
|
-
commit.
|
|
921
|
+
The input of `assetUploadInit`. With `assetId`, the upload replaces the current version while no
|
|
922
|
+
publish uses it, and makes a new version once one does.
|
|
914
923
|
"""
|
|
915
924
|
input AssetUploadInitInput {
|
|
916
|
-
"""
|
|
925
|
+
"""The ID of the project to upload the asset into."""
|
|
917
926
|
projectId: ID!
|
|
918
927
|
"""
|
|
919
|
-
|
|
928
|
+
The file name. It must not contain `/` or `\`. Ignored when `path` is given.
|
|
920
929
|
"""
|
|
921
930
|
fileName: String!
|
|
922
|
-
"""
|
|
923
|
-
MIME type the dashboard expects to upload. Must match the uploaded bytes' content-type.
|
|
924
|
-
"""
|
|
931
|
+
"""The MIME type of the bytes to upload."""
|
|
925
932
|
contentType: String!
|
|
926
933
|
"""
|
|
927
|
-
|
|
934
|
+
The ID of an existing asset to upload new bytes for. Omit it to create an asset.
|
|
928
935
|
"""
|
|
929
936
|
assetId: ID
|
|
930
|
-
"""
|
|
937
|
+
"""
|
|
938
|
+
The ID of the workbench the upload belongs to. It must be in the same project.
|
|
939
|
+
"""
|
|
931
940
|
workbenchId: ID
|
|
932
941
|
"""
|
|
933
|
-
|
|
934
|
-
|
|
942
|
+
The path of the file in the workbench, such as `drafts/outline-v1.md`. The file name is the part
|
|
943
|
+
after the last `/`.
|
|
935
944
|
"""
|
|
936
945
|
path: String
|
|
937
946
|
"""
|
|
938
|
-
|
|
939
|
-
|
|
940
|
-
|
|
947
|
+
The hex SHA-256 of the bytes to upload, 64 characters in either case. On a new upload with no
|
|
948
|
+
`assetId` and no `workbenchId`, an asset-library asset that already holds these bytes is
|
|
949
|
+
returned.
|
|
941
950
|
"""
|
|
942
951
|
sha256: String
|
|
943
952
|
}
|
|
@@ -947,32 +956,29 @@ input AssetUploadInitInput {
|
|
|
947
956
|
|
|
948
957
|
```graphql
|
|
949
958
|
"""
|
|
950
|
-
|
|
951
|
-
|
|
952
|
-
|
|
953
|
-
`assetCommit` with `assetId`, `versionId` and `storagePath`. When it is true,
|
|
954
|
-
`assetId` and `versionId` name an existing committed version whose bytes match
|
|
955
|
-
the declared `sha256`; reference them directly, with no upload and no commit.
|
|
959
|
+
The result of `assetUploadInit`. When `deduplicated` is false, PUT the bytes to `uploadUrl`, then
|
|
960
|
+
call `assetCommit`; when it is true, the existing version holds the bytes and needs no upload or
|
|
961
|
+
commit.
|
|
956
962
|
"""
|
|
957
963
|
type AssetUploadInitPayload {
|
|
958
964
|
"""
|
|
959
|
-
|
|
965
|
+
The pre-signed URL to PUT the bytes to. Null when `deduplicated` is true.
|
|
960
966
|
"""
|
|
961
967
|
uploadUrl: String
|
|
962
968
|
"""
|
|
963
|
-
The
|
|
969
|
+
The ID of the asset: a new ID, the `assetId` given, or the asset that holds matching bytes.
|
|
964
970
|
"""
|
|
965
971
|
assetId: ID!
|
|
966
972
|
"""
|
|
967
|
-
The version
|
|
973
|
+
The ID of the version that the upload writes, or of the existing version that matches.
|
|
968
974
|
"""
|
|
969
975
|
versionId: ID!
|
|
970
976
|
"""
|
|
971
|
-
|
|
977
|
+
The storage path that the upload writes to, or the path of the matching version.
|
|
972
978
|
"""
|
|
973
979
|
storagePath: String!
|
|
974
980
|
"""
|
|
975
|
-
|
|
981
|
+
Whether the project already holds the bytes, so nothing needs uploading.
|
|
976
982
|
"""
|
|
977
983
|
deduplicated: Boolean!
|
|
978
984
|
}
|
|
@@ -981,34 +987,29 @@ type AssetUploadInitPayload {
|
|
|
981
987
|
### `AssetCommitInput`
|
|
982
988
|
|
|
983
989
|
```graphql
|
|
984
|
-
"""
|
|
985
|
-
Input for `assetCommit` — finalise an upload by recording `sizeBytes`, `mimeType`, and intrinsic dimensions.
|
|
986
|
-
"""
|
|
990
|
+
"""The input of `assetCommit`."""
|
|
987
991
|
input AssetCommitInput {
|
|
988
|
-
"""
|
|
992
|
+
"""The ID of the project that holds the asset."""
|
|
989
993
|
projectId: ID!
|
|
990
|
-
"""
|
|
994
|
+
"""The ID of the asset that `assetUploadInit` returned."""
|
|
991
995
|
assetId: ID!
|
|
992
|
-
"""
|
|
996
|
+
"""The ID of the version that `assetUploadInit` returned."""
|
|
993
997
|
versionId: ID!
|
|
994
|
-
"""
|
|
998
|
+
"""The file name given to `assetUploadInit`."""
|
|
995
999
|
fileName: String!
|
|
996
|
-
"""
|
|
1000
|
+
"""The storage path that `assetUploadInit` returned."""
|
|
997
1001
|
storagePath: String!
|
|
998
1002
|
"""
|
|
999
|
-
The
|
|
1003
|
+
The ID of the workbench the upload belongs to. It becomes the owner of a new asset only.
|
|
1000
1004
|
"""
|
|
1001
1005
|
workbenchId: ID
|
|
1002
1006
|
"""
|
|
1003
|
-
|
|
1004
|
-
|
|
1005
|
-
derived from the segment after the last `/` when omitted.
|
|
1007
|
+
The path of the file in the workbench, such as `drafts/outline-v1.md`. It applies only with
|
|
1008
|
+
`workbenchId`.
|
|
1006
1009
|
"""
|
|
1007
1010
|
path: String
|
|
1008
1011
|
"""
|
|
1009
|
-
|
|
1010
|
-
returns a `HASH_MISMATCH` user error, and records no version, if the stored
|
|
1011
|
-
bytes hash to anything else.
|
|
1012
|
+
The hex SHA-256 given to `assetUploadInit`. Bytes that hash differently fail the commit.
|
|
1012
1013
|
"""
|
|
1013
1014
|
sha256: String
|
|
1014
1015
|
}
|
|
@@ -1017,13 +1018,11 @@ input AssetCommitInput {
|
|
|
1017
1018
|
### `AssetCommitPayload`
|
|
1018
1019
|
|
|
1019
1020
|
```graphql
|
|
1020
|
-
"""
|
|
1021
|
+
"""The result of `assetCommit`."""
|
|
1021
1022
|
type AssetCommitPayload {
|
|
1022
|
-
"""
|
|
1023
|
-
The committed Asset, now ready to be referenced from Content Entry data. Null when a `userError` was returned.
|
|
1024
|
-
"""
|
|
1023
|
+
"""The committed asset. Null when the commit failed with a user error."""
|
|
1025
1024
|
asset: Asset
|
|
1026
|
-
"""
|
|
1025
|
+
"""The errors that stopped the commit. Empty on success."""
|
|
1027
1026
|
userErrors: [AssetCommitUserError!]!
|
|
1028
1027
|
}
|
|
1029
1028
|
```
|
|
@@ -1031,9 +1030,9 @@ type AssetCommitPayload {
|
|
|
1031
1030
|
### `AssetCommitErrorCode`
|
|
1032
1031
|
|
|
1033
1032
|
```graphql
|
|
1034
|
-
"""
|
|
1033
|
+
"""The reason an `assetCommit` failed."""
|
|
1035
1034
|
enum AssetCommitErrorCode {
|
|
1036
|
-
"""The stored bytes do not hash to the `sha256`
|
|
1035
|
+
"""The stored bytes do not hash to the `sha256` in the input."""
|
|
1037
1036
|
HASH_MISMATCH
|
|
1038
1037
|
}
|
|
1039
1038
|
```
|
|
@@ -1041,13 +1040,15 @@ enum AssetCommitErrorCode {
|
|
|
1041
1040
|
### `AssetCommitUserError`
|
|
1042
1041
|
|
|
1043
1042
|
```graphql
|
|
1044
|
-
"""
|
|
1043
|
+
"""An error that stopped an `assetCommit`."""
|
|
1045
1044
|
type AssetCommitUserError {
|
|
1046
|
-
"""
|
|
1045
|
+
"""
|
|
1046
|
+
The path to the input field that caused the error. Null when no field did.
|
|
1047
|
+
"""
|
|
1047
1048
|
field: [String!]
|
|
1048
|
-
"""
|
|
1049
|
+
"""A human-readable description of the error."""
|
|
1049
1050
|
message: String!
|
|
1050
|
-
"""
|
|
1051
|
+
"""The reason for the error."""
|
|
1051
1052
|
code: AssetCommitErrorCode!
|
|
1052
1053
|
}
|
|
1053
1054
|
```
|
|
@@ -1055,11 +1056,9 @@ type AssetCommitUserError {
|
|
|
1055
1056
|
### `AssetDeleteInput`
|
|
1056
1057
|
|
|
1057
1058
|
```graphql
|
|
1058
|
-
"""
|
|
1059
|
-
Input for `assetDelete` — soft-deletes the Asset row. The underlying storage object is removed best-effort.
|
|
1060
|
-
"""
|
|
1059
|
+
"""The input of `assetDelete`."""
|
|
1061
1060
|
input AssetDeleteInput {
|
|
1062
|
-
"""
|
|
1061
|
+
"""The ID of the asset."""
|
|
1063
1062
|
id: ID!
|
|
1064
1063
|
}
|
|
1065
1064
|
```
|
|
@@ -1067,9 +1066,9 @@ input AssetDeleteInput {
|
|
|
1067
1066
|
### `AssetDeletePayload`
|
|
1068
1067
|
|
|
1069
1068
|
```graphql
|
|
1070
|
-
"""
|
|
1069
|
+
"""The result of `assetDelete`."""
|
|
1071
1070
|
type AssetDeletePayload {
|
|
1072
|
-
"""ID of the deleted
|
|
1071
|
+
"""The ID of the deleted asset."""
|
|
1073
1072
|
assetId: ID
|
|
1074
1073
|
}
|
|
1075
1074
|
```
|
|
@@ -1077,15 +1076,13 @@ type AssetDeletePayload {
|
|
|
1077
1076
|
### `ContentBlockSortKeys`
|
|
1078
1077
|
|
|
1079
1078
|
```graphql
|
|
1080
|
-
"""
|
|
1081
|
-
Sort keys for `contentBlocks(...)`. Pair with `reverse: true` to flip the order.
|
|
1082
|
-
"""
|
|
1079
|
+
"""The order of `contentBlocks`."""
|
|
1083
1080
|
enum ContentBlockSortKeys {
|
|
1084
|
-
"""
|
|
1081
|
+
"""By name, A to Z."""
|
|
1085
1082
|
NAME
|
|
1086
|
-
"""
|
|
1083
|
+
"""By creation time, oldest first."""
|
|
1087
1084
|
CREATED_AT
|
|
1088
|
-
"""
|
|
1085
|
+
"""By last change, oldest first."""
|
|
1089
1086
|
UPDATED_AT
|
|
1090
1087
|
}
|
|
1091
1088
|
```
|
|
@@ -1093,15 +1090,13 @@ enum ContentBlockSortKeys {
|
|
|
1093
1090
|
### `ContentModelSortKeys`
|
|
1094
1091
|
|
|
1095
1092
|
```graphql
|
|
1096
|
-
"""
|
|
1097
|
-
Sort keys for `contentModels(...)`. Pair with `reverse: true` to flip the order.
|
|
1098
|
-
"""
|
|
1093
|
+
"""The order of `contentModels`."""
|
|
1099
1094
|
enum ContentModelSortKeys {
|
|
1100
|
-
"""
|
|
1095
|
+
"""By name, A to Z."""
|
|
1101
1096
|
NAME
|
|
1102
|
-
"""
|
|
1097
|
+
"""By creation time, oldest first."""
|
|
1103
1098
|
CREATED_AT
|
|
1104
|
-
"""
|
|
1099
|
+
"""By last change, oldest first."""
|
|
1105
1100
|
UPDATED_AT
|
|
1106
1101
|
}
|
|
1107
1102
|
```
|
|
@@ -1109,13 +1104,11 @@ enum ContentModelSortKeys {
|
|
|
1109
1104
|
### `ContentEntrySortKeys`
|
|
1110
1105
|
|
|
1111
1106
|
```graphql
|
|
1112
|
-
"""
|
|
1113
|
-
Sort keys for `contentEntries(...)`. Entries have no name; pair with `reverse: true` to flip the order.
|
|
1114
|
-
"""
|
|
1107
|
+
"""The order of `contentEntries`."""
|
|
1115
1108
|
enum ContentEntrySortKeys {
|
|
1116
|
-
"""
|
|
1109
|
+
"""By creation time, oldest first."""
|
|
1117
1110
|
CREATED_AT
|
|
1118
|
-
"""
|
|
1111
|
+
"""By last change, oldest first."""
|
|
1119
1112
|
UPDATED_AT
|
|
1120
1113
|
}
|
|
1121
1114
|
```
|
|
@@ -1123,13 +1116,11 @@ enum ContentEntrySortKeys {
|
|
|
1123
1116
|
### `AssetSortKeys`
|
|
1124
1117
|
|
|
1125
1118
|
```graphql
|
|
1126
|
-
"""
|
|
1127
|
-
Sort keys for `assets(...)`. Pair with `reverse: true` to flip the order.
|
|
1128
|
-
"""
|
|
1119
|
+
"""The order of `assets`."""
|
|
1129
1120
|
enum AssetSortKeys {
|
|
1130
|
-
"""
|
|
1121
|
+
"""By file name, A to Z."""
|
|
1131
1122
|
NAME
|
|
1132
|
-
"""
|
|
1123
|
+
"""By upload time, oldest first."""
|
|
1133
1124
|
CREATED_AT
|
|
1134
1125
|
}
|
|
1135
1126
|
```
|
|
@@ -1138,7 +1129,7 @@ enum AssetSortKeys {
|
|
|
1138
1129
|
|
|
1139
1130
|
```graphql
|
|
1140
1131
|
"""
|
|
1141
|
-
A media
|
|
1132
|
+
A media type group of assets, matched against the MIME type of the current version.
|
|
1142
1133
|
"""
|
|
1143
1134
|
enum AssetKind {
|
|
1144
1135
|
"""`image/*`."""
|
|
@@ -1147,9 +1138,9 @@ enum AssetKind {
|
|
|
1147
1138
|
VIDEO
|
|
1148
1139
|
"""`audio/*`."""
|
|
1149
1140
|
AUDIO
|
|
1150
|
-
"""
|
|
1141
|
+
"""Any file that is not an image, video, audio or archive."""
|
|
1151
1142
|
DOCUMENT
|
|
1152
|
-
"""
|
|
1143
|
+
"""An archive: zip, rar, gzip, 7z or tar."""
|
|
1153
1144
|
ARCHIVE
|
|
1154
1145
|
}
|
|
1155
1146
|
```
|