Evo Voice

<back to all web services

ListAutoCompleteValues

Requires Authentication
The following routes are available for this service:
All Verbs/ui/autocomplete/values
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 AutoCompleteValue:
    # @ApiMember(Description="Display name")
    display_name: Optional[str] = None
    """
    Display name
    """


    # @ApiMember(Description="Value")
    value: Optional[str] = None
    """
    Value
    """


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ListAutoCompleteValuesResponse:
    values: Optional[List[AutoCompleteValue]] = None


class ValueTypes(str, Enum):
    NOT_SPECIFIED = 'NotSpecified'
    STRING = 'String'
    BOOLEAN = 'Boolean'
    NUMBER = 'Number'
    LIST = 'List'
    STRUCT = 'Struct'
    TRANSITION = 'Transition'
    CUSTOM = 'Custom'
    DATE = 'Date'
    AUDIO_FILE = 'AudioFile'
    TIME_ZONE_ID = 'TimeZoneId'
    PHONE_NUMBER = 'PhoneNumber'
    USER = 'User'
    ENDPOINT = 'Endpoint'
    TIME = 'Time'
    FILE = 'File'
    FAX_NUMBER = 'FaxNumber'
    EMAIL_ACCOUNT = 'EmailAccount'
    CUSTOMER = 'Customer'
    FLOW = 'Flow'
    TEAM = 'Team'
    FLOW_REFERENCE = 'FlowReference'
    INTEGRATION = 'Integration'


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ListAutoCompleteValues:
    # @ApiMember(Description="Account ID")
    account_id: Optional[str] = None
    """
    Account ID
    """


    # @ApiMember(Description="Filter by customer ID")
    customer_id: Optional[str] = None
    """
    Filter by customer ID
    """


    # @ApiMember(Description="The type of value")
    type: Optional[ValueTypes] = None
    """
    The type of value
    """


    # @ApiMember(Description="The query text to search for")
    query: Optional[str] = None
    """
    The query text to search for
    """


    # @ApiMember(Description="Type specific filter")
    type_specific_filter: Optional[str] = None
    """
    Type specific filter
    """


    # @ApiMember(Description="The value to search for (will only return one result)")
    value: Optional[str] = None
    """
    The value to search for (will only return one result)
    """


    # @ApiMember(Description="Should the results be sent back in plain text or with embedded HTML?")
    plain_text: Optional[bool] = None
    """
    Should the results be sent back in plain text or with embedded HTML?
    """


    # @ApiMember(Description="Include full info?")
    full_info: Optional[bool] = None
    """
    Include full info?
    """


    # @ApiMember(Description="List all values, only use for small lists.")
    all: Optional[bool] = None
    """
    List all values, only use for small lists.
    """

Python ListAutoCompleteValues 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 /ui/autocomplete/values HTTP/1.1 
Host: evovoice.io 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	accountId: String,
	customerId: String,
	type: NotSpecified,
	query: String,
	typeSpecificFilter: String,
	value: String,
	plainText: False,
	fullInfo: False,
	all: False
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	values: 
	[
		{
			displayName: String,
			value: String
		}
	]
}