| GET | /financial/reporting/activitysummary |
|---|
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 Transfer:
account_name: Optional[str] = None
transfers_count: Optional[int] = None
transfers_gross_amount: Optional[Decimal] = None
transfers_reversals: Optional[Decimal] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ActivitySummary:
sales_count: Optional[int] = None
sales_gross_amount: Optional[Decimal] = None
sales_gross_fees: Optional[Decimal] = None
refunds_count: Optional[int] = None
refunds_gross_amount: Optional[Decimal] = None
refunds_gross_fees: Optional[Decimal] = None
disputes_count: Optional[int] = None
disputes_gross_amount: Optional[Decimal] = None
disputes_gross_fees: Optional[Decimal] = None
dispute_reversals_count: Optional[int] = None
dispute_reversals_gross_amount: Optional[Decimal] = None
dispute_reversals_gross_fees: Optional[Decimal] = None
net_activity_amount: Optional[Decimal] = None
transfers: Optional[List[Transfer]] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class FinancialActivitySummaryRs:
group_id: Optional[str] = None
group_nick_name: Optional[str] = None
group_name: Optional[str] = None
start_date: Optional[str] = None
end_date: Optional[str] = None
activity_summary: Optional[ActivitySummary] = None
error_code: Optional[int] = None
error_message: Optional[str] = None
# @ApiMember(ExcludeInSchema=true)
is_error: Optional[bool] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class FinancialActivitySummaryRq:
client_id: Optional[int] = None
group_id: Optional[str] = None
start_date: Optional[datetime.datetime] = None
end_date: Optional[datetime.datetime] = None
Python FinancialActivitySummaryRq 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 /financial/reporting/activitysummary HTTP/1.1 Host: devapi.billhighway.com Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
GroupId: String,
GroupNickName: String,
GroupName: String,
StartDate: String,
EndDate: String,
ActivitySummary:
{
SalesCount: 0,
SalesGrossAmount: 0,
SalesGrossFees: 0,
RefundsCount: 0,
RefundsGrossAmount: 0,
RefundsGrossFees: 0,
DisputesCount: 0,
DisputesGrossAmount: 0,
DisputesGrossFees: 0,
DisputeReversalsCount: 0,
DisputeReversalsGrossAmount: 0,
DisputeReversalsGrossFees: 0,
NetActivityAmount: 0,
Transfers:
[
{
AccountName: String,
TransfersCount: 0,
TransfersGrossAmount: 0,
TransfersReversals: 0
}
]
},
ErrorCode: 0,
ErrorMessage: String,
IsError: False
}