BokaMera.API.Host

<back to all web services

DeleteWidgetConfiguration

Requires Authentication
The following routes are available for this service:
DELETE/widget/configuration/{Id}Delete a widget configurationPermanently removes a widget configuration. If the target configuration is the auto-provisioned homepage default (slug 'homepage-'), the row is not deleted — its Configuration JSON is reset to the factory default and the reset configuration is returned with HTTP 200.
namespace BokaMera.API.ServiceModel.Dtos

open System
open System.IO
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations

    [<AllowNullLiteral>]
    type WidgetConfigurationResponse() = 
        member val Id:String = null with get,set
        member val CompanyId:Guid = new Guid() with get,set
        member val Name:String = null with get,set
        member val Slug:String = null with get,set
        member val Description:String = null with get,set
        member val Configuration:String = null with get,set
        member val SchemaVersion:Int32 = new Int32() with get,set
        member val CreatedDate:DateTime = new DateTime() with get,set
        member val UpdatedDate:Nullable<DateTimeOffset> = new Nullable<DateTimeOffset>() with get,set
        member val ResponseStatus:ResponseStatus = null with get,set

    [<ApiResponse(Description="Returned if the configuration was not found", StatusCode=404)>]
    [<ApiResponse(Description="Returned if the current user is not allowed to perform the action", StatusCode=401)>]
    [<ValidateRequest(Validator="IsAuthenticated")>]
    [<AllowNullLiteral>]
    type DeleteWidgetConfiguration() = 
        ///<summary>
        ///The company id, if empty will use the company id for the user you are logged in with.
        ///</summary>
        [<ApiMember(Description="The company id, if empty will use the company id for the user you are logged in with.")>]
        member val CompanyId:Nullable<Guid> = new Nullable<Guid>() with get,set

        ///<summary>
        ///The widget configuration id (6-character NanoID).
        ///</summary>
        [<ApiMember(Description="The widget configuration id (6-character NanoID).", IsRequired=true, ParameterType="path")>]
        member val Id:String = null with get,set

F# DeleteWidgetConfiguration DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

DELETE /widget/configuration/{Id} HTTP/1.1 
Host: api-staging.bookmore.com 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	Id: String,
	Name: String,
	Slug: String,
	Description: String,
	Configuration: String,
	SchemaVersion: 0,
	UpdatedDate: 0001-01-01T00:00:00.0000000+00:00,
	ResponseStatus: 
	{
		ErrorCode: String,
		Message: String,
		StackTrace: String,
		Errors: 
		[
			{
				ErrorCode: String,
				FieldName: String,
				Message: String,
				Meta: 
				{
					String: String
				}
			}
		],
		Meta: 
		{
			String: String
		}
	}
}