ConsumerApi

<back to all web services

NextToClaimBusinessRequest

ConsumerBusiness
Requires Authentication
Required role:Consumer
The following routes are available for this service:
POST/business/next-to-claim

export module ConsumerApi
{
    // @ts-nocheck

    export enum NextClaimStep
    {
        AuthenticateWithVipps = 'AuthenticateWithVipps',
        CreatePassword = 'CreatePassword',
        AcceptBusinessTermsOfService = 'AcceptBusinessTermsOfService',
        Claim = 'Claim',
        Completed = 'Completed',
    }

    export class ClaimUserInfo
    {
        public firstName?: string;
        public lastName?: string;
        public email: string;
        public legalIdentityVerified?: boolean;
        public phoneNumber: string;

        public constructor(init?: Partial<ClaimUserInfo>) { (Object as any).assign(this, init); }
    }

    export class OpeningHour
    {
        public openAtHour?: number;
        public openAtMinute?: number;
        public closeAtHour?: number;
        public closeAtMinute?: number;

        public constructor(init?: Partial<OpeningHour>) { (Object as any).assign(this, init); }
    }

    export class WeeklyOpeningHours
    {
        public monday?: OpeningHour;
        public tuesday?: OpeningHour;
        public wednesday?: OpeningHour;
        public thursday?: OpeningHour;
        public friday?: OpeningHour;
        public saturday?: OpeningHour;
        public sunday?: OpeningHour;

        public constructor(init?: Partial<WeeklyOpeningHours>) { (Object as any).assign(this, init); }
    }

    export class OpeningHours
    {
        public weekly: WeeklyOpeningHours;

        public constructor(init?: Partial<OpeningHours>) { (Object as any).assign(this, init); }
    }

    export enum PlaceType
    {
        Mall = 'Mall',
        Regular = 'Regular',
    }

    export enum PriceMainDish
    {
        Value = 'Value',
        Medium = 'Medium',
        High = 'High',
        FineDining = 'FineDining',
    }

    export class PriceMainDishApiDto
    {
        public title: string;
        public slug?: PriceMainDish;

        public constructor(init?: Partial<PriceMainDishApiDto>) { (Object as any).assign(this, init); }
    }

    export class TimeZoneDto
    {
        public baseUtcOffset?: string;
        public daylightName: string;
        public displayName: string;
        public id: string;
        public standardName: string;
        public supportsDaylightSavingTime?: boolean;

        public constructor(init?: Partial<TimeZoneDto>) { (Object as any).assign(this, init); }
    }

    export class PlaceContact
    {
        public phone?: string;
        public email?: string;
        public website?: string;
        public webShop?: string;

        public constructor(init?: Partial<PlaceContact>) { (Object as any).assign(this, init); }
    }

    export class PlaceAddress
    {
        public street: string;
        public postalCode: string;
        public region: string;
        public countryCode: string;

        public constructor(init?: Partial<PlaceAddress>) { (Object as any).assign(this, init); }
    }

    export class CategoryTreeApiDto
    {
        public name: string;
        public slug: string;
        public absoluteSlug: string;
        public imageUrl?: string;
        public allImageUrl?: string;
        public iconImageUrl?: string;
        public position?: number;
        public children?: CategoryTreeApiDto[] = [];

        public constructor(init?: Partial<CategoryTreeApiDto>) { (Object as any).assign(this, init); }
    }

    export class ImageUrls
    {
        public preview: string;
        public small: string;
        public medium: string;
        public large: string;

        public constructor(init?: Partial<ImageUrls>) { (Object as any).assign(this, init); }
    }

    export class WearPriceProfileEsDto
    {
        public slug: string;
        public label: string;

        public constructor(init?: Partial<WearPriceProfileEsDto>) { (Object as any).assign(this, init); }
    }

    export class BrandApiDto
    {
        public name: string;

        public constructor(init?: Partial<BrandApiDto>) { (Object as any).assign(this, init); }
    }

    export class PlaceCustomBrandApiDto
    {
        public name: string;

        public constructor(init?: Partial<PlaceCustomBrandApiDto>) { (Object as any).assign(this, init); }
    }

    export class PlaceSelectedBrandApiDto
    {
        public brand?: BrandApiDto;
        public categoryAbsoluteSlugs?: string[] = [];
        public placeCustomBrand?: PlaceCustomBrandApiDto;

        public constructor(init?: Partial<PlaceSelectedBrandApiDto>) { (Object as any).assign(this, init); }
    }

