efun.id.api

<back to all web services

InternalRegister

The following routes are available for this service:
POST/api/v1/internal/users/register
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


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class InternalRegister:
    id: int = 0
    user_name: Optional[str] = None
    password: Optional[str] = None
    email: Optional[str] = None
    phone: Optional[str] = None
    address: Optional[str] = None
    full_name: Optional[str] = None
    is_active_email: bool = False
    phone_confirm: bool = False
    is_active: int = 0
    is_block: int = 0
    i_p__mask: Optional[str] = None
    netbar__i_p: Optional[str] = None
    registered_date: datetime.datetime = datetime.datetime(1, 1, 1)
    money1: int = 0
    money2: int = 0
    money_for_vip: int = 0
    total_money: int = 0
    id_number: Optional[str] = None
    id_reg_date: Optional[datetime.datetime] = None
    dob: Optional[datetime.datetime] = None
    use_two_f_a: bool = False
    two_f_a_security_code: Optional[str] = None
    two_f_a_status: int = 0


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class BannerListResponse:
    id: int = 0
    title: Optional[str] = None
    image: Optional[str] = None
    url: Optional[str] = None
    publish: bool = False
    publish_date: datetime.datetime = datetime.datetime(1, 1, 1)
    order_index: int = 0


List[any] = TypeVar('List[any]')


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class BaseResponse(Generic[List[any]], IResponseRequest):
    code: int = 0
    message: Optional[str] = None
    data: Optional[List[BannerListResponse]] = None

Python InternalRegister 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 /api/v1/internal/users/register HTTP/1.1 
Host: efun-id-api-sandbox.efun.vn 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	id: 0,
	userName: String,
	password: String,
	email: String,
	phone: String,
	address: String,
	fullName: String,
	isActiveEmail: False,
	phoneConfirm: False,
	isActive: 0,
	isBlock: 0,
	iP_Mask: String,
	netbar_IP: String,
	money1: 0,
	money2: 0,
	moneyForVip: 0,
	totalMoney: 0,
	idNumber: String,
	idRegDate: "0001-01-01T00:00:00.0000000+07:06",
	dob: "0001-01-01T00:00:00.0000000+07:06",
	useTwoFA: False,
	twoFASecurityCode: String,
	twoFAStatus: 0
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	code: 0,
	message: String,
	data: 
	{
		id: 0,
		username: String,
		first_name: String,
		last_name: String,
		full_name: String,
		email: String,
		phone_number: String,
		is_play_now: 0,
		status: 0
	}
}