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,62 @@
|
|
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
|
+
ArticleActivityLinkCode = Literal[
|
11
|
+
"en-US",
|
12
|
+
"en-GB",
|
13
|
+
"fr-FR",
|
14
|
+
"es-ES",
|
15
|
+
"it-IT",
|
16
|
+
"de-DE",
|
17
|
+
"nl-NL",
|
18
|
+
"pt-BR",
|
19
|
+
"pt-PT",
|
20
|
+
"da-DK",
|
21
|
+
"sv-SE",
|
22
|
+
"ru-RU",
|
23
|
+
"fr-CA",
|
24
|
+
"zh-CN",
|
25
|
+
"ja-JP",
|
26
|
+
"ko-KR",
|
27
|
+
]
|
28
|
+
r"""The code of the language."""
|
29
|
+
|
30
|
+
|
31
|
+
class ArticleActivityLinkLanguageTypedDict(TypedDict):
|
32
|
+
r"""The knowledge base language in which the version is created."""
|
33
|
+
|
34
|
+
code: ArticleActivityLinkCode
|
35
|
+
r"""The code of the language."""
|
36
|
+
|
37
|
+
|
38
|
+
class ArticleActivityLinkLanguage(BaseModel):
|
39
|
+
r"""The knowledge base language in which the version is created."""
|
40
|
+
|
41
|
+
code: ArticleActivityLinkCode
|
42
|
+
r"""The code of the language."""
|
43
|
+
|
44
|
+
|
45
|
+
class ArticleActivityLinkTypedDict(TypedDict):
|
46
|
+
version_id: str
|
47
|
+
r"""An Article version's ID."""
|
48
|
+
language: ArticleActivityLinkLanguageTypedDict
|
49
|
+
r"""The knowledge base language in which the version is created."""
|
50
|
+
edition_id: NotRequired[str]
|
51
|
+
r"""An Article edition's ID."""
|
52
|
+
|
53
|
+
|
54
|
+
class ArticleActivityLink(BaseModel):
|
55
|
+
version_id: Annotated[str, pydantic.Field(alias="versionId")]
|
56
|
+
r"""An Article version's ID."""
|
57
|
+
|
58
|
+
language: ArticleActivityLinkLanguage
|
59
|
+
r"""The knowledge base language in which the version is created."""
|
60
|
+
|
61
|
+
edition_id: Annotated[Optional[str], pydantic.Field(alias="editionId")] = None
|
62
|
+
r"""An Article edition's ID."""
|
@@ -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
|
+
ArticleAdditionalAttributes = Literal[
|
8
|
+
"articleMacro",
|
9
|
+
"availabilityDate",
|
10
|
+
"availableEditions",
|
11
|
+
"averageRating",
|
12
|
+
"bookmarkStatus",
|
13
|
+
"content",
|
14
|
+
"contentText",
|
15
|
+
"compliance",
|
16
|
+
"timesRated",
|
17
|
+
"createdBy.userName",
|
18
|
+
"modifiedBy.userName",
|
19
|
+
"ownedBy",
|
20
|
+
"ownedBy.userName",
|
21
|
+
"workflow",
|
22
|
+
"all",
|
23
|
+
]
|
@@ -0,0 +1,254 @@
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
2
|
+
|
3
|
+
from __future__ import annotations
|
4
|
+
from .additionalsnippets import AdditionalSnippets, AdditionalSnippetsTypedDict
|
5
|
+
from .schemas_tags import SchemasTags, SchemasTagsTypedDict
|
6
|
+
from .topicbreadcrumb import TopicBreadcrumb, TopicBreadcrumbTypedDict
|
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
|
+
ArticleAISearchResultDocType = Literal[
|
14
|
+
"HTML",
|
15
|
+
"Doc",
|
16
|
+
"Pdf",
|
17
|
+
]
|
18
|
+
r"""Format of the source document (HTML, Doc, or PDF)."""
|
19
|
+
|
20
|
+
|
21
|
+
ArticleAISearchResultSource = Literal[
|
22
|
+
"eGain Article",
|
23
|
+
"eGain Attachment",
|
24
|
+
]
|
25
|
+
r"""The source type."""
|
26
|
+
|
27
|
+
|
28
|
+
ArticleAISearchResultType = Literal[
|
29
|
+
"STRING",
|
30
|
+
"INTEGER",
|
31
|
+
"BOOLEAN",
|
32
|
+
"DATETIME",
|
33
|
+
]
|
34
|
+
r"""The custom attribute's type."""
|
35
|
+
|
36
|
+
|
37
|
+
class ArticleAISearchResultCustomAttributeTypedDict(TypedDict):
|
38
|
+
name: NotRequired[str]
|
39
|
+
r"""The custom attribute's name."""
|
40
|
+
value: NotRequired[List[str]]
|
41
|
+
r"""The custom attribute's values."""
|
42
|
+
type: NotRequired[ArticleAISearchResultType]
|
43
|
+
r"""The custom attribute's type."""
|
44
|
+
|
45
|
+
|
46
|
+
class ArticleAISearchResultCustomAttribute(BaseModel):
|
47
|
+
name: Optional[str] = None
|
48
|
+
r"""The custom attribute's name."""
|
49
|
+
|
50
|
+
value: Optional[List[str]] = None
|
51
|
+
r"""The custom attribute's values."""
|
52
|
+
|
53
|
+
type: Optional[ArticleAISearchResultType] = None
|
54
|
+
r"""The custom attribute's type."""
|
55
|
+
|
56
|
+
|
57
|
+
class OpensearchHighlightingRawTypedDict(TypedDict):
|
58
|
+
r"""Article content used for highlighting a keyword search result"""
|
59
|
+
|
60
|
+
article_content: NotRequired[List[str]]
|
61
|
+
|
62
|
+
|
63
|
+
class OpensearchHighlightingRaw(BaseModel):
|
64
|
+
r"""Article content used for highlighting a keyword search result"""
|
65
|
+
|
66
|
+
article_content: Annotated[
|
67
|
+
Optional[List[str]], pydantic.Field(alias="articleContent")
|
68
|
+
] = None
|
69
|
+
|
70
|
+
|
71
|
+
ArticleAISearchResultTypeName = Literal[
|
72
|
+
"General",
|
73
|
+
"Guided Help",
|
74
|
+
"Data Link",
|
75
|
+
"Topic Home",
|
76
|
+
"Suggestion",
|
77
|
+
"Virtaul Assistant Action",
|
78
|
+
"Rich Message",
|
79
|
+
]
|
80
|
+
r"""Indicates the article category name."""
|
81
|
+
|
82
|
+
|
83
|
+
class ArticleTypeAttributesTypedDict(TypedDict):
|
84
|
+
r"""The type of the Article."""
|
85
|
+
|
86
|
+
type_name: NotRequired[ArticleAISearchResultTypeName]
|
87
|
+
r"""Indicates the article category name."""
|
88
|
+
|
89
|
+
|
90
|
+
class ArticleTypeAttributes(BaseModel):
|
91
|
+
r"""The type of the Article."""
|
92
|
+
|
93
|
+
type_name: Annotated[
|
94
|
+
Optional[ArticleAISearchResultTypeName], pydantic.Field(alias="typeName")
|
95
|
+
] = None
|
96
|
+
r"""Indicates the article category name."""
|
97
|
+
|
98
|
+
|
99
|
+
class ArticleAISearchResultLinkTypedDict(TypedDict):
|
100
|
+
r"""Defines the relationship between this resource and another object."""
|
101
|
+
|
102
|
+
rel: NotRequired[str]
|
103
|
+
r"""Defines the relationship between a linked resource and the current object. <br><br> For example: self, prev, next or an object name such as 'user', 'folder' etc."""
|
104
|
+
href: NotRequired[str]
|
105
|
+
r"""The URL that specifies the link's destination."""
|
106
|
+
|
107
|
+
|
108
|
+
class ArticleAISearchResultLink(BaseModel):
|
109
|
+
r"""Defines the relationship between this resource and another object."""
|
110
|
+
|
111
|
+
rel: Optional[str] = None
|
112
|
+
r"""Defines the relationship between a linked resource and the current object. <br><br> For example: self, prev, next or an object name such as 'user', 'folder' etc."""
|
113
|
+
|
114
|
+
href: Optional[str] = None
|
115
|
+
r"""The URL that specifies the link's destination."""
|
116
|
+
|
117
|
+
|
118
|
+
class ArticleAISearchResultTypedDict(TypedDict):
|
119
|
+
r"""Represents a single document or snippet returned by search, along with its metadata and relevance score."""
|
120
|
+
|
121
|
+
id: str
|
122
|
+
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."""
|
123
|
+
name: str
|
124
|
+
r"""The name of the Article or source content."""
|
125
|
+
doc_type: ArticleAISearchResultDocType
|
126
|
+
r"""Format of the source document (HTML, Doc, or PDF)."""
|
127
|
+
source: ArticleAISearchResultSource
|
128
|
+
r"""The source type."""
|
129
|
+
snippet: str
|
130
|
+
r"""A snippet of the article content."""
|
131
|
+
topic_breadcrumb: List[TopicBreadcrumbTypedDict]
|
132
|
+
r"""A list of topics from the root topic to this Article. There may be multiple paths."""
|
133
|
+
relevance_score: float
|
134
|
+
r"""Generated confidence score (0.0-1.0) for the snippet's relevance to the query."""
|
135
|
+
doc_name: NotRequired[str]
|
136
|
+
r"""Name of the attachment, if an attachment was used as the source content."""
|
137
|
+
custom_attributes: NotRequired[List[ArticleAISearchResultCustomAttributeTypedDict]]
|
138
|
+
r"""Custom attributes assigned to an article"""
|
139
|
+
keyword_snippet: NotRequired[str]
|
140
|
+
r"""A keyword search snippet of article content."""
|
141
|
+
additional_snippets: NotRequired[List[AdditionalSnippetsTypedDict]]
|
142
|
+
r"""An array of snippets belonging to the same article."""
|
143
|
+
additional_snippet_count: NotRequired[int]
|
144
|
+
r"""Number of additional snippets."""
|
145
|
+
opensearch_highlighting_raw: NotRequired[OpensearchHighlightingRawTypedDict]
|
146
|
+
r"""Article content used for highlighting a keyword search result"""
|
147
|
+
contextual_summary: NotRequired[str]
|
148
|
+
r"""Contextual Summary generated as part of metadata for embedding."""
|
149
|
+
description: NotRequired[str]
|
150
|
+
r"""A description of the Article. The maximum allowed Article description size is 1 KB."""
|
151
|
+
summary: NotRequired[str]
|
152
|
+
r"""A brief summary of the Article, provided as metadata. 1 KB max size limit."""
|
153
|
+
last_modified_date: NotRequired[str]
|
154
|
+
r"""The date on which the Article was last modified."""
|
155
|
+
header_path: NotRequired[str]
|
156
|
+
r"""The header path of the snippet retrieved."""
|
157
|
+
tag_categories: NotRequired[List[SchemasTagsTypedDict]]
|
158
|
+
r"""An array of tag categories. Note that the total number of tag categories cannot exceed 20."""
|
159
|
+
keywords: NotRequired[str]
|
160
|
+
article_type_attributes: NotRequired[ArticleTypeAttributesTypedDict]
|
161
|
+
r"""The type of the Article."""
|
162
|
+
link: NotRequired[ArticleAISearchResultLinkTypedDict]
|
163
|
+
r"""Defines the relationship between this resource and another object."""
|
164
|
+
|
165
|
+
|
166
|
+
class ArticleAISearchResult(BaseModel):
|
167
|
+
r"""Represents a single document or snippet returned by search, along with its metadata and relevance score."""
|
168
|
+
|
169
|
+
id: str
|
170
|
+
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."""
|
171
|
+
|
172
|
+
name: str
|
173
|
+
r"""The name of the Article or source content."""
|
174
|
+
|
175
|
+
doc_type: Annotated[ArticleAISearchResultDocType, pydantic.Field(alias="docType")]
|
176
|
+
r"""Format of the source document (HTML, Doc, or PDF)."""
|
177
|
+
|
178
|
+
source: ArticleAISearchResultSource
|
179
|
+
r"""The source type."""
|
180
|
+
|
181
|
+
snippet: str
|
182
|
+
r"""A snippet of the article content."""
|
183
|
+
|
184
|
+
topic_breadcrumb: Annotated[
|
185
|
+
List[TopicBreadcrumb], pydantic.Field(alias="topicBreadcrumb")
|
186
|
+
]
|
187
|
+
r"""A list of topics from the root topic to this Article. There may be multiple paths."""
|
188
|
+
|
189
|
+
relevance_score: Annotated[float, pydantic.Field(alias="relevanceScore")]
|
190
|
+
r"""Generated confidence score (0.0-1.0) for the snippet's relevance to the query."""
|
191
|
+
|
192
|
+
doc_name: Annotated[Optional[str], pydantic.Field(alias="docName")] = None
|
193
|
+
r"""Name of the attachment, if an attachment was used as the source content."""
|
194
|
+
|
195
|
+
custom_attributes: Annotated[
|
196
|
+
Optional[List[ArticleAISearchResultCustomAttribute]],
|
197
|
+
pydantic.Field(alias="customAttributes"),
|
198
|
+
] = None
|
199
|
+
r"""Custom attributes assigned to an article"""
|
200
|
+
|
201
|
+
keyword_snippet: Annotated[
|
202
|
+
Optional[str], pydantic.Field(alias="keywordSnippet")
|
203
|
+
] = None
|
204
|
+
r"""A keyword search snippet of article content."""
|
205
|
+
|
206
|
+
additional_snippets: Annotated[
|
207
|
+
Optional[List[AdditionalSnippets]], pydantic.Field(alias="additionalSnippets")
|
208
|
+
] = None
|
209
|
+
r"""An array of snippets belonging to the same article."""
|
210
|
+
|
211
|
+
additional_snippet_count: Annotated[
|
212
|
+
Optional[int], pydantic.Field(alias="additionalSnippetCount")
|
213
|
+
] = None
|
214
|
+
r"""Number of additional snippets."""
|
215
|
+
|
216
|
+
opensearch_highlighting_raw: Annotated[
|
217
|
+
Optional[OpensearchHighlightingRaw],
|
218
|
+
pydantic.Field(alias="opensearchHighlightingRaw"),
|
219
|
+
] = None
|
220
|
+
r"""Article content used for highlighting a keyword search result"""
|
221
|
+
|
222
|
+
contextual_summary: Annotated[
|
223
|
+
Optional[str], pydantic.Field(alias="contextualSummary")
|
224
|
+
] = None
|
225
|
+
r"""Contextual Summary generated as part of metadata for embedding."""
|
226
|
+
|
227
|
+
description: Optional[str] = None
|
228
|
+
r"""A description of the Article. The maximum allowed Article description size is 1 KB."""
|
229
|
+
|
230
|
+
summary: Optional[str] = None
|
231
|
+
r"""A brief summary of the Article, provided as metadata. 1 KB max size limit."""
|
232
|
+
|
233
|
+
last_modified_date: Annotated[
|
234
|
+
Optional[str], pydantic.Field(alias="lastModifiedDate")
|
235
|
+
] = None
|
236
|
+
r"""The date on which the Article was last modified."""
|
237
|
+
|
238
|
+
header_path: Annotated[Optional[str], pydantic.Field(alias="headerPath")] = None
|
239
|
+
r"""The header path of the snippet retrieved."""
|
240
|
+
|
241
|
+
tag_categories: Annotated[
|
242
|
+
Optional[List[SchemasTags]], pydantic.Field(alias="tagCategories")
|
243
|
+
] = None
|
244
|
+
r"""An array of tag categories. Note that the total number of tag categories cannot exceed 20."""
|
245
|
+
|
246
|
+
keywords: Optional[str] = None
|
247
|
+
|
248
|
+
article_type_attributes: Annotated[
|
249
|
+
Optional[ArticleTypeAttributes], pydantic.Field(alias="articleTypeAttributes")
|
250
|
+
] = None
|
251
|
+
r"""The type of the Article."""
|
252
|
+
|
253
|
+
link: Optional[ArticleAISearchResultLink] = None
|
254
|
+
r"""Defines the relationship between this resource and another object."""
|
@@ -0,0 +1,44 @@
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
2
|
+
|
3
|
+
from __future__ import annotations
|
4
|
+
from .link import Link, LinkTypedDict
|
5
|
+
from egain_api_python.types import BaseModel
|
6
|
+
from typing import Literal, Optional
|
7
|
+
from typing_extensions import NotRequired, TypedDict
|
8
|
+
|
9
|
+
|
10
|
+
ArticleAttachmentType = Literal[
|
11
|
+
"INTERNAL",
|
12
|
+
"EXTERNAL",
|
13
|
+
]
|
14
|
+
r"""The type of attachment."""
|
15
|
+
|
16
|
+
|
17
|
+
class ArticleAttachmentTypedDict(TypedDict):
|
18
|
+
id: NotRequired[str]
|
19
|
+
r"""The ID of the attachment."""
|
20
|
+
name: NotRequired[str]
|
21
|
+
r"""The name of the attachment."""
|
22
|
+
size: NotRequired[int]
|
23
|
+
r"""The size of the attachment in bytes. The maximum size is limited to 25MB."""
|
24
|
+
type: NotRequired[ArticleAttachmentType]
|
25
|
+
r"""The type of attachment."""
|
26
|
+
link: NotRequired[LinkTypedDict]
|
27
|
+
r"""Defines the relationship between this resource and another object."""
|
28
|
+
|
29
|
+
|
30
|
+
class ArticleAttachment(BaseModel):
|
31
|
+
id: Optional[str] = None
|
32
|
+
r"""The ID of the attachment."""
|
33
|
+
|
34
|
+
name: Optional[str] = None
|
35
|
+
r"""The name of the attachment."""
|
36
|
+
|
37
|
+
size: Optional[int] = None
|
38
|
+
r"""The size of the attachment in bytes. The maximum size is limited to 25MB."""
|
39
|
+
|
40
|
+
type: Optional[ArticleAttachmentType] = None
|
41
|
+
r"""The type of attachment."""
|
42
|
+
|
43
|
+
link: Optional[Link] = None
|
44
|
+
r"""Defines the relationship between this resource and another object."""
|
@@ -0,0 +1,48 @@
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
2
|
+
|
3
|
+
from __future__ import annotations
|
4
|
+
from .articleresult import ArticleResult, ArticleResultTypedDict
|
5
|
+
from .link import Link, LinkTypedDict
|
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 ArticleListTypedDict(TypedDict):
|
13
|
+
r"""Success"""
|
14
|
+
|
15
|
+
name: str
|
16
|
+
r"""The name of the article list."""
|
17
|
+
id: str
|
18
|
+
r"""The ID of the article list.<br><br>An article list ID is either a 4-digit number or composed of a 2-4 letter prefix, followed by a dash and 4-15 digits."""
|
19
|
+
description: NotRequired[str]
|
20
|
+
r"""The description of the article list. The maximum allowed article list description size is 1 KB."""
|
21
|
+
type_id: NotRequired[str]
|
22
|
+
r"""The type of the article list."""
|
23
|
+
articles: NotRequired[List[ArticleResultTypedDict]]
|
24
|
+
r"""An array of articles that belong to the article list."""
|
25
|
+
link: NotRequired[LinkTypedDict]
|
26
|
+
r"""Defines the relationship between this resource and another object."""
|
27
|
+
|
28
|
+
|
29
|
+
class ArticleList(BaseModel):
|
30
|
+
r"""Success"""
|
31
|
+
|
32
|
+
name: str
|
33
|
+
r"""The name of the article list."""
|
34
|
+
|
35
|
+
id: str
|
36
|
+
r"""The ID of the article list.<br><br>An article list ID is either a 4-digit number or composed of a 2-4 letter prefix, followed by a dash and 4-15 digits."""
|
37
|
+
|
38
|
+
description: Optional[str] = None
|
39
|
+
r"""The description of the article list. The maximum allowed article list description size is 1 KB."""
|
40
|
+
|
41
|
+
type_id: Annotated[Optional[str], pydantic.Field(alias="typeId")] = None
|
42
|
+
r"""The type of the article list."""
|
43
|
+
|
44
|
+
articles: Optional[List[ArticleResult]] = None
|
45
|
+
r"""An array of articles that belong to the article list."""
|
46
|
+
|
47
|
+
link: Optional[Link] = None
|
48
|
+
r"""Defines the relationship between this resource and another object."""
|
@@ -0,0 +1,38 @@
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
2
|
+
|
3
|
+
from __future__ import annotations
|
4
|
+
from .link import Link, LinkTypedDict
|
5
|
+
from egain_api_python.types import BaseModel
|
6
|
+
import pydantic
|
7
|
+
from typing import Optional
|
8
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
9
|
+
|
10
|
+
|
11
|
+
class ArticleListResultTypedDict(TypedDict):
|
12
|
+
name: str
|
13
|
+
r"""The name of the article list."""
|
14
|
+
id: str
|
15
|
+
r"""The ID of the article list.<br><br>An article list ID is either a 4-digit number or composed of a 2-4 letter prefix, followed by a dash and 4-15 digits."""
|
16
|
+
description: NotRequired[str]
|
17
|
+
r"""The description of the article list. The maximum allowed article list description size is 1 KB."""
|
18
|
+
type_id: NotRequired[str]
|
19
|
+
r"""The type of the article list."""
|
20
|
+
link: NotRequired[LinkTypedDict]
|
21
|
+
r"""Defines the relationship between this resource and another object."""
|
22
|
+
|
23
|
+
|
24
|
+
class ArticleListResult(BaseModel):
|
25
|
+
name: str
|
26
|
+
r"""The name of the article list."""
|
27
|
+
|
28
|
+
id: str
|
29
|
+
r"""The ID of the article list.<br><br>An article list ID is either a 4-digit number or composed of a 2-4 letter prefix, followed by a dash and 4-15 digits."""
|
30
|
+
|
31
|
+
description: Optional[str] = None
|
32
|
+
r"""The description of the article list. The maximum allowed article list description size is 1 KB."""
|
33
|
+
|
34
|
+
type_id: Annotated[Optional[str], pydantic.Field(alias="typeId")] = None
|
35
|
+
r"""The type of the article list."""
|
36
|
+
|
37
|
+
link: Optional[Link] = None
|
38
|
+
r"""Defines the relationship between this resource and another object."""
|
@@ -0,0 +1,22 @@
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
2
|
+
|
3
|
+
from __future__ import annotations
|
4
|
+
from .articlelistresult import ArticleListResult, ArticleListResultTypedDict
|
5
|
+
from egain_api_python.types import BaseModel
|
6
|
+
import pydantic
|
7
|
+
from typing import List, Optional
|
8
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
9
|
+
|
10
|
+
|
11
|
+
class ArticleListsResultTypedDict(TypedDict):
|
12
|
+
r"""Instances of Artice List"""
|
13
|
+
|
14
|
+
article_lists: NotRequired[List[ArticleListResultTypedDict]]
|
15
|
+
|
16
|
+
|
17
|
+
class ArticleListsResult(BaseModel):
|
18
|
+
r"""Instances of Artice List"""
|
19
|
+
|
20
|
+
article_lists: Annotated[
|
21
|
+
Optional[List[ArticleListResult]], pydantic.Field(alias="articleLists")
|
22
|
+
] = None
|
@@ -0,0 +1,25 @@
|
|
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
|
+
from typing import Optional
|
6
|
+
from typing_extensions import NotRequired, TypedDict
|
7
|
+
|
8
|
+
|
9
|
+
class ArticlePermissionsTypedDict(TypedDict):
|
10
|
+
r"""User permissions on the parent folder."""
|
11
|
+
|
12
|
+
view: NotRequired[bool]
|
13
|
+
r"""User has 'View Folder' permission on the parent folder."""
|
14
|
+
edit: NotRequired[bool]
|
15
|
+
r"""User has 'Edit Article' permission on the parent folder."""
|
16
|
+
|
17
|
+
|
18
|
+
class ArticlePermissions(BaseModel):
|
19
|
+
r"""User permissions on the parent folder."""
|
20
|
+
|
21
|
+
view: Optional[bool] = None
|
22
|
+
r"""User has 'View Folder' permission on the parent folder."""
|
23
|
+
|
24
|
+
edit: Optional[bool] = None
|
25
|
+
r"""User has 'Edit Article' permission on the parent folder."""
|
@@ -0,0 +1,27 @@
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
2
|
+
|
3
|
+
from __future__ import annotations
|
4
|
+
from .articlepermissions import ArticlePermissions, ArticlePermissionsTypedDict
|
5
|
+
from egain_api_python.types import BaseModel
|
6
|
+
import pydantic
|
7
|
+
from typing import Optional
|
8
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
9
|
+
|
10
|
+
|
11
|
+
class ArticlePermissionsResultTypedDict(TypedDict):
|
12
|
+
r"""User permissions on the parent folder."""
|
13
|
+
|
14
|
+
article_id: NotRequired[str]
|
15
|
+
r"""ID of Article"""
|
16
|
+
permissions: NotRequired[ArticlePermissionsTypedDict]
|
17
|
+
r"""User permissions on the parent folder."""
|
18
|
+
|
19
|
+
|
20
|
+
class ArticlePermissionsResult(BaseModel):
|
21
|
+
r"""User permissions on the parent folder."""
|
22
|
+
|
23
|
+
article_id: Annotated[Optional[str], pydantic.Field(alias="articleID")] = None
|
24
|
+
r"""ID of Article"""
|
25
|
+
|
26
|
+
permissions: Optional[ArticlePermissions] = None
|
27
|
+
r"""User permissions on the parent folder."""
|
@@ -0,0 +1,51 @@
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
2
|
+
|
3
|
+
from __future__ import annotations
|
4
|
+
from datetime import datetime
|
5
|
+
from egain_api_python.types import BaseModel
|
6
|
+
import pydantic
|
7
|
+
from typing import Optional
|
8
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
9
|
+
|
10
|
+
|
11
|
+
class ArticleRatingTypedDict(TypedDict):
|
12
|
+
r"""This schema contains general information about the article rating."""
|
13
|
+
|
14
|
+
id: NotRequired[str]
|
15
|
+
r"""The ID of the rating."""
|
16
|
+
article_id: NotRequired[str]
|
17
|
+
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."""
|
18
|
+
rating_value: NotRequired[int]
|
19
|
+
r"""The score value of the rating. This must be a value between 0 and 100."""
|
20
|
+
rating_comments: NotRequired[str]
|
21
|
+
r"""Comments about the rating."""
|
22
|
+
user_id: NotRequired[str]
|
23
|
+
r"""The ID of the user that rated the article."""
|
24
|
+
rating_timestamp: NotRequired[datetime]
|
25
|
+
r"""The timestamp for when the article was rated."""
|
26
|
+
|
27
|
+
|
28
|
+
class ArticleRating(BaseModel):
|
29
|
+
r"""This schema contains general information about the article rating."""
|
30
|
+
|
31
|
+
id: Optional[str] = None
|
32
|
+
r"""The ID of the rating."""
|
33
|
+
|
34
|
+
article_id: Annotated[Optional[str], pydantic.Field(alias="articleId")] = None
|
35
|
+
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."""
|
36
|
+
|
37
|
+
rating_value: Annotated[Optional[int], pydantic.Field(alias="ratingValue")] = None
|
38
|
+
r"""The score value of the rating. This must be a value between 0 and 100."""
|
39
|
+
|
40
|
+
rating_comments: Annotated[
|
41
|
+
Optional[str], pydantic.Field(alias="ratingComments")
|
42
|
+
] = None
|
43
|
+
r"""Comments about the rating."""
|
44
|
+
|
45
|
+
user_id: Annotated[Optional[str], pydantic.Field(alias="userId")] = None
|
46
|
+
r"""The ID of the user that rated the article."""
|
47
|
+
|
48
|
+
rating_timestamp: Annotated[
|
49
|
+
Optional[datetime], pydantic.Field(alias="ratingTimestamp")
|
50
|
+
] = None
|
51
|
+
r"""The timestamp for when the article was rated."""
|
@@ -0,0 +1,28 @@
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
2
|
+
|
3
|
+
from __future__ import annotations
|
4
|
+
from .articlerating import ArticleRating, ArticleRatingTypedDict
|
5
|
+
from .paginationinfo import PaginationInfo, PaginationInfoTypedDict
|
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 ArticleRatingsResponseTypedDict(TypedDict):
|
13
|
+
r"""Success"""
|
14
|
+
|
15
|
+
article_ratings: NotRequired[List[ArticleRatingTypedDict]]
|
16
|
+
pagination_info: NotRequired[PaginationInfoTypedDict]
|
17
|
+
|
18
|
+
|
19
|
+
class ArticleRatingsResponse(BaseModel):
|
20
|
+
r"""Success"""
|
21
|
+
|
22
|
+
article_ratings: Annotated[
|
23
|
+
Optional[List[ArticleRating]], pydantic.Field(alias="articleRatings")
|
24
|
+
] = None
|
25
|
+
|
26
|
+
pagination_info: Annotated[
|
27
|
+
Optional[PaginationInfo], pydantic.Field(alias="paginationInfo")
|
28
|
+
] = None
|