Field Squared API Services

<back to all web services

ArrivalDepartureList

Returns a list of ArrivalDeparture objects, based on the criteria within the end point.
/{Workspace}/ArrivalDeparture/User/{ObjectId}/History/{Days}/ - GET - Return the history of a
specific user for X days, sorted by arrival date descending.
/{Workspace}/ArrivalDeparture/History/{Days} - GET - Return the history of all users for X days,
sorted by user descending then arrival date descending.
/{Workspace}/ArrivalDeparture/Current - GET - Return the latest arrival departure object for each
user, sorted by arrivaldate descending.
/{Workspace}/ArrivalDepartureList/Task/{ObjectId}/History/ - GET - Return the history of all arrival
departure objects related to a specific task.
/{Workspace}/ArrivalDepartureList/Contact/{ObjectId}/History/ - GET - Return the history of all arrival
departure objects related to a specific contact.

The following routes are available for this service:
GET/{Workspace}/ArrivalDepartureList/Current
GET/{Workspace}/ArrivalDepartureList/History/{Days}
GET/{Workspace}/ArrivalDepartureList/User/{ObjectId}/History/{Days}/
GET/{Workspace}/ArrivalDepartureList/Task/{ObjectId}/History/
GET/{Workspace}/ArrivalDepartureList/Contact/{ObjectId}/History/
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 Location:
    y: float = 0.0
    x: float = 0.0


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ArrivalDeparture:
    """
    Service representing an ArrivalDeparture object in a workspace.
    """

    workspace: Optional[str] = None
    object_id: Optional[str] = None
    arrival_time: Optional[str] = None
    departure_time: Optional[str] = None
    geofence_location: Optional[Location] = None
    geofence_id: Optional[str] = None
    geofence_radius: float = 0.0
    user: Optional[str] = None
    task: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ArrivalDepartureList:
    """
    Returns a list of ArrivalDeparture objects, based on the criteria within the end point. /{Workspace}/ArrivalDeparture/User/{ObjectId}/History/{Days}/ - GET - Return the history of a specific user for X days, sorted by arrival date descending. /{Workspace}/ArrivalDeparture/History/{Days} - GET - Return the history of all users for X days, sorted by user descending then arrival date descending. /{Workspace}/ArrivalDeparture/Current - GET - Return the latest arrival departure object for each user, sorted by arrivaldate descending./{Workspace}/ArrivalDepartureList/Task/{ObjectId}/History/ - GET - Return the history of all arrival departure objects related to a specific task./{Workspace}/ArrivalDepartureList/Contact/{ObjectId}/History/ - GET - Return the history of all arrival departure objects related to a specific contact.
    """

    workspace: Optional[str] = None
    object_id: Optional[str] = None
    days: Optional[str] = None
    date_generated: Optional[str] = None
    arrival_departures: Optional[List[ArrivalDeparture]] = None

Python ArrivalDepartureList 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.

GET /{Workspace}/ArrivalDepartureList/Current HTTP/1.1 
Host: dev.fieldsquared.com 
Accept: text/jsv