BokaMera.API.Host

<back to all web services

SetWidgetConfigurationSchemaMigration

Requires Authentication
Requires the role:superadmin
The following routes are available for this service:
PUT/widget/configurationschema/{Version}/migrationSet or replace the migration patch from the previous schema versionSets 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 .xml suffix or ?format=xml

HTTP + XML

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: application/xml
Content-Type: application/xml
Content-Length: length

<SetWidgetConfigurationSchemaMigration xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BokaMera.API.ServiceModel.Dtos">
  <Patch>String</Patch>
  <Version>0</Version>
</SetWidgetConfigurationSchemaMigration>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<WidgetConfigurationSchemaResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BokaMera.API.ServiceModel.Dtos">
  <CreatedDate>0001-01-01T00:00:00</CreatedDate>
  <DefaultConfiguration>String</DefaultConfiguration>
  <Id>0</Id>
  <MigrationFromPreviousVersion>String</MigrationFromPreviousVersion>
  <ResponseStatus xmlns:d2p1="http://schemas.servicestack.net/types">
    <d2p1:ErrorCode>String</d2p1:ErrorCode>
    <d2p1:Message>String</d2p1:Message>
    <d2p1:StackTrace>String</d2p1:StackTrace>
    <d2p1:Errors>
      <d2p1:ResponseError>
        <d2p1:ErrorCode>String</d2p1:ErrorCode>
        <d2p1:FieldName>String</d2p1:FieldName>
        <d2p1:Message>String</d2p1:Message>
        <d2p1:Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:KeyValueOfstringstring>
            <d5p1:Key>String</d5p1:Key>
            <d5p1:Value>String</d5p1:Value>
          </d5p1:KeyValueOfstringstring>
        </d2p1:Meta>
      </d2p1:ResponseError>
    </d2p1:Errors>
    <d2p1:Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:KeyValueOfstringstring>
        <d3p1:Key>String</d3p1:Key>
        <d3p1:Value>String</d3p1:Value>
      </d3p1:KeyValueOfstringstring>
    </d2p1:Meta>
  </ResponseStatus>
  <Schema xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:KeyValueOfstringanyType>
      <d2p1:Key>String</d2p1:Key>
      <d2p1:Value />
    </d2p1:KeyValueOfstringanyType>
  </Schema>
  <Version>0</Version>
</WidgetConfigurationSchemaResponse>