| Requires the role: | superadmin |
| PUT | /widget/configurationschema/{Version}/migration | Set or replace the migration patch from the previous schema version | Sets MigrationFromPreviousVersion for the given Version. SuperAdmin only. Overwrites any existing value for this Version — unlike the schema document itself, this field is expected to be corrected after authoring, not immutable. |
|---|
"use strict";
export class WidgetConfigurationSchemaResponse {
/** @param {{Id?:number,Version?:number,Schema?:{ [index:string]: Object; },DefaultConfiguration?:string,MigrationFromPreviousVersion?:string,CreatedDate?:string,ResponseStatus?:ResponseStatus}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
Id;
/** @type {number} */
Version;
/** @type {{ [index:string]: Object; }} */
Schema = {};
/** @type {?string} */
DefaultConfiguration;
/** @type {?string} */
MigrationFromPreviousVersion;
/** @type {string} */
CreatedDate;
/** @type {ResponseStatus} */
ResponseStatus;
}
export class SetWidgetConfigurationSchemaMigration {
/** @param {{Version?:number,Patch?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {number}
* @description The schema version this patch produces. */
Version;
/**
* @type {string}
* @description JSON Patch (RFC 6902) document transforming a Version-1 shaped Configuration into a Version-shaped one, as a JSON string. */
Patch;
}
JavaScript SetWidgetConfigurationSchemaMigration DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
PUT /widget/configurationschema/{Version}/migration HTTP/1.1
Host: api.bookmore.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
Version: 0,
Patch: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
Id: 0,
Version: 0,
Schema:
{
String: {}
},
DefaultConfiguration: String,
MigrationFromPreviousVersion: String,
ResponseStatus:
{
ErrorCode: String,
Message: String,
StackTrace: String,
Errors:
[
{
ErrorCode: String,
FieldName: String,
Message: String,
Meta:
{
String: String
}
}
],
Meta:
{
String: String
}
}
}