Represents a binary data submission using Form Data rather than JSON.
It can only be used as the schema of a Persist Async configuration.
obj {
id = "#schema"
properties {
string("file") {
persistAsync {
url = "/upload"
method = HttpMethod.POST
param = "bodyAttribute"
idProperty = "token"
schema = BlobSchema.build {
source = Upload.Source.FILE
title = "Invoice"
description = "PNG, JPG, or PDF, less than 5mb"
accepts = listOf(
"image/png",
"image/jpg",
"application/pdf"
)
}
}
}
}
}| Property | Type | Required | Description |
|---|---|---|---|
$id | String | No | A unique id which can be used to refer to the schema. |
accepts | Array<String> | No | Array of MIME types the field should accept. If null, any type of file is accepted. Wildcard MIME types are allowed, but support for them varies from platform to platform. Clients must support at least image, audio, and video. Any unrecognised MIME types will be ignored. |
| String | No | Additional information to be displayed to the user.
|
alert | AlertLayout | No | Configure an alert which will be displayed above the UI for this schema. This can be used to provide warnings or additional information to the user, but shouldn't be used for validation. For client-side validation please see the validation available on each schema type, or see Validate Async and Action for server-side validation. |
analyticsId | String | No | An internal id which is attached to analytics events relating to the schema. It allows you to override $id during event emission, it is not user-facing and does not have to be unique within the step. |
cameraConfig | Any | No | Provide client-specific configuration for the camera capture experience. |
control | String | No | An identifier which can be used to request the client use a particular UI control to represent this schema. |
description | String | No | A user-facing description for the schema. |
disabled | Boolean | No | If true, the UI for this schema will not accept input, but the corresponding data will still be submitted. Defaults to false. |
hidden | Boolean | No | If true, no UI will be shown to the user for this schema, but the corresponding data will still be submitted. Defaults to false. |
icon | Icon | No | An icon which the client can use to represent this entity. |
image | Image | No | An image which the client can use to represent this entity. |
| No | An alert that will be displayed inline with the item.
| |
keywords | Array<String> | No | A list of keywords that can be used when searching or filtering items in a One Of Schema. Only applies when this schema is child schema in a One Of Schema. |
maxSize | Long | No | The maximum file size in bytes. If null, file size is unlimited. |
media | Media | No | A media object which the client can use to represent this entity. |
source | Upload.Source | No | Valid sources for the file. If null, any source is permitted. |
summary | Summary.Provider | No | Configure how this schema will be summarised when included in an Array Schema. |
| No | An object containing two strings representing two user-facing values. One being clearly more important than the other.
| |
| Array<String> | No | An optional list of identifiers used to configure renderers.
|
title | String | No | A user-facing title for the schema. |
type | String | Yes | It must be blob. |
validationAsync | ValidateAsync | No | |
validationMessages | Map<String, String> | No | An object where each property/value pair is the name of a validation property (e.g. maximum) to the user-facing error message to display if the validation fails. |