regis

<back to all web services

InvoiceDynamicsAuditLogsRequest

Requires Authentication
Required role:REGISUserRole
The following routes are available for this service:
POST/finance/invoice-dynamics-audit/logs
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 InvoiceDynamicsTransactionResponse:
    dynamics_log_id: Optional[int] = None
    action: Optional[str] = None
    note: Optional[str] = None
    logged_amount: Optional[Decimal] = None
    document_number: Optional[str] = None
    customer_number: Optional[str] = None
    logged_at: Optional[datetime.datetime] = None
    regis_invoice_reference: Optional[str] = None
    gp_source: Optional[str] = None
    found_in_gp: bool = False
    gp_type: int = 0
    gp_status: int = 0
    batch_number: Optional[str] = None
    gp_amount: Optional[Decimal] = None
    is_open: bool = False
    is_posted: bool = False
    is_void: bool = False
    document_date: Optional[datetime.datetime] = None
    posting_date: Optional[datetime.datetime] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class InvoiceEconnectLogResponse:
    id: int = 0
    timestamp: datetime.datetime = datetime.datetime(1, 1, 1)
    xml: Optional[str] = None
    response: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class InvoiceDynamicsAuditResponse:
    invoice_id: Optional[int] = None
    invoice_uuid: Optional[str] = None
    reporting_term: Optional[str] = None
    invoice_date: Optional[datetime.datetime] = None
    invoice_status: Optional[str] = None
    description: Optional[str] = None
    total_charges: Decimal = decimal.Decimal(0)
    total_credits: Decimal = decimal.Decimal(0)
    net: Decimal = decimal.Decimal(0)
    regent_id: int = 0
    student_uuid: Optional[str] = None
    student_name: Optional[str] = None
    initiator_name: Optional[str] = None
    has_regis_invoice: bool = False
    reconciliation_type: Optional[str] = None
    dynamics_status: Optional[str] = None
    dynamics_transactions: Optional[List[InvoiceDynamicsTransactionResponse]] = None
    econnect_logs: Optional[List[InvoiceEconnectLogResponse]] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class InvoiceDynamicsAuditLogsRequest:
    invoice_id: Optional[int] = None
    document_number: Optional[str] = None
    authorizing_uuid: Optional[str] = None

Python InvoiceDynamicsAuditLogsRequest 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 /finance/invoice-dynamics-audit/logs HTTP/1.1 
Host: data.regent-college.edu 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	invoice_id: 0,
	document_number: String,
	authorizing_uuid: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	invoice_id: 0,
	invoice_uuid: String,
	reporting_term: String,
	invoice_date: 0001-01-01,
	invoice_status: String,
	description: String,
	total_charges: 0,
	total_credits: 0,
	net: 0,
	regent_id: 0,
	student_uuid: String,
	student_name: String,
	initiator_name: String,
	has_regis_invoice: False,
	reconciliation_type: String,
	dynamics_status: String,
	dynamics_transactions: 
	[
		{
			dynamics_log_id: 0,
			action: String,
			note: String,
			logged_amount: 0,
			document_number: String,
			customer_number: String,
			logged_at: 0001-01-01,
			regis_invoice_reference: String,
			gp_source: String,
			found_in_gp: False,
			gp_type: 0,
			gp_status: 0,
			batch_number: String,
			gp_amount: 0,
			is_open: False,
			is_posted: False,
			is_void: False,
			document_date: 0001-01-01,
			posting_date: 0001-01-01
		}
	],
	econnect_logs: 
	[
		{
			id: 0,
			timestamp: 0001-01-01,
			xml: String,
			response: String
		}
	]
}