Trendsic Platform Service

<back to all web services

DismissOnboardingRequest

Requires Authentication
The following routes are available for this service:
POST/v1/onboarding/dismiss
namespace CRM.AgencyPlatform.API.Internal

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

    [<AllowNullLiteral>]
    type OnboardingLock() = 
        member val Reason:String = null with get,set
        member val FeatureKey:String = null with get,set
        member val FeatureName:String = null with get,set
        member val ModuleKey:String = null with get,set
        member val ModuleName:String = null with get,set
        member val ExpiresAt:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val RequestedAt:Nullable<DateTime> = new Nullable<DateTime>() with get,set

    [<AllowNullLiteral>]
    type OnboardingStep() = 
        member val Key:String = null with get,set
        member val Chapter:String = null with get,set
        member val Title:String = null with get,set
        member val Why:String = null with get,set
        member val HelpHtml:String = null with get,set
        member val Icon:String = null with get,set
        member val CtaLabel:String = null with get,set
        member val CtaRoute:String = null with get,set
        member val Required:Boolean = new Boolean() with get,set
        member val State:Int32 = new Int32() with get,set
        member val Done:Boolean = new Boolean() with get,set
        member val AutoDetected:Boolean = new Boolean() with get,set
        member val Count:Int32 = new Int32() with get,set
        member val Requires:ResizeArray<String> = new ResizeArray<String>() with get,set
        member val DetectsCount:Boolean = new Boolean() with get,set
        member val LockKey:String = null with get,set
        member val Locked:OnboardingLock = null with get,set
        member val InTrial:Boolean = new Boolean() with get,set
        member val TrialEndsAt:Nullable<DateTime> = new Nullable<DateTime>() with get,set

    [<AllowNullLiteral>]
    type OnboardingChapter() = 
        member val Name:String = null with get,set
        member val Color:String = null with get,set
        member val Total:Int32 = new Int32() with get,set
        member val Satisfied:Int32 = new Int32() with get,set
        member val Full:Boolean = new Boolean() with get,set
        member val Progress:String = null with get,set
        member val LockReason:String = null with get,set

    [<AllowNullLiteral>]
    type DispatchModuleView() = 
        member val Key:String = null with get,set
        member val Mode:String = null with get,set
        member val Name:String = null with get,set
        member val What:String = null with get,set
        member val Allowed:Boolean = new Boolean() with get,set
        member val Enabled:Boolean = new Boolean() with get,set
        member val InPack:Boolean = new Boolean() with get,set
        member val Adds:ResizeArray<String> = new ResizeArray<String>() with get,set
        member val GoScreens:String = null with get,set
        member val Fleet:Boolean = new Boolean() with get,set
        member val InFlight:Int32 = new Int32() with get,set

    [<AllowNullLiteral>]
    type OnboardingStatus() = 
        member val TenantName:String = null with get,set
        member val PropertyTerm:String = null with get,set
        member val Steps:ResizeArray<OnboardingStep> = new ResizeArray<OnboardingStep>() with get,set
        member val TotalSteps:Int32 = new Int32() with get,set
        member val DoneSteps:Int32 = new Int32() with get,set
        member val SatisfiedSteps:Int32 = new Int32() with get,set
        member val RequiredTotal:Int32 = new Int32() with get,set
        member val RequiredDone:Int32 = new Int32() with get,set
        member val PercentComplete:Int32 = new Int32() with get,set
        member val IsComplete:Boolean = new Boolean() with get,set
        member val Dismissed:Boolean = new Boolean() with get,set
        member val Chapters:ResizeArray<OnboardingChapter> = new ResizeArray<OnboardingChapter>() with get,set
        member val DriverServices:ResizeArray<DispatchModuleView> = new ResizeArray<DispatchModuleView>() with get,set
        member val DriverServicesOn:Boolean = new Boolean() with get,set
        member val ModulesOn:Int32 = new Int32() with get,set
        member val ModulesSkipped:Int32 = new Int32() with get,set
        member val ResponseStatus:ResponseStatus = null with get,set

    [<AllowNullLiteral>]
    type DismissOnboardingRequest() = 
        member val Dismissed:Boolean = new Boolean() with get,set

F# DismissOnboardingRequest 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.

POST /v1/onboarding/dismiss HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	Dismissed: False
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	TenantName: String,
	PropertyTerm: String,
	Steps: 
	[
		{
			Key: String,
			Chapter: String,
			Title: String,
			Why: String,
			HelpHtml: String,
			Icon: String,
			CtaLabel: String,
			CtaRoute: String,
			Required: False,
			State: 0,
			Done: False,
			AutoDetected: False,
			Count: 0,
			Requires: 
			[
				String
			],
			DetectsCount: False,
			LockKey: String,
			Locked: 
			{
				Reason: String,
				FeatureKey: String,
				FeatureName: String,
				ModuleKey: String,
				ModuleName: String,
				ExpiresAt: 0001-01-01,
				RequestedAt: 0001-01-01
			},
			InTrial: False,
			TrialEndsAt: 0001-01-01
		}
	],
	TotalSteps: 0,
	DoneSteps: 0,
	SatisfiedSteps: 0,
	RequiredTotal: 0,
	RequiredDone: 0,
	PercentComplete: 0,
	IsComplete: False,
	Dismissed: False,
	Chapters: 
	[
		{
			Name: String,
			Color: String,
			Total: 0,
			Satisfied: 0,
			Full: False,
			Progress: String,
			LockReason: String
		}
	],
	DriverServices: 
	[
		{
			Key: String,
			Mode: String,
			Name: String,
			What: String,
			Allowed: False,
			Enabled: False,
			InPack: False,
			Adds: 
			[
				String
			],
			GoScreens: String,
			Fleet: False,
			InFlight: 0
		}
	],
	DriverServicesOn: False,
	ModulesOn: 0,
	ModulesSkipped: 0,
	ResponseStatus: 
	{
		ErrorCode: String,
		Message: String,
		StackTrace: String,
		Errors: 
		[
			{
				ErrorCode: String,
				FieldName: String,
				Message: String,
				Meta: 
				{
					String: String
				}
			}
		],
		Meta: 
		{
			String: String
		}
	}
}