    export class PlaceBasicApiDto
    {
        public id?: number;
        public guid?: string;
        public overview?: string;
        public name: string;
        public longitude?: number;
        public latitude?: number;
        public claimed?: boolean;
        public organizationNumber?: string;
        public countryCode: string;
        public openingHours?: OpeningHours;
        public wheelchairAccessible?: boolean;
        public wifi?: boolean;
        public outdoorSeating?: boolean;
        public saveFoodAndMoney?: boolean;
        public placeType?: PlaceType;
        public priceMainDish?: PriceMainDishApiDto;
        public timeZoneDto: TimeZoneDto;
        public businessId?: number;
        public contact: PlaceContact;
        public address: PlaceAddress;
        public categories: CategoryTreeApiDto[] = [];
        public logoUrl?: ImageUrls;
        public imageUrl?: ImageUrls;
        public wearPriceProfiles: WearPriceProfileEsDto[] = [];
        public brands: PlaceSelectedBrandApiDto[] = [];
        public floor?: string;

        public constructor(init?: Partial<PlaceBasicApiDto>) { (Object as any).assign(this, init); }
    }

    export class NextToClaimBusinessResponse
    {
        public nextStep?: NextClaimStep;
        public user: ClaimUserInfo;
        public place: PlaceBasicApiDto;

        public constructor(init?: Partial<NextToClaimBusinessResponse>) { (Object as any).assign(this, init); }
    }

    export class NextToClaimBusinessRequest implements IPost
    {
        public placeGuid?: string;

        public constructor(init?: Partial<NextToClaimBusinessRequest>) { (Object as any).assign(this, init); }
    }

}

TypeScript NextToClaimBusinessRequest 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 /business/next-to-claim HTTP/1.1 
Host: unstable-consumer-api.brovs.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	placeGuid: 00000000-0000-0000-0000-000000000000
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	nextStep: AuthenticateWithVipps,
	user: 
	{
		firstName: String,
		lastName: String,
		email: String,
		legalIdentityVerified: False,
		phoneNumber: String
	},
	place: 
	{
		id: 0,
		overview: String,
		name: String,
		longitude: 0,
		latitude: 0,
		claimed: False,
		organizationNumber: String,
		countryCode: String,
		openingHours: 
		{
			weekly: 
			{
				monday: 
				{
					openAtHour: 0,
					openAtMinute: 0,
					closeAtHour: 0,
					closeAtMinute: 0
				},
				tuesday: 
				{
					openAtHour: 0,
					openAtMinute: 0,
					closeAtHour: 0,
					closeAtMinute: 0
				},
				wednesday: 
				{
					openAtHour: 0,
					openAtMinute: 0,
					closeAtHour: 0,
					closeAtMinute: 0
				},
				thursday: 
				{
					openAtHour: 0,
					openAtMinute: 0,
					closeAtHour: 0,
					closeAtMinute: 0
				},
				friday: 
				{
					openAtHour: 0,
					openAtMinute: 0,
					closeAtHour: 0,
					closeAtMinute: 0
				},
				saturday: 
				{
					openAtHour: 0,
					openAtMinute: 0,
					closeAtHour: 0,
					closeAtMinute: 0
				},
				sunday: 
				{
					openAtHour: 0,
					openAtMinute: 0,
					closeAtHour: 0,
					closeAtMinute: 0
				}
			}
		},
		wheelchairAccessible: False,
		wifi: False,
		outdoorSeating: False,
		saveFoodAndMoney: False,
		placeType: Mall,
		priceMainDish: 
		{
			title: String,
			slug: Value
		},
		timeZoneDto: 
		{
			baseUtcOffset: PT0S,
			daylightName: String,
			displayName: String,
			id: String,
			standardName: String,
			supportsDaylightSavingTime: False
		},
		businessId: 0,
		contact: 
		{
			phone: String,
			email: String,
			website: String,
			webShop: String
		},
		address: 
		{
			street: String,
			postalCode: String,
			region: String,
			countryCode: String
		},
		categories: 
		[
			{
				name: String,
				slug: String,
				absoluteSlug: String,
				imageUrl: String,
				allImageUrl: String,
				iconImageUrl: String,
				position: 0,
				children: 
				[
					{
						name: String,
						slug: String,
						absoluteSlug: String,
						imageUrl: String,
						allImageUrl: String,
						iconImageUrl: String,
						position: 0,
						children: 
						[
							{
								name: String,
								slug: String,
								absoluteSlug: String,
								imageUrl: String,
								allImageUrl: String,
								iconImageUrl: String,
								position: 0
							}
						]
					}
				]
			}
		],
		logoUrl: 
		{
			preview: String,
			small: String,
			medium: String,
			large: String
		},
		imageUrl: 
		{
			preview: String,
			small: String,
			medium: String,
			large: String
		},
		wearPriceProfiles: 
		[
			{
				slug: String,
				label: String
			}
		],
		brands: 
		[
			{
				brand: 
				{
					name: String
				},
				categoryAbsoluteSlugs: 
				[
					String
				],
				placeCustomBrand: 
				{
					name: String
				}
			}
		],
		floor: String
	}
}