| 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. |
|---|
Imports System
Imports System.IO
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports BokaMera.API.ServiceModel.Dtos
Namespace Global
Namespace BokaMera.API.ServiceModel.Dtos
<ApiResponse(Description:="Returned if Version doesn't exist, Version-1 doesn't exist, Patch isn't a well-formed RFC 6902 document, references a path unknown to the previous version's schema, or (when the previous version has a DefaultConfiguration) doesn't produce a document that validates against this Version's Schema", StatusCode:=400)>
<ApiResponse(Description:="Returned if the current user is not a SuperAdmin", StatusCode:=401)>
<ValidateRequest(Validator:="IsAuthenticated")>
Public Partial Class SetWidgetConfigurationSchemaMigration
'''<Summary>
'''The schema version this patch produces.
'''</Summary>
<ApiMember(Description:="The schema version this patch produces.", IsRequired:=true, ParameterType:="path")>
Public Overridable Property Version As Integer
'''<Summary>
'''JSON Patch (RFC 6902) document transforming a Version-1 shaped Configuration into a Version-shaped one, as a JSON string.
'''</Summary>
<ApiMember(Description:="JSON Patch (RFC 6902) document transforming a Version-1 shaped Configuration into a Version-shaped one, as a JSON string.", IsRequired:=true)>
Public Overridable Property Patch As String
End Class
Public Partial Class WidgetConfigurationSchemaResponse
Public Overridable Property Id As Integer
Public Overridable Property Version As Integer
Public Overridable Property Schema As Dictionary(Of String, Object) = New Dictionary(Of String, Object)
Public Overridable Property DefaultConfiguration As String
Public Overridable Property MigrationFromPreviousVersion As String
Public Overridable Property CreatedDate As Date
Public Overridable Property ResponseStatus As ResponseStatus
End Class
End Namespace
End Namespace
VB.NET SetWidgetConfigurationSchemaMigration DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
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/csv
Content-Type: text/csv
Content-Length: length
{"Version":0,"Patch":"String"}
HTTP/1.1 200 OK
Content-Type: text/csv
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"}}}