Platform API

<back to all web services

GetSuites

Get all suites

Requires Authentication
The following routes are available for this service:
All Verbs/api/suites
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 ListItemFilter:
    list_item_filter_id: Optional[str] = None
    filter_name: Optional[str] = None
    list_id: Optional[str] = None
    list_item_id: Optional[str] = None
    list_item_is_in_filter: bool = False


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ListDataItem:
    id: Optional[str] = None
    name: Optional[str] = None
    description: Optional[str] = None
    short_name: Optional[str] = None
    default_name: Optional[str] = None
    is_default: bool = False
    order: int = 0
    list_item_traffic_light_id: Optional[str] = None
    primary_list_item_image_id: Optional[str] = None
    primary_list_item_image_url: Optional[str] = None
    primary_image_thumbnail_url: Optional[str] = None
    owner_contact_id: Optional[str] = None
    record_status: Optional[str] = None
    tags: Optional[str] = None
    list_id: Optional[str] = None
    mark_as_checked: bool = False
    related_object_id: Optional[str] = None
    can_edit: bool = False
    is_owner: bool = False
    extra_values: Optional[List[Object]] = None
    list_item_filters: Optional[List[ListItemFilter]] = None


# @ApiResponse(Description="List of suites")
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class GetSuitesResponse:
    suites: Optional[List[ListDataItem]] = None
    response_status: Optional[ResponseStatus] = None


# @Api(Description="Get all suites")
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class GetSuites:
    """
    Get all suites
    """

    # @ApiMember(Description="Licensee Contact Id to return suites for. This will only return the suites that the contact has licenses for. If not set, all suites are returned", Name="LicenseeId")
    licensee_id: Optional[str] = None
    """
    Licensee Contact Id to return suites for. This will only return the suites that the contact has licenses for. If not set, all suites are returned
    """

Python GetSuites DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv

HTTP + CSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /api/suites HTTP/1.1 
Host: pfapi.pstpf.com.au 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"LicenseeId":"00000000-0000-0000-0000-000000000000"}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"Suites":[{"Id":"00000000-0000-0000-0000-000000000000","Name":"String","Description":"String","ShortName":"String","DefaultName":"String","IsDefault":false,"Order":0,"ListItemTrafficLightId":"00000000-0000-0000-0000-000000000000","PrimaryListItemImageId":"00000000-0000-0000-0000-000000000000","PrimaryListItemImageUrl":"String","PrimaryImageThumbnailUrl":"String","OwnerContactId":"00000000-0000-0000-0000-000000000000","RecordStatus":"String","Tags":"String","ListId":"00000000-0000-0000-0000-000000000000","MarkAsChecked":false,"RelatedObjectId":"00000000-0000-0000-0000-000000000000","CanEdit":false,"IsOwner":false,"ExtraValues":[{}],"ListItemFilters":[{"ListItemFilterId":"00000000-0000-0000-0000-000000000000","FilterName":"String","ListId":"00000000-0000-0000-0000-000000000000","ListItemId":"00000000-0000-0000-0000-000000000000","ListItemIsInFilter":false}]}],"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}