| GET,OPTIONS | /v1/records/series |
|---|
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 RecordSeriesStats:
total: int = 0
running: int = 0
eligible: int = 0
held: int = 0
unstarted: int = 0
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ScheduleLogDto:
log_id: int = 0
series_id: Optional[int] = None
verb: Optional[str] = None
actor: Optional[str] = None
what: Optional[str] = None
when_label: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class RecordSeriesDto:
series_id: int = 0
source_key: Optional[str] = None
code: Optional[str] = None
name: Optional[str] = None
years: int = 0
permanent: bool = False
ret_class: Optional[str] = None
trigger_event: Optional[str] = None
method: Optional[str] = None
image_and_destroy: bool = False
citation: Optional[str] = None
fields_json: Optional[str] = None
retired: bool = False
stats: Optional[RecordSeriesStats] = None
history: List[ScheduleLogDto] = field(default_factory=list)
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class RecordSeriesListResponse:
response_status: Optional[ResponseStatus] = None
series: List[RecordSeriesDto] = field(default_factory=list)
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class RecordSeriesListRequest:
include_stats: bool = False
Python RecordSeriesListRequest 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 /v1/records/series HTTP/1.1 Host: api.dev.dynamics.trendsic.com 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
}
},
Series:
[
{
SeriesId: 0,
SourceKey: String,
Code: String,
Name: String,
Years: 0,
Permanent: False,
RetClass: String,
TriggerEvent: String,
Method: String,
ImageAndDestroy: False,
Citation: String,
FieldsJson: String,
Retired: False,
Stats:
{
Total: 0,
Running: 0,
Eligible: 0,
Held: 0,
Unstarted: 0
},
History:
[
{
LogId: 0,
SeriesId: 0,
Verb: String,
Actor: String,
What: String,
WhenLabel: String
}
]
}
]
}