ConsumerApi

<back to all web services

ResetPasswordRequest

Consumer
The following routes are available for this service:
POST/recovery/reset_password
import datetime
import decimal
from marshmallow.fields import *
from servicestack import *
from typing import *
from dataclasses import dataclass, field
from dataclasses_json import dataclass_json, LetterCase, Undefined, config
from enum import Enum, IntEnum

# module ConsumerApi


class Locale(str, Enum):
    EN_US = 'EnUs'
    NB_NO = 'NbNo'


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class DateOfBirth:
    year: int = 0
    month: int = 0
    day_of_month: int = 0


class Sex(str, Enum):
    MALE = 'Male'
    FEMALE = 'Female'


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class UserAddress:
    street_name: Optional[str] = None
    street_number: Optional[str] = None
    postal_code: Optional[str] = None
    region: Optional[str] = None
    country_code: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class HomeLocation:
    address: Optional[UserAddress] = None
    latitude: float = 0.0
    longitude: float = 0.0


class DistanceUnit(str, Enum):
    KILOMETER = 'Kilometer'
    MILE = 'Mile'


Python ResetPasswordRequest 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 /recovery/reset_password HTTP/1.1 
Host: unstable-consumer-api.brovs.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	verifiedToken: String,
	newPassword: String,
	newPasswordConfirmation: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	userProfile: 
	{
		locale: EnUs,
		firstName: String,
		lastName: String,
		profilePhotoUrl: String,
		mobilePhone: String,
		mobilePhoneVerified: False,
		email: String,
		emailVerified: False,
		hasPassword: False,
		dateOfBirth: 
		{
			year: 0,
			month: 0,
			dayOfMonth: 0
		},
		sex: Male,
		home: 
		{
			address: 
			{
				streetName: String,
				streetNumber: String,
				postalCode: String,
				region: String,
				countryCode: String
			},
			latitude: 0,
			longitude: 0
		},
		showDistancesIn: Kilometer,
		legalIdentityVerified: False,
		managesPlacesInBusinessWeb: False,
		pointsTotal: 0
	},
	passwordScore: 0
}