egain-api-python 0.1.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- egain_api_python/__init__.py +17 -0
- egain_api_python/_hooks/__init__.py +5 -0
- egain_api_python/_hooks/registration.py +13 -0
- egain_api_python/_hooks/sdkhooks.py +76 -0
- egain_api_python/_hooks/types.py +112 -0
- egain_api_python/_version.py +15 -0
- egain_api_python/aiservices.py +23 -0
- egain_api_python/answers.py +281 -0
- egain_api_python/articlelists.py +469 -0
- egain_api_python/basesdk.py +368 -0
- egain_api_python/connectorssearchevents.py +537 -0
- egain_api_python/content.py +23 -0
- egain_api_python/errors/__init__.py +78 -0
- egain_api_python/errors/egaindefaulterror.py +40 -0
- egain_api_python/errors/egainerror.py +30 -0
- egain_api_python/errors/gethealthop.py +74 -0
- egain_api_python/errors/no_response_error.py +17 -0
- egain_api_python/errors/responsevalidationerror.py +27 -0
- egain_api_python/errors/schemas_wserrorcommon.py +51 -0
- egain_api_python/errors/wserrorcommon.py +49 -0
- egain_api_python/escalation.py +955 -0
- egain_api_python/export.py +487 -0
- egain_api_python/federatedsearchevent.py +287 -0
- egain_api_python/general.py +925 -0
- egain_api_python/guidedhelp.py +3373 -0
- egain_api_python/health.py +253 -0
- egain_api_python/httpclient.py +125 -0
- egain_api_python/import_.py +1161 -0
- egain_api_python/models/__init__.py +2136 -0
- egain_api_python/models/acceptghsolutionop.py +52 -0
- egain_api_python/models/acceptlanguage.py +23 -0
- egain_api_python/models/accessibleportal.py +37 -0
- egain_api_python/models/action.py +56 -0
- egain_api_python/models/actionsearch.py +92 -0
- egain_api_python/models/addasreferenceop.py +52 -0
- egain_api_python/models/addbookmarkop.py +43 -0
- egain_api_python/models/additionalsnippets.py +57 -0
- egain_api_python/models/addtoreplyop.py +52 -0
- egain_api_python/models/aisearchop.py +131 -0
- egain_api_python/models/aisearchresponse.py +67 -0
- egain_api_python/models/allaccessibleportals.py +28 -0
- egain_api_python/models/answer.py +21 -0
- egain_api_python/models/answeredquestion.py +125 -0
- egain_api_python/models/answerrange.py +41 -0
- egain_api_python/models/answersrequest.py +78 -0
- egain_api_python/models/answersresponse.py +93 -0
- egain_api_python/models/article.py +241 -0
- egain_api_python/models/articleactivitylink.py +62 -0
- egain_api_python/models/articleadditionalattributes.py +23 -0
- egain_api_python/models/articleaisearchresult.py +254 -0
- egain_api_python/models/articleattachment.py +44 -0
- egain_api_python/models/articlelist.py +48 -0
- egain_api_python/models/articlelistresult.py +38 -0
- egain_api_python/models/articlelistsresult.py +22 -0
- egain_api_python/models/articlepermissions.py +25 -0
- egain_api_python/models/articlepermissionsresult.py +27 -0
- egain_api_python/models/articlerating.py +51 -0
- egain_api_python/models/articleratingsresponse.py +28 -0
- egain_api_python/models/articleresult.py +159 -0
- egain_api_python/models/articleresultadditionalattributes.py +22 -0
- egain_api_python/models/articleresults.py +32 -0
- egain_api_python/models/articlesearchresult.py +243 -0
- egain_api_python/models/articlesearchresults.py +32 -0
- egain_api_python/models/articlesort.py +11 -0
- egain_api_python/models/articlesortorder.py +11 -0
- egain_api_python/models/articletype.py +56 -0
- egain_api_python/models/articlewitheditions.py +227 -0
- egain_api_python/models/attachment.py +31 -0
- egain_api_python/models/attachmentadditionalattributes.py +10 -0
- egain_api_python/models/attachmentcontent.py +57 -0
- egain_api_python/models/attachmentcontentresult.py +22 -0
- egain_api_python/models/attachmentforcreatesuggestion.py +25 -0
- egain_api_python/models/attachments.py +35 -0
- egain_api_python/models/attachmentsummary.py +37 -0
- egain_api_python/models/attachmentupload.py +20 -0
- egain_api_python/models/avertcustomerescalationop.py +44 -0
- egain_api_python/models/bookmark.py +57 -0
- egain_api_python/models/bookmarkresult.py +26 -0
- egain_api_python/models/bookmarkstatus.py +34 -0
- egain_api_python/models/case.py +158 -0
- egain_api_python/models/caseadditionalattributes.py +11 -0
- egain_api_python/models/caseanswer.py +21 -0
- egain_api_python/models/casebase.py +67 -0
- egain_api_python/models/casebaseresult.py +28 -0
- egain_api_python/models/casebasesearchsettings.py +26 -0
- egain_api_python/models/caselistresult.py +74 -0
- egain_api_python/models/caselistresults.py +28 -0
- egain_api_python/models/casequestion.py +16 -0
- egain_api_python/models/casequestiondetail.py +29 -0
- egain_api_python/models/casesearch.py +80 -0
- egain_api_python/models/clusterid.py +16 -0
- egain_api_python/models/clusterresult.py +37 -0
- egain_api_python/models/clusterresults.py +28 -0
- egain_api_python/models/comment.py +33 -0
- egain_api_python/models/comments.py +26 -0
- egain_api_python/models/completecustomerescalationop.py +44 -0
- egain_api_python/models/compliancearticleresult.py +166 -0
- egain_api_python/models/compliancearticleresultadditionalattributes.py +22 -0
- egain_api_python/models/compliancearticleresults.py +35 -0
- egain_api_python/models/complianceforarticle.py +59 -0
- egain_api_python/models/complyarticleop.py +40 -0
- egain_api_python/models/components_schemas_tag.py +25 -0
- egain_api_python/models/components_schemas_tagcategory.py +39 -0
- egain_api_python/models/components_schemas_taggroup.py +25 -0
- egain_api_python/models/configurableattribute.py +25 -0
- egain_api_python/models/configurableattributes.py +15 -0
- egain_api_python/models/contactperson.py +43 -0
- egain_api_python/models/contacts.py +21 -0
- egain_api_python/models/createbookmark.py +64 -0
- egain_api_python/models/createdby.py +37 -0
- egain_api_python/models/createfederatedsearchevent.py +85 -0
- egain_api_python/models/createfederatedsearchresulteventop.py +46 -0
- egain_api_python/models/createimportop.py +20 -0
- egain_api_python/models/createimportvalidationop.py +20 -0
- egain_api_python/models/createquickpick.py +34 -0
- egain_api_python/models/createquickpickop.py +55 -0
- egain_api_python/models/createsearchresulteventforconnectors.py +71 -0
- egain_api_python/models/createsearchresulteventforconnectorsop.py +48 -0
- egain_api_python/models/createsignedurlop.py +29 -0
- egain_api_python/models/createsuggestion.py +126 -0
- egain_api_python/models/createviewedsearchresulteventforconnectors.py +76 -0
- egain_api_python/models/createviewedsearchresultseventforconnectorsop.py +48 -0
- egain_api_python/models/customattribute.py +35 -0
- egain_api_python/models/deletebookmarkop.py +40 -0
- egain_api_python/models/deletesuggestionop.py +40 -0
- egain_api_python/models/department.py +21 -0
- egain_api_python/models/detailfield.py +32 -0
- egain_api_python/models/displayfield.py +27 -0
- egain_api_python/models/dynamiccluster.py +21 -0
- egain_api_python/models/dynamicsearch.py +40 -0
- egain_api_python/models/edition.py +79 -0
- egain_api_python/models/editionwithcontent.py +68 -0
- egain_api_python/models/email.py +21 -0
- egain_api_python/models/exportcontentop.py +14 -0
- egain_api_python/models/exportstatus.py +106 -0
- egain_api_python/models/exportstatusop.py +31 -0
- egain_api_python/models/feedbackarticleforsuggestion.py +34 -0
- egain_api_python/models/folderbreadcrumb.py +24 -0
- egain_api_python/models/foldersummary.py +29 -0
- egain_api_python/models/getacknowledgedcompliancearticlesop.py +119 -0
- egain_api_python/models/getallarticlelistsop.py +47 -0
- egain_api_python/models/getallcasebasesreleasesop.py +65 -0
- egain_api_python/models/getallcasesop.py +83 -0
- egain_api_python/models/getallportalsop.py +60 -0
- egain_api_python/models/getallprofilesinportalop.py +64 -0
- egain_api_python/models/getallquickpicksop.py +83 -0
- egain_api_python/models/getalltopicsop.py +132 -0
- egain_api_python/models/getalluserprofilesop.py +47 -0
- egain_api_python/models/getancestortopicsop.py +133 -0
- egain_api_python/models/getannouncementarticlesop.py +134 -0
- egain_api_python/models/getarticleattachmentbyidop.py +31 -0
- egain_api_python/models/getarticlebyidop.py +257 -0
- egain_api_python/models/getarticlebyidwitheditionsop.py +46 -0
- egain_api_python/models/getarticleeditiondetailsop.py +55 -0
- egain_api_python/models/getarticlelistdetailsop.py +115 -0
- egain_api_python/models/getarticlepermissionsbyidop.py +40 -0
- egain_api_python/models/getarticlepersonalizationop.py +73 -0
- egain_api_python/models/getarticleratingsop.py +74 -0
- egain_api_python/models/getarticlesintopicop.py +172 -0
- egain_api_python/models/getattachmentbyidinportalop.py +56 -0
- egain_api_python/models/getbookmarkop.py +31 -0
- egain_api_python/models/getcasebasereleasebyidop.py +64 -0
- egain_api_python/models/getcasebyidop.py +75 -0
- egain_api_python/models/getchildtopicsop.py +150 -0
- egain_api_python/models/getclusterbycasebasereleaseidop.py +74 -0
- egain_api_python/models/gethealthop.py +130 -0
- egain_api_python/models/getimportcontentop.py +46 -0
- egain_api_python/models/getmyportalsop.py +97 -0
- egain_api_python/models/getmysubscriptionop.py +115 -0
- egain_api_python/models/getpendingcompliancearticlesop.py +119 -0
- egain_api_python/models/getpopulararticlesop.py +133 -0
- egain_api_python/models/getportaldetailsbyidop.py +47 -0
- egain_api_python/models/getrelatedarticlesforsuggestionop.py +96 -0
- egain_api_python/models/getrelatedarticlesop.py +143 -0
- egain_api_python/models/getsuggestionattachmentbyidop.py +76 -0
- egain_api_python/models/getsuggestionattachmentsop.py +40 -0
- egain_api_python/models/getsuggestioncommentsop.py +40 -0
- egain_api_python/models/getsuggestionop.py +107 -0
- egain_api_python/models/gettagcategoriesforinterestforportalop.py +46 -0
- egain_api_python/models/gettopicbreadcrumbforarticleop.py +55 -0
- egain_api_python/models/getuserdetailsop.py +22 -0
- egain_api_python/models/getusermilestonesop.py +22 -0
- egain_api_python/models/ghsearchrequest.py +67 -0
- egain_api_python/models/ghsearchresult.py +75 -0
- egain_api_python/models/ghstepsearchrequest.py +64 -0
- egain_api_python/models/image.py +17 -0
- egain_api_python/models/importcontent.py +79 -0
- egain_api_python/models/importstatus.py +29 -0
- egain_api_python/models/kblanguage.py +63 -0
- egain_api_python/models/kblanguagecode.py +48 -0
- egain_api_python/models/kblanguages.py +22 -0
- egain_api_python/models/knowledgeexport.py +237 -0
- egain_api_python/models/l10nstring.py +22 -0
- egain_api_python/models/languagecode.py +39 -0
- egain_api_python/models/languagecode_parameter.py +39 -0
- egain_api_python/models/languagequeryparameter.py +39 -0
- egain_api_python/models/link.py +25 -0
- egain_api_python/models/makesuggestionop.py +44 -0
- egain_api_python/models/mandatorylanguagequeryparameter.py +38 -0
- egain_api_python/models/metadata.py +29 -0
- egain_api_python/models/milestone.py +21 -0
- egain_api_python/models/milestonename.py +26 -0
- egain_api_python/models/milestones.py +21 -0
- egain_api_python/models/modifiedby.py +37 -0
- egain_api_python/models/modifysuggestion.py +78 -0
- egain_api_python/models/modifysuggestionsop.py +44 -0
- egain_api_python/models/optionalarticleattributes.py +20 -0
- egain_api_python/models/order.py +10 -0
- egain_api_python/models/ownedby.py +37 -0
- egain_api_python/models/paginationinfo.py +32 -0
- egain_api_python/models/patchimportcontentvalidationop.py +46 -0
- egain_api_python/models/personalization.py +67 -0
- egain_api_python/models/phone.py +21 -0
- egain_api_python/models/portal.py +102 -0
- egain_api_python/models/portalresult.py +28 -0
- egain_api_python/models/portalsettings.py +398 -0
- egain_api_python/models/post_portalid_answersop.py +88 -0
- egain_api_python/models/post_portalid_retrieveop.py +88 -0
- egain_api_python/models/profile.py +26 -0
- egain_api_python/models/profileresult.py +24 -0
- egain_api_python/models/publishprofile.py +30 -0
- egain_api_python/models/publishview.py +38 -0
- egain_api_python/models/question.py +101 -0
- egain_api_python/models/questionandanswer.py +26 -0
- egain_api_python/models/quickpickrating.py +32 -0
- egain_api_python/models/quickpickresult.py +38 -0
- egain_api_python/models/quickpickresults.py +28 -0
- egain_api_python/models/ratearticleop.py +71 -0
- egain_api_python/models/referenceresponse.py +80 -0
- egain_api_python/models/rejectghsolutionop.py +52 -0
- egain_api_python/models/relatedquestions.py +28 -0
- egain_api_python/models/resourcetype_parameter.py +10 -0
- egain_api_python/models/restorequickpickop.py +63 -0
- egain_api_python/models/retrieverequest.py +47 -0
- egain_api_python/models/retrieveresponse.py +96 -0
- egain_api_python/models/role.py +26 -0
- egain_api_python/models/roletemplate.py +25 -0
- egain_api_python/models/schemas_answer.py +94 -0
- egain_api_python/models/schemas_customattribute.py +35 -0
- egain_api_python/models/schemas_link.py +27 -0
- egain_api_python/models/schemas_tag.py +21 -0
- egain_api_python/models/schemas_tagcategory.py +75 -0
- egain_api_python/models/schemas_taggroup.py +31 -0
- egain_api_python/models/schemas_tags.py +19 -0
- egain_api_python/models/schemas_wserrorcommon.py +17 -0
- egain_api_python/models/searchfilterattribute.py +61 -0
- egain_api_python/models/searchpriortoescalationop.py +108 -0
- egain_api_python/models/searchresult.py +101 -0
- egain_api_python/models/searchsuggestionop.py +93 -0
- egain_api_python/models/security.py +25 -0
- egain_api_python/models/selectuserprofileop.py +44 -0
- egain_api_python/models/sessioncontextvariable.py +17 -0
- egain_api_python/models/shorturl.py +32 -0
- egain_api_python/models/sortidname.py +10 -0
- egain_api_python/models/sortidnamedepartment.py +11 -0
- egain_api_python/models/stage.py +26 -0
- egain_api_python/models/startcustomerescalationop.py +66 -0
- egain_api_python/models/startescalationrequest.py +94 -0
- egain_api_python/models/startghsearchop.py +74 -0
- egain_api_python/models/startquestionandanswer.py +26 -0
- egain_api_python/models/stepghsearchop.py +62 -0
- egain_api_python/models/stringattributevalue.py +30 -0
- egain_api_python/models/structuredauthoringfields.py +33 -0
- egain_api_python/models/subscribearticleop.py +40 -0
- egain_api_python/models/suggestion.py +190 -0
- egain_api_python/models/suggestionadditionalattributes.py +11 -0
- egain_api_python/models/suggestionattachment.py +46 -0
- egain_api_python/models/suggestions.py +28 -0
- egain_api_python/models/tag.py +17 -0
- egain_api_python/models/tagcategoriesforinterest.py +22 -0
- egain_api_python/models/tagcategory.py +34 -0
- egain_api_python/models/taggroup.py +17 -0
- egain_api_python/models/taggroups.py +20 -0
- egain_api_python/models/tags.py +17 -0
- egain_api_python/models/topic.py +113 -0
- egain_api_python/models/topicadditionalattributes.py +20 -0
- egain_api_python/models/topicaisearchresult.py +67 -0
- egain_api_python/models/topicbreadcrumb.py +24 -0
- egain_api_python/models/topicresult.py +26 -0
- egain_api_python/models/topicsummary.py +31 -0
- egain_api_python/models/topictreenode.py +27 -0
- egain_api_python/models/topictreeresult.py +28 -0
- egain_api_python/models/unsubscribearticleop.py +55 -0
- egain_api_python/models/uploadattachmentop.py +36 -0
- egain_api_python/models/userdetails.py +44 -0
- egain_api_python/models/userprofile.py +33 -0
- egain_api_python/models/userprofiles.py +21 -0
- egain_api_python/models/userview.py +33 -0
- egain_api_python/models/validateimportcontent.py +58 -0
- egain_api_python/models/virtualcase.py +52 -0
- egain_api_python/models/workflow.py +21 -0
- egain_api_python/models/workflowmilestone.py +11 -0
- egain_api_python/models/wserrorcommon.py +17 -0
- egain_api_python/populararticles.py +287 -0
- egain_api_python/portal_article.py +4935 -0
- egain_api_python/portal_attachment.py +494 -0
- egain_api_python/portal_bookmark.py +707 -0
- egain_api_python/portal_sdk.py +88 -0
- egain_api_python/portal_suggestion.py +2283 -0
- egain_api_python/portal_topic.py +975 -0
- egain_api_python/portal_userdetails.py +211 -0
- egain_api_python/portal_userprofile.py +431 -0
- egain_api_python/py.typed +1 -0
- egain_api_python/retrieve.py +265 -0
- egain_api_python/sdk.py +216 -0
- egain_api_python/sdkconfiguration.py +50 -0
- egain_api_python/search.py +251 -0
- egain_api_python/types/__init__.py +21 -0
- egain_api_python/types/basemodel.py +39 -0
- egain_api_python/usermilestones.py +219 -0
- egain_api_python/utils/__init__.py +200 -0
- egain_api_python/utils/annotations.py +79 -0
- egain_api_python/utils/datetimes.py +23 -0
- egain_api_python/utils/enums.py +74 -0
- egain_api_python/utils/eventstreaming.py +248 -0
- egain_api_python/utils/forms.py +223 -0
- egain_api_python/utils/headers.py +136 -0
- egain_api_python/utils/logger.py +27 -0
- egain_api_python/utils/metadata.py +118 -0
- egain_api_python/utils/queryparams.py +205 -0
- egain_api_python/utils/requestbodies.py +66 -0
- egain_api_python/utils/retries.py +217 -0
- egain_api_python/utils/security.py +192 -0
- egain_api_python/utils/serializers.py +249 -0
- egain_api_python/utils/unmarshal_json_response.py +24 -0
- egain_api_python/utils/url.py +155 -0
- egain_api_python/utils/values.py +137 -0
- egain_api_python-0.1.1.dist-info/METADATA +827 -0
- egain_api_python-0.1.1.dist-info/RECORD +332 -0
- egain_api_python-0.1.1.dist-info/WHEEL +5 -0
- egain_api_python-0.1.1.dist-info/licenses/LICENSE +21 -0
- egain_api_python-0.1.1.dist-info/top_level.txt +1 -0
@@ -0,0 +1,52 @@
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
2
|
+
|
3
|
+
from __future__ import annotations
|
4
|
+
from .acceptlanguage import AcceptLanguage
|
5
|
+
from .quickpickrating import QuickpickRating, QuickpickRatingTypedDict
|
6
|
+
from egain_api_python.types import BaseModel
|
7
|
+
from egain_api_python.utils import (
|
8
|
+
FieldMetadata,
|
9
|
+
HeaderMetadata,
|
10
|
+
PathParamMetadata,
|
11
|
+
RequestMetadata,
|
12
|
+
)
|
13
|
+
import pydantic
|
14
|
+
from typing_extensions import Annotated, TypedDict
|
15
|
+
|
16
|
+
|
17
|
+
class AcceptGHSolutionRequestTypedDict(TypedDict):
|
18
|
+
accept_language: AcceptLanguage
|
19
|
+
r"""The Language locale accepted by the client (used for locale specific fields in resource representation and in error responses)."""
|
20
|
+
portal_id: str
|
21
|
+
r"""The ID of the portal being accessed.<br><br>A portal ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits."""
|
22
|
+
case_id: str
|
23
|
+
r"""The numerical ID of the Case for which details is to be fetched."""
|
24
|
+
quickpick_rating: QuickpickRatingTypedDict
|
25
|
+
|
26
|
+
|
27
|
+
class AcceptGHSolutionRequest(BaseModel):
|
28
|
+
accept_language: Annotated[
|
29
|
+
AcceptLanguage,
|
30
|
+
pydantic.Field(alias="Accept-Language"),
|
31
|
+
FieldMetadata(header=HeaderMetadata(style="simple", explode=False)),
|
32
|
+
]
|
33
|
+
r"""The Language locale accepted by the client (used for locale specific fields in resource representation and in error responses)."""
|
34
|
+
|
35
|
+
portal_id: Annotated[
|
36
|
+
str,
|
37
|
+
pydantic.Field(alias="portalID"),
|
38
|
+
FieldMetadata(path=PathParamMetadata(style="simple", explode=False)),
|
39
|
+
]
|
40
|
+
r"""The ID of the portal being accessed.<br><br>A portal ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits."""
|
41
|
+
|
42
|
+
case_id: Annotated[
|
43
|
+
str,
|
44
|
+
pydantic.Field(alias="caseID"),
|
45
|
+
FieldMetadata(path=PathParamMetadata(style="simple", explode=False)),
|
46
|
+
]
|
47
|
+
r"""The numerical ID of the Case for which details is to be fetched."""
|
48
|
+
|
49
|
+
quickpick_rating: Annotated[
|
50
|
+
QuickpickRating,
|
51
|
+
FieldMetadata(request=RequestMetadata(media_type="application/json")),
|
52
|
+
]
|
@@ -0,0 +1,23 @@
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
2
|
+
|
3
|
+
from __future__ import annotations
|
4
|
+
from typing import Literal
|
5
|
+
|
6
|
+
|
7
|
+
AcceptLanguage = Literal[
|
8
|
+
"en-US",
|
9
|
+
"es-ES",
|
10
|
+
"fr-FR",
|
11
|
+
"it-IT",
|
12
|
+
"de-DE",
|
13
|
+
"nl-NL",
|
14
|
+
"pt-BR",
|
15
|
+
"pt-PT",
|
16
|
+
"da-DK",
|
17
|
+
"ru-RU",
|
18
|
+
"fr-CA",
|
19
|
+
"zh-CN",
|
20
|
+
"ja-JP",
|
21
|
+
"ko-KR",
|
22
|
+
"sv-SE",
|
23
|
+
]
|
@@ -0,0 +1,37 @@
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
2
|
+
|
3
|
+
from __future__ import annotations
|
4
|
+
from .department import Department, DepartmentTypedDict
|
5
|
+
from .shorturl import ShortURL, ShortURLTypedDict
|
6
|
+
from egain_api_python.types import BaseModel
|
7
|
+
import pydantic
|
8
|
+
from typing import List, Optional
|
9
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
10
|
+
|
11
|
+
|
12
|
+
class AccessiblePortalTypedDict(TypedDict):
|
13
|
+
id: NotRequired[str]
|
14
|
+
r"""ID of portal. <br>A Portal ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits."""
|
15
|
+
name: NotRequired[str]
|
16
|
+
r"""Name of portal"""
|
17
|
+
description: NotRequired[str]
|
18
|
+
r"""Description of portal"""
|
19
|
+
department: NotRequired[DepartmentTypedDict]
|
20
|
+
short_url: NotRequired[List[ShortURLTypedDict]]
|
21
|
+
|
22
|
+
|
23
|
+
class AccessiblePortal(BaseModel):
|
24
|
+
id: Optional[str] = None
|
25
|
+
r"""ID of portal. <br>A Portal ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits."""
|
26
|
+
|
27
|
+
name: Optional[str] = None
|
28
|
+
r"""Name of portal"""
|
29
|
+
|
30
|
+
description: Optional[str] = None
|
31
|
+
r"""Description of portal"""
|
32
|
+
|
33
|
+
department: Optional[Department] = None
|
34
|
+
|
35
|
+
short_url: Annotated[Optional[List[ShortURL]], pydantic.Field(alias="shortURL")] = (
|
36
|
+
None
|
37
|
+
)
|
@@ -0,0 +1,56 @@
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
2
|
+
|
3
|
+
from __future__ import annotations
|
4
|
+
from .articletype import ArticleType, ArticleTypeTypedDict
|
5
|
+
from .metadata import Metadata, MetadataTypedDict
|
6
|
+
from egain_api_python.types import BaseModel
|
7
|
+
import pydantic
|
8
|
+
from typing import List, Optional
|
9
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
10
|
+
|
11
|
+
|
12
|
+
class ActionTypedDict(TypedDict):
|
13
|
+
id: NotRequired[str]
|
14
|
+
r"""ID of the action"""
|
15
|
+
title: NotRequired[str]
|
16
|
+
r"""Name of the action"""
|
17
|
+
type: NotRequired[str]
|
18
|
+
r"""type of the action"""
|
19
|
+
short_name: NotRequired[str]
|
20
|
+
r"""short name of the action"""
|
21
|
+
reject_count: NotRequired[int]
|
22
|
+
r"""number of times action was rejected."""
|
23
|
+
accept_count: NotRequired[int]
|
24
|
+
r"""number of times action was accepted."""
|
25
|
+
metadata: NotRequired[List[MetadataTypedDict]]
|
26
|
+
r"""Metadata of action"""
|
27
|
+
article_type: NotRequired[ArticleTypeTypedDict]
|
28
|
+
r"""The type of the Article and its attributes."""
|
29
|
+
|
30
|
+
|
31
|
+
class Action(BaseModel):
|
32
|
+
id: Optional[str] = None
|
33
|
+
r"""ID of the action"""
|
34
|
+
|
35
|
+
title: Optional[str] = None
|
36
|
+
r"""Name of the action"""
|
37
|
+
|
38
|
+
type: Optional[str] = None
|
39
|
+
r"""type of the action"""
|
40
|
+
|
41
|
+
short_name: Annotated[Optional[str], pydantic.Field(alias="shortName")] = None
|
42
|
+
r"""short name of the action"""
|
43
|
+
|
44
|
+
reject_count: Annotated[Optional[int], pydantic.Field(alias="rejectCount")] = None
|
45
|
+
r"""number of times action was rejected."""
|
46
|
+
|
47
|
+
accept_count: Annotated[Optional[int], pydantic.Field(alias="acceptCount")] = None
|
48
|
+
r"""number of times action was accepted."""
|
49
|
+
|
50
|
+
metadata: Optional[List[Metadata]] = None
|
51
|
+
r"""Metadata of action"""
|
52
|
+
|
53
|
+
article_type: Annotated[
|
54
|
+
Optional[ArticleType], pydantic.Field(alias="articleType")
|
55
|
+
] = None
|
56
|
+
r"""The type of the Article and its attributes."""
|
@@ -0,0 +1,92 @@
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
2
|
+
|
3
|
+
from __future__ import annotations
|
4
|
+
from .articletype import ArticleType, ArticleTypeTypedDict
|
5
|
+
from .metadata import Metadata, MetadataTypedDict
|
6
|
+
from egain_api_python.types import BaseModel
|
7
|
+
import pydantic
|
8
|
+
from typing import List, Literal, Optional
|
9
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
10
|
+
|
11
|
+
|
12
|
+
ActionSearchType = Literal[
|
13
|
+
"control",
|
14
|
+
"article",
|
15
|
+
]
|
16
|
+
r"""type of the action"""
|
17
|
+
|
18
|
+
|
19
|
+
class ActionSearchTypedDict(TypedDict):
|
20
|
+
accept_count: NotRequired[int]
|
21
|
+
r"""number of times action was accepted"""
|
22
|
+
has_additional_info: NotRequired[bool]
|
23
|
+
r"""indicates if action has additional information"""
|
24
|
+
metadata: NotRequired[List[MetadataTypedDict]]
|
25
|
+
r"""Metadata in action search."""
|
26
|
+
article_id: NotRequired[str]
|
27
|
+
r"""The ID of the Article .<br>The ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits."""
|
28
|
+
case_id: NotRequired[str]
|
29
|
+
r"""The numerical ID of the case."""
|
30
|
+
passed_threshold_value: NotRequired[bool]
|
31
|
+
r"""indicates if the case has passed the threshold value"""
|
32
|
+
reject_count: NotRequired[int]
|
33
|
+
r"""The number of times action was rejected"""
|
34
|
+
short_name: NotRequired[str]
|
35
|
+
r"""short name"""
|
36
|
+
score: NotRequired[int]
|
37
|
+
r"""score of the case"""
|
38
|
+
name: NotRequired[str]
|
39
|
+
r"""name of the case"""
|
40
|
+
action_id: NotRequired[str]
|
41
|
+
r"""The ID of the Action."""
|
42
|
+
type: NotRequired[ActionSearchType]
|
43
|
+
r"""type of the action"""
|
44
|
+
article_type: NotRequired[ArticleTypeTypedDict]
|
45
|
+
r"""The type of the Article and its attributes."""
|
46
|
+
|
47
|
+
|
48
|
+
class ActionSearch(BaseModel):
|
49
|
+
accept_count: Annotated[Optional[int], pydantic.Field(alias="acceptCount")] = None
|
50
|
+
r"""number of times action was accepted"""
|
51
|
+
|
52
|
+
has_additional_info: Annotated[
|
53
|
+
Optional[bool], pydantic.Field(alias="hasAdditionalInfo")
|
54
|
+
] = None
|
55
|
+
r"""indicates if action has additional information"""
|
56
|
+
|
57
|
+
metadata: Optional[List[Metadata]] = None
|
58
|
+
r"""Metadata in action search."""
|
59
|
+
|
60
|
+
article_id: Annotated[Optional[str], pydantic.Field(alias="articleId")] = None
|
61
|
+
r"""The ID of the Article .<br>The ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits."""
|
62
|
+
|
63
|
+
case_id: Annotated[Optional[str], pydantic.Field(alias="caseId")] = None
|
64
|
+
r"""The numerical ID of the case."""
|
65
|
+
|
66
|
+
passed_threshold_value: Annotated[
|
67
|
+
Optional[bool], pydantic.Field(alias="passedThresholdValue")
|
68
|
+
] = None
|
69
|
+
r"""indicates if the case has passed the threshold value"""
|
70
|
+
|
71
|
+
reject_count: Annotated[Optional[int], pydantic.Field(alias="rejectCount")] = None
|
72
|
+
r"""The number of times action was rejected"""
|
73
|
+
|
74
|
+
short_name: Annotated[Optional[str], pydantic.Field(alias="shortName")] = None
|
75
|
+
r"""short name"""
|
76
|
+
|
77
|
+
score: Optional[int] = None
|
78
|
+
r"""score of the case"""
|
79
|
+
|
80
|
+
name: Optional[str] = None
|
81
|
+
r"""name of the case"""
|
82
|
+
|
83
|
+
action_id: Annotated[Optional[str], pydantic.Field(alias="actionId")] = None
|
84
|
+
r"""The ID of the Action."""
|
85
|
+
|
86
|
+
type: Optional[ActionSearchType] = None
|
87
|
+
r"""type of the action"""
|
88
|
+
|
89
|
+
article_type: Annotated[
|
90
|
+
Optional[ArticleType], pydantic.Field(alias="articleType")
|
91
|
+
] = None
|
92
|
+
r"""The type of the Article and its attributes."""
|
@@ -0,0 +1,52 @@
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
2
|
+
|
3
|
+
from __future__ import annotations
|
4
|
+
from .acceptlanguage import AcceptLanguage
|
5
|
+
from .articleactivitylink import ArticleActivityLink, ArticleActivityLinkTypedDict
|
6
|
+
from egain_api_python.types import BaseModel
|
7
|
+
from egain_api_python.utils import (
|
8
|
+
FieldMetadata,
|
9
|
+
HeaderMetadata,
|
10
|
+
PathParamMetadata,
|
11
|
+
RequestMetadata,
|
12
|
+
)
|
13
|
+
import pydantic
|
14
|
+
from typing_extensions import Annotated, TypedDict
|
15
|
+
|
16
|
+
|
17
|
+
class AddAsReferenceRequestTypedDict(TypedDict):
|
18
|
+
accept_language: AcceptLanguage
|
19
|
+
r"""The Language locale accepted by the client (used for locale specific fields in resource representation and in error responses)."""
|
20
|
+
portal_id: str
|
21
|
+
r"""The ID of the portal being accessed.<br><br>A portal ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits."""
|
22
|
+
article_id: str
|
23
|
+
r"""The ID of the Article.<br><br>An Article ID is composed of a 2-4 letter prefix followed by a dash and 4-15 digits."""
|
24
|
+
article_activity_link: ArticleActivityLinkTypedDict
|
25
|
+
|
26
|
+
|
27
|
+
class AddAsReferenceRequest(BaseModel):
|
28
|
+
accept_language: Annotated[
|
29
|
+
AcceptLanguage,
|
30
|
+
pydantic.Field(alias="Accept-Language"),
|
31
|
+
FieldMetadata(header=HeaderMetadata(style="simple", explode=False)),
|
32
|
+
]
|
33
|
+
r"""The Language locale accepted by the client (used for locale specific fields in resource representation and in error responses)."""
|
34
|
+
|
35
|
+
portal_id: Annotated[
|
36
|
+
str,
|
37
|
+
pydantic.Field(alias="portalID"),
|
38
|
+
FieldMetadata(path=PathParamMetadata(style="simple", explode=False)),
|
39
|
+
]
|
40
|
+
r"""The ID of the portal being accessed.<br><br>A portal ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits."""
|
41
|
+
|
42
|
+
article_id: Annotated[
|
43
|
+
str,
|
44
|
+
pydantic.Field(alias="articleID"),
|
45
|
+
FieldMetadata(path=PathParamMetadata(style="simple", explode=False)),
|
46
|
+
]
|
47
|
+
r"""The ID of the Article.<br><br>An Article ID is composed of a 2-4 letter prefix followed by a dash and 4-15 digits."""
|
48
|
+
|
49
|
+
article_activity_link: Annotated[
|
50
|
+
ArticleActivityLink,
|
51
|
+
FieldMetadata(request=RequestMetadata(media_type="application/json")),
|
52
|
+
]
|
@@ -0,0 +1,43 @@
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
2
|
+
|
3
|
+
from __future__ import annotations
|
4
|
+
from .acceptlanguage import AcceptLanguage
|
5
|
+
from .createbookmark import CreateBookmark, CreateBookmarkTypedDict
|
6
|
+
from egain_api_python.types import BaseModel
|
7
|
+
from egain_api_python.utils import (
|
8
|
+
FieldMetadata,
|
9
|
+
HeaderMetadata,
|
10
|
+
PathParamMetadata,
|
11
|
+
RequestMetadata,
|
12
|
+
)
|
13
|
+
import pydantic
|
14
|
+
from typing_extensions import Annotated, TypedDict
|
15
|
+
|
16
|
+
|
17
|
+
class AddbookmarkRequestTypedDict(TypedDict):
|
18
|
+
portal_id: str
|
19
|
+
r"""The ID of the portal being accessed.<br><br>A portal ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits."""
|
20
|
+
accept_language: AcceptLanguage
|
21
|
+
r"""The Language locale accepted by the client (used for locale specific fields in resource representation and in error responses)."""
|
22
|
+
create_bookmark: CreateBookmarkTypedDict
|
23
|
+
|
24
|
+
|
25
|
+
class AddbookmarkRequest(BaseModel):
|
26
|
+
portal_id: Annotated[
|
27
|
+
str,
|
28
|
+
pydantic.Field(alias="portalID"),
|
29
|
+
FieldMetadata(path=PathParamMetadata(style="simple", explode=False)),
|
30
|
+
]
|
31
|
+
r"""The ID of the portal being accessed.<br><br>A portal ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits."""
|
32
|
+
|
33
|
+
accept_language: Annotated[
|
34
|
+
AcceptLanguage,
|
35
|
+
pydantic.Field(alias="Accept-Language"),
|
36
|
+
FieldMetadata(header=HeaderMetadata(style="simple", explode=False)),
|
37
|
+
]
|
38
|
+
r"""The Language locale accepted by the client (used for locale specific fields in resource representation and in error responses)."""
|
39
|
+
|
40
|
+
create_bookmark: Annotated[
|
41
|
+
CreateBookmark,
|
42
|
+
FieldMetadata(request=RequestMetadata(media_type="application/json")),
|
43
|
+
]
|
@@ -0,0 +1,57 @@
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
2
|
+
|
3
|
+
from __future__ import annotations
|
4
|
+
from egain_api_python.types import BaseModel
|
5
|
+
import pydantic
|
6
|
+
from typing import Literal, Optional
|
7
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
8
|
+
|
9
|
+
|
10
|
+
AdditionalSnippetsDocType = Literal[
|
11
|
+
"HTML",
|
12
|
+
"Doc",
|
13
|
+
"Pdf",
|
14
|
+
]
|
15
|
+
r"""Format of the source document (HTML, Doc, or PDF)."""
|
16
|
+
|
17
|
+
|
18
|
+
class AdditionalSnippetsTypedDict(TypedDict):
|
19
|
+
id: str
|
20
|
+
r"""The ID of the Article. <br><br> An Article ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits."""
|
21
|
+
name: str
|
22
|
+
r"""The name of the Article or source content."""
|
23
|
+
doc_type: AdditionalSnippetsDocType
|
24
|
+
r"""Format of the source document (HTML, Doc, or PDF)."""
|
25
|
+
doc_name: str
|
26
|
+
r"""Name of the attachment, if an attachment was used as the source content."""
|
27
|
+
snippet: str
|
28
|
+
r"""A snippet of the article content."""
|
29
|
+
relevance_score: float
|
30
|
+
r"""Generated confidence score (0.0-1.0) for the snippet's relevance to the query."""
|
31
|
+
keyword_snippet: NotRequired[str]
|
32
|
+
r"""A keyword snippet of the article content."""
|
33
|
+
|
34
|
+
|
35
|
+
class AdditionalSnippets(BaseModel):
|
36
|
+
id: str
|
37
|
+
r"""The ID of the Article. <br><br> An Article ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits."""
|
38
|
+
|
39
|
+
name: str
|
40
|
+
r"""The name of the Article or source content."""
|
41
|
+
|
42
|
+
doc_type: Annotated[AdditionalSnippetsDocType, pydantic.Field(alias="docType")]
|
43
|
+
r"""Format of the source document (HTML, Doc, or PDF)."""
|
44
|
+
|
45
|
+
doc_name: Annotated[str, pydantic.Field(alias="docName")]
|
46
|
+
r"""Name of the attachment, if an attachment was used as the source content."""
|
47
|
+
|
48
|
+
snippet: str
|
49
|
+
r"""A snippet of the article content."""
|
50
|
+
|
51
|
+
relevance_score: Annotated[float, pydantic.Field(alias="relevanceScore")]
|
52
|
+
r"""Generated confidence score (0.0-1.0) for the snippet's relevance to the query."""
|
53
|
+
|
54
|
+
keyword_snippet: Annotated[
|
55
|
+
Optional[str], pydantic.Field(alias="keywordSnippet")
|
56
|
+
] = None
|
57
|
+
r"""A keyword snippet of the article content."""
|
@@ -0,0 +1,52 @@
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
2
|
+
|
3
|
+
from __future__ import annotations
|
4
|
+
from .acceptlanguage import AcceptLanguage
|
5
|
+
from .articleactivitylink import ArticleActivityLink, ArticleActivityLinkTypedDict
|
6
|
+
from egain_api_python.types import BaseModel
|
7
|
+
from egain_api_python.utils import (
|
8
|
+
FieldMetadata,
|
9
|
+
HeaderMetadata,
|
10
|
+
PathParamMetadata,
|
11
|
+
RequestMetadata,
|
12
|
+
)
|
13
|
+
import pydantic
|
14
|
+
from typing_extensions import Annotated, TypedDict
|
15
|
+
|
16
|
+
|
17
|
+
class AddToReplyRequestTypedDict(TypedDict):
|
18
|
+
accept_language: AcceptLanguage
|
19
|
+
r"""The Language locale accepted by the client (used for locale specific fields in resource representation and in error responses)."""
|
20
|
+
portal_id: str
|
21
|
+
r"""The ID of the portal being accessed.<br><br>A portal ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits."""
|
22
|
+
article_id: str
|
23
|
+
r"""The ID of the Article.<br><br>An Article ID is composed of a 2-4 letter prefix followed by a dash and 4-15 digits."""
|
24
|
+
article_activity_link: ArticleActivityLinkTypedDict
|
25
|
+
|
26
|
+
|
27
|
+
class AddToReplyRequest(BaseModel):
|
28
|
+
accept_language: Annotated[
|
29
|
+
AcceptLanguage,
|
30
|
+
pydantic.Field(alias="Accept-Language"),
|
31
|
+
FieldMetadata(header=HeaderMetadata(style="simple", explode=False)),
|
32
|
+
]
|
33
|
+
r"""The Language locale accepted by the client (used for locale specific fields in resource representation and in error responses)."""
|
34
|
+
|
35
|
+
portal_id: Annotated[
|
36
|
+
str,
|
37
|
+
pydantic.Field(alias="portalID"),
|
38
|
+
FieldMetadata(path=PathParamMetadata(style="simple", explode=False)),
|
39
|
+
]
|
40
|
+
r"""The ID of the portal being accessed.<br><br>A portal ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits."""
|
41
|
+
|
42
|
+
article_id: Annotated[
|
43
|
+
str,
|
44
|
+
pydantic.Field(alias="articleID"),
|
45
|
+
FieldMetadata(path=PathParamMetadata(style="simple", explode=False)),
|
46
|
+
]
|
47
|
+
r"""The ID of the Article.<br><br>An Article ID is composed of a 2-4 letter prefix followed by a dash and 4-15 digits."""
|
48
|
+
|
49
|
+
article_activity_link: Annotated[
|
50
|
+
ArticleActivityLink,
|
51
|
+
FieldMetadata(request=RequestMetadata(media_type="application/json")),
|
52
|
+
]
|
@@ -0,0 +1,131 @@
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
2
|
+
|
3
|
+
from __future__ import annotations
|
4
|
+
from .languagecode_parameter import LanguageCodeParameter
|
5
|
+
from .resourcetype_parameter import ResourceTypeParameter
|
6
|
+
from egain_api_python.types import BaseModel
|
7
|
+
from egain_api_python.utils import FieldMetadata, PathParamMetadata, QueryParamMetadata
|
8
|
+
import pydantic
|
9
|
+
from typing import Dict, List, Optional
|
10
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
11
|
+
|
12
|
+
|
13
|
+
class AiSearchRequestTypedDict(TypedDict):
|
14
|
+
q: str
|
15
|
+
r"""The search query string. The string must be escaped as required by the URL syntax rules."""
|
16
|
+
portal_id: str
|
17
|
+
r"""The ID of the portal being accessed.<br><br>A portal ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits."""
|
18
|
+
dollar_filter_user_profile_id: NotRequired[str]
|
19
|
+
r"""The ID of the user profile.
|
20
|
+
|
21
|
+
"""
|
22
|
+
language: NotRequired[LanguageCodeParameter]
|
23
|
+
r"""The language that describes the details of a resource. Resources available in different languages may differ from each other. <br><br> If lang is not passed, then the portal's default language is used."""
|
24
|
+
dollar_filter_tags: NotRequired[Dict[str, List[str]]]
|
25
|
+
r"""An object where each key is a **Category Tag ID** (numeric string),
|
26
|
+
and each value is an array of **Tag IDs** for that category.
|
27
|
+
|
28
|
+
"""
|
29
|
+
dollar_filter_topic_ids: NotRequired[List[str]]
|
30
|
+
r"""An array of topic IDs. It is used to restrict search results to specific topics."""
|
31
|
+
dollar_filter_exclude_topic_ids: NotRequired[List[str]]
|
32
|
+
r"""An array of topic IDs that will be excluded from the search. It includes articles that belong to the topic."""
|
33
|
+
resource_type: NotRequired[ResourceTypeParameter]
|
34
|
+
r"""Type of resource to be fetched."""
|
35
|
+
article_custom_additional_attributes: NotRequired[str]
|
36
|
+
r"""One or more comma-separated names for article custom attributes defined by the user to be returned."""
|
37
|
+
topic_custom_additional_attributes: NotRequired[str]
|
38
|
+
r"""One or more comma-separated names for topic custom attributes defined by the user to be returned."""
|
39
|
+
pagenum: NotRequired[int]
|
40
|
+
r"""Pagination parameter that specifies the page number of results to be returned. Used in conjunction with $pagesize."""
|
41
|
+
pagesize: NotRequired[int]
|
42
|
+
r"""Pagination parameter that specifies the number of results per page. Used in conjunction with $pagenum."""
|
43
|
+
|
44
|
+
|
45
|
+
class AiSearchRequest(BaseModel):
|
46
|
+
q: Annotated[
|
47
|
+
str, FieldMetadata(query=QueryParamMetadata(style="form", explode=True))
|
48
|
+
]
|
49
|
+
r"""The search query string. The string must be escaped as required by the URL syntax rules."""
|
50
|
+
|
51
|
+
portal_id: Annotated[
|
52
|
+
str,
|
53
|
+
pydantic.Field(alias="portalID"),
|
54
|
+
FieldMetadata(path=PathParamMetadata(style="simple", explode=False)),
|
55
|
+
]
|
56
|
+
r"""The ID of the portal being accessed.<br><br>A portal ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits."""
|
57
|
+
|
58
|
+
dollar_filter_user_profile_id: Annotated[
|
59
|
+
Optional[str],
|
60
|
+
pydantic.Field(alias="$filter[userProfileID]"),
|
61
|
+
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
62
|
+
] = None
|
63
|
+
r"""The ID of the user profile.
|
64
|
+
|
65
|
+
"""
|
66
|
+
|
67
|
+
language: Annotated[
|
68
|
+
Optional[LanguageCodeParameter],
|
69
|
+
pydantic.Field(alias="$lang"),
|
70
|
+
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
71
|
+
] = None
|
72
|
+
r"""The language that describes the details of a resource. Resources available in different languages may differ from each other. <br><br> If lang is not passed, then the portal's default language is used."""
|
73
|
+
|
74
|
+
dollar_filter_tags: Annotated[
|
75
|
+
Optional[Dict[str, List[str]]],
|
76
|
+
pydantic.Field(alias="$filter[tags]"),
|
77
|
+
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
78
|
+
] = None
|
79
|
+
r"""An object where each key is a **Category Tag ID** (numeric string),
|
80
|
+
and each value is an array of **Tag IDs** for that category.
|
81
|
+
|
82
|
+
"""
|
83
|
+
|
84
|
+
dollar_filter_topic_ids: Annotated[
|
85
|
+
Optional[List[str]],
|
86
|
+
pydantic.Field(alias="$filter[topicIds]"),
|
87
|
+
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
88
|
+
] = None
|
89
|
+
r"""An array of topic IDs. It is used to restrict search results to specific topics."""
|
90
|
+
|
91
|
+
dollar_filter_exclude_topic_ids: Annotated[
|
92
|
+
Optional[List[str]],
|
93
|
+
pydantic.Field(alias="$filter[excludeTopicIds]"),
|
94
|
+
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
95
|
+
] = None
|
96
|
+
r"""An array of topic IDs that will be excluded from the search. It includes articles that belong to the topic."""
|
97
|
+
|
98
|
+
resource_type: Annotated[
|
99
|
+
Optional[ResourceTypeParameter],
|
100
|
+
pydantic.Field(alias="resourceType"),
|
101
|
+
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
102
|
+
] = None
|
103
|
+
r"""Type of resource to be fetched."""
|
104
|
+
|
105
|
+
article_custom_additional_attributes: Annotated[
|
106
|
+
Optional[str],
|
107
|
+
pydantic.Field(alias="articleCustomAdditionalAttributes"),
|
108
|
+
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
109
|
+
] = None
|
110
|
+
r"""One or more comma-separated names for article custom attributes defined by the user to be returned."""
|
111
|
+
|
112
|
+
topic_custom_additional_attributes: Annotated[
|
113
|
+
Optional[str],
|
114
|
+
pydantic.Field(alias="topicCustomAdditionalAttributes"),
|
115
|
+
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
116
|
+
] = None
|
117
|
+
r"""One or more comma-separated names for topic custom attributes defined by the user to be returned."""
|
118
|
+
|
119
|
+
pagenum: Annotated[
|
120
|
+
Optional[int],
|
121
|
+
pydantic.Field(alias="$pagenum"),
|
122
|
+
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
123
|
+
] = 1
|
124
|
+
r"""Pagination parameter that specifies the page number of results to be returned. Used in conjunction with $pagesize."""
|
125
|
+
|
126
|
+
pagesize: Annotated[
|
127
|
+
Optional[int],
|
128
|
+
pydantic.Field(alias="$pagesize"),
|
129
|
+
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
130
|
+
] = 10
|
131
|
+
r"""Pagination parameter that specifies the number of results per page. Used in conjunction with $pagenum."""
|
@@ -0,0 +1,67 @@
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
2
|
+
|
3
|
+
from __future__ import annotations
|
4
|
+
from .articleaisearchresult import ArticleAISearchResult, ArticleAISearchResultTypedDict
|
5
|
+
from .paginationinfo import PaginationInfo, PaginationInfoTypedDict
|
6
|
+
from .topicaisearchresult import TopicAISearchResult, TopicAISearchResultTypedDict
|
7
|
+
from egain_api_python.types import BaseModel
|
8
|
+
import pydantic
|
9
|
+
from typing import List, Literal, Optional
|
10
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
11
|
+
|
12
|
+
|
13
|
+
AISearchResponseType = Literal[
|
14
|
+
"portal",
|
15
|
+
"custom",
|
16
|
+
]
|
17
|
+
r"""The channel where the query originated, e.g., directly from the portal or via a custom integration."""
|
18
|
+
|
19
|
+
|
20
|
+
class AISearchResponseChannelTypedDict(TypedDict):
|
21
|
+
type: AISearchResponseType
|
22
|
+
r"""The channel where the query originated, e.g., directly from the portal or via a custom integration."""
|
23
|
+
name: NotRequired[str]
|
24
|
+
r"""The name of the channel."""
|
25
|
+
|
26
|
+
|
27
|
+
class AISearchResponseChannel(BaseModel):
|
28
|
+
type: AISearchResponseType
|
29
|
+
r"""The channel where the query originated, e.g., directly from the portal or via a custom integration."""
|
30
|
+
|
31
|
+
name: Optional[str] = None
|
32
|
+
r"""The name of the channel."""
|
33
|
+
|
34
|
+
|
35
|
+
class SearchResultsTypedDict(TypedDict):
|
36
|
+
r"""Top search results with relevance scores"""
|
37
|
+
|
38
|
+
article: NotRequired[List[ArticleAISearchResultTypedDict]]
|
39
|
+
topic: NotRequired[List[TopicAISearchResultTypedDict]]
|
40
|
+
|
41
|
+
|
42
|
+
class SearchResults(BaseModel):
|
43
|
+
r"""Top search results with relevance scores"""
|
44
|
+
|
45
|
+
article: Optional[List[ArticleAISearchResult]] = None
|
46
|
+
|
47
|
+
topic: Optional[List[TopicAISearchResult]] = None
|
48
|
+
|
49
|
+
|
50
|
+
class AISearchResponseTypedDict(TypedDict):
|
51
|
+
channel: NotRequired[AISearchResponseChannelTypedDict]
|
52
|
+
search_results: NotRequired[SearchResultsTypedDict]
|
53
|
+
r"""Top search results with relevance scores"""
|
54
|
+
pagination_info: NotRequired[PaginationInfoTypedDict]
|
55
|
+
|
56
|
+
|
57
|
+
class AISearchResponse(BaseModel):
|
58
|
+
channel: Optional[AISearchResponseChannel] = None
|
59
|
+
|
60
|
+
search_results: Annotated[
|
61
|
+
Optional[SearchResults], pydantic.Field(alias="searchResults")
|
62
|
+
] = None
|
63
|
+
r"""Top search results with relevance scores"""
|
64
|
+
|
65
|
+
pagination_info: Annotated[
|
66
|
+
Optional[PaginationInfo], pydantic.Field(alias="paginationInfo")
|
67
|
+
] = None
|