GET | /call-center/profile/{BeeNumber} | ||
---|---|---|---|
GET | /call-center/profiles/{BeeNumber} |
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 CallCenterAddress:
address_line1: Optional[str] = None
address_line2: Optional[str] = None
address_line3: Optional[str] = None
city: Optional[str] = None
state_code: Optional[str] = None
postal_code: Optional[str] = None
country_code: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class CallCenterProfileGetResponse:
response_status: Optional[ResponseStatus] = None
full_name: Optional[str] = None
first_name: Optional[str] = None
middle_name: Optional[str] = None
last_name: Optional[str] = None
bee_number: Optional[Decimal] = None
account_status: Optional[str] = None
collection_tag: Optional[str] = None
reinstated_tag: Optional[str] = None
reinstated_date: Optional[str] = None
primary_phone: Optional[str] = None
secondary_phone: Optional[str] = None
loa: Optional[Decimal] = None
account_type: Optional[str] = None
amount_due: Optional[Decimal] = None
birthday: Optional[datetime.datetime] = None
language: Optional[str] = None
mailing_address: Optional[CallCenterAddress] = None
shipping_address: Optional[CallCenterAddress] = None
appt_date: Optional[datetime.datetime] = None
appointment_camp_year: Optional[str] = None
upline_account: Optional[Decimal] = None
upline_name: Optional[str] = None
award_sales_current_camp: Optional[Decimal] = None
award_sales_prior_camp: Optional[Decimal] = None
award_sales_current_cycle: Optional[Decimal] = None
award_sales_prior_cycle: Optional[Decimal] = None
award_sales_current_bonus: Optional[Decimal] = None
award_sales_prior_bonus: Optional[Decimal] = None
award_sales_previous_camp: Optional[Decimal] = None
bonus_sales_previous_camp: Optional[Decimal] = None
last_payment_date: Optional[datetime.datetime] = None
last_payment_amount: Optional[Decimal] = None
total_past_due: Optional[Decimal] = None
past_due: Optional[Decimal] = None
past_due2: Optional[Decimal] = None
past_due3: Optional[Decimal] = None
current_balance: Optional[Decimal] = None
award_sales_tier: Optional[str] = None
no_code_billed_not_shipped: Optional[str] = None
credit_card_payment_allowed: Optional[str] = None
terms_version: Optional[str] = None
terms_acknowledge_date: Optional[datetime.datetime] = None
co_applicant_name: Optional[str] = None
co_applicant_ssn: Optional[str] = None
co_applicant_birthday: Optional[datetime.datetime] = None
co_applicant_relation: Optional[str] = None
updated_for_campaign: Optional[str] = None
credit_limit: Optional[Decimal] = None
direct_deposit_payments_tag: Optional[bool] = None
leadership_tag: Optional[str] = None
leadership_level: Optional[str] = None
pc_tag: Optional[str] = None
pc_premier_tag: Optional[str] = None
deceased_tag: Optional[str] = None
email_address: Optional[str] = None
nickname: Optional[str] = None
web_page_url: Optional[str] = None
legal_date_of_enrollment: Optional[datetime.datetime] = None
delivery_method: Optional[str] = None
social_security_number: Optional[str] = None
is_new_leadership_level: Optional[str] = None
is_new_recognition_level: Optional[str] = None
disability_tag: Optional[str] = None
retiree_tag: Optional[bool] = None
labc_tag: Optional[str] = None
removal_reason: Optional[str] = None
rep_account_number: Optional[Decimal] = None
rep_account_name: Optional[str] = None
no_code21: Optional[str] = None
tax_exempt: Optional[str] = None
pending_orders_balance: Optional[Decimal] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class CallCenterProfileGet(IGet):
bee_number: Optional[Decimal] = None
Python CallCenterProfileGet 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.
GET /call-center/profile/{BeeNumber} HTTP/1.1 Host: extensions.avon.ca Accept: text/jsv
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { responseStatus: { errorCode: String, message: String, stackTrace: String, errors: [ { errorCode: String, fieldName: String, message: String, meta: { String: String } } ], meta: { String: String } }, fullName: String, firstName: String, middleName: String, lastName: String, beeNumber: 0, accountStatus: String, collectionTag: String, reinstatedTag: String, reinstatedDate: String, primaryPhone: String, secondaryPhone: String, loa: 0, accountType: String, amountDue: 0, birthday: 0001-01-01T00:00:00, language: String, mailingAddress: { addressLine1: String, addressLine2: String, addressLine3: String, city: String, stateCode: String, postalCode: String, countryCode: String }, shippingAddress: { addressLine1: String, addressLine2: String, addressLine3: String, city: String, stateCode: String, postalCode: String, countryCode: String }, apptDate: 0001-01-01T00:00:00, appointmentCampYear: String, uplineAccount: 0, uplineName: String, awardSalesCurrentCamp: 0, awardSalesPriorCamp: 0, awardSalesCurrentCycle: 0, awardSalesPriorCycle: 0, awardSalesCurrentBonus: 0, awardSalesPriorBonus: 0, awardSalesPreviousCamp: 0, bonusSalesPreviousCamp: 0, lastPaymentDate: 0001-01-01T00:00:00, lastPaymentAmount: 0, totalPastDue: 0, pastDue: 0, pastDue2: 0, pastDue3: 0, currentBalance: 0, awardSalesTier: String, noCodeBilledNotShipped: String, creditCardPaymentAllowed: String, termsVersion: String, termsAcknowledgeDate: 0001-01-01T00:00:00, coApplicantName: String, coApplicantSsn: String, coApplicantBirthday: 0001-01-01T00:00:00, coApplicantRelation: String, updatedForCampaign: String, creditLimit: 0, directDepositPaymentsTag: False, leadershipTag: String, leadershipLevel: String, pcTag: String, pcPremierTag: String, deceasedTag: String, emailAddress: String, nickname: String, webPageUrl: String, legalDateOfEnrollment: 0001-01-01T00:00:00, deliveryMethod: String, socialSecurityNumber: String, isNewLeadershipLevel: String, isNewRecognitionLevel: String, disabilityTag: String, retireeTag: False, labcTag: String, removalReason: String, repAccountNumber: 0, repAccountName: String, noCode21: String, taxExempt: String, pendingOrdersBalance: 0 }