""" Options: Date: 2026-04-04 02:55:48 Version: 8.52 Tip: To override a DTO option, remove "#" prefix before updating BaseUrl: https://pfapi.pstpf.com.au/api #GlobalNamespace: #AddServiceStackTypes: True #AddResponseStatus: False #AddImplicitVersion: #AddDescriptionAsComments: True IncludeTypes: AddContactRole.* #ExcludeTypes: #DefaultImports: datetime,decimal,marshmallow.fields:*,servicestack:*,typing:*,dataclasses:dataclass/field,dataclasses_json:dataclass_json/LetterCase/Undefined/config,enum:Enum/IntEnum #DataClass: #DataClassJson: """ 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 ListItemFilterModel: 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 RoleDetailsModel: # @ApiMember(DataType="Guid", Description="Role Id", Name="RoleId") role_id: Optional[str] = None """ Role Id """ # @ApiMember(DataType="string", Description="Role Name", Name="RoleName") role_name: Optional[str] = None """ Role Name """ # @ApiMember(DataType="Guid", Description="Role Connection Definition Id", Name="RoleConnectionDefinitionId") role_connection_definition_id: Optional[str] = None """ Role Connection Definition Id """ # @ApiMember(DataType="List", Description="Contact Types the Role applies to", Name="ContactTypes") contact_types: Optional[List[str]] = None """ Contact Types the Role applies to """ # @ApiMember(DataType="bool", Description="Does the role require contacts to accept it?", Name="RequireContactsToAccept") require_contacts_to_accept: bool = False """ Does the role require contacts to accept it? """ # @ApiMember(DataType="List", Description="Filters linked to the custom role.", Name="ListItemFilters") list_item_filters: Optional[List[ListItemFilterModel]] = None """ Filters linked to the custom role. """ # @Route("/roles", "POST") # @Api(Description="Add a custom role for the licensee") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class AddContactRole(IReturn[ResponseStatus]): """ Add a custom role for the licensee """ # @ApiMember(DataType="RoleDetailsModel", Description="Details of the Contact Role to be Added.", IsRequired=true, Name="RoleDetails", ParameterType="query") role_details: Optional[RoleDetailsModel] = None """ Details of the Contact Role to be Added. """