Required role: | Consumer |
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
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 } }