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.
Files changed (332) hide show
  1. egain_api_python/__init__.py +17 -0
  2. egain_api_python/_hooks/__init__.py +5 -0
  3. egain_api_python/_hooks/registration.py +13 -0
  4. egain_api_python/_hooks/sdkhooks.py +76 -0
  5. egain_api_python/_hooks/types.py +112 -0
  6. egain_api_python/_version.py +15 -0
  7. egain_api_python/aiservices.py +23 -0
  8. egain_api_python/answers.py +281 -0
  9. egain_api_python/articlelists.py +469 -0
  10. egain_api_python/basesdk.py +368 -0
  11. egain_api_python/connectorssearchevents.py +537 -0
  12. egain_api_python/content.py +23 -0
  13. egain_api_python/errors/__init__.py +78 -0
  14. egain_api_python/errors/egaindefaulterror.py +40 -0
  15. egain_api_python/errors/egainerror.py +30 -0
  16. egain_api_python/errors/gethealthop.py +74 -0
  17. egain_api_python/errors/no_response_error.py +17 -0
  18. egain_api_python/errors/responsevalidationerror.py +27 -0
  19. egain_api_python/errors/schemas_wserrorcommon.py +51 -0
  20. egain_api_python/errors/wserrorcommon.py +49 -0
  21. egain_api_python/escalation.py +955 -0
  22. egain_api_python/export.py +487 -0
  23. egain_api_python/federatedsearchevent.py +287 -0
  24. egain_api_python/general.py +925 -0
  25. egain_api_python/guidedhelp.py +3373 -0
  26. egain_api_python/health.py +253 -0
  27. egain_api_python/httpclient.py +125 -0
  28. egain_api_python/import_.py +1161 -0
  29. egain_api_python/models/__init__.py +2136 -0
  30. egain_api_python/models/acceptghsolutionop.py +52 -0
  31. egain_api_python/models/acceptlanguage.py +23 -0
  32. egain_api_python/models/accessibleportal.py +37 -0
  33. egain_api_python/models/action.py +56 -0
  34. egain_api_python/models/actionsearch.py +92 -0
  35. egain_api_python/models/addasreferenceop.py +52 -0
  36. egain_api_python/models/addbookmarkop.py +43 -0
  37. egain_api_python/models/additionalsnippets.py +57 -0
  38. egain_api_python/models/addtoreplyop.py +52 -0
  39. egain_api_python/models/aisearchop.py +131 -0
  40. egain_api_python/models/aisearchresponse.py +67 -0
  41. egain_api_python/models/allaccessibleportals.py +28 -0
  42. egain_api_python/models/answer.py +21 -0
  43. egain_api_python/models/answeredquestion.py +125 -0
  44. egain_api_python/models/answerrange.py +41 -0
  45. egain_api_python/models/answersrequest.py +78 -0
  46. egain_api_python/models/answersresponse.py +93 -0
  47. egain_api_python/models/article.py +241 -0
  48. egain_api_python/models/articleactivitylink.py +62 -0
  49. egain_api_python/models/articleadditionalattributes.py +23 -0
  50. egain_api_python/models/articleaisearchresult.py +254 -0
  51. egain_api_python/models/articleattachment.py +44 -0
  52. egain_api_python/models/articlelist.py +48 -0
  53. egain_api_python/models/articlelistresult.py +38 -0
  54. egain_api_python/models/articlelistsresult.py +22 -0
  55. egain_api_python/models/articlepermissions.py +25 -0
  56. egain_api_python/models/articlepermissionsresult.py +27 -0
  57. egain_api_python/models/articlerating.py +51 -0
  58. egain_api_python/models/articleratingsresponse.py +28 -0
  59. egain_api_python/models/articleresult.py +159 -0
  60. egain_api_python/models/articleresultadditionalattributes.py +22 -0
  61. egain_api_python/models/articleresults.py +32 -0
  62. egain_api_python/models/articlesearchresult.py +243 -0
  63. egain_api_python/models/articlesearchresults.py +32 -0
  64. egain_api_python/models/articlesort.py +11 -0
  65. egain_api_python/models/articlesortorder.py +11 -0
  66. egain_api_python/models/articletype.py +56 -0
  67. egain_api_python/models/articlewitheditions.py +227 -0
  68. egain_api_python/models/attachment.py +31 -0
  69. egain_api_python/models/attachmentadditionalattributes.py +10 -0
  70. egain_api_python/models/attachmentcontent.py +57 -0
  71. egain_api_python/models/attachmentcontentresult.py +22 -0
  72. egain_api_python/models/attachmentforcreatesuggestion.py +25 -0
  73. egain_api_python/models/attachments.py +35 -0
  74. egain_api_python/models/attachmentsummary.py +37 -0
  75. egain_api_python/models/attachmentupload.py +20 -0
  76. egain_api_python/models/avertcustomerescalationop.py +44 -0
  77. egain_api_python/models/bookmark.py +57 -0
  78. egain_api_python/models/bookmarkresult.py +26 -0
  79. egain_api_python/models/bookmarkstatus.py +34 -0
  80. egain_api_python/models/case.py +158 -0
  81. egain_api_python/models/caseadditionalattributes.py +11 -0
  82. egain_api_python/models/caseanswer.py +21 -0
  83. egain_api_python/models/casebase.py +67 -0
  84. egain_api_python/models/casebaseresult.py +28 -0
  85. egain_api_python/models/casebasesearchsettings.py +26 -0
  86. egain_api_python/models/caselistresult.py +74 -0
  87. egain_api_python/models/caselistresults.py +28 -0
  88. egain_api_python/models/casequestion.py +16 -0
  89. egain_api_python/models/casequestiondetail.py +29 -0
  90. egain_api_python/models/casesearch.py +80 -0
  91. egain_api_python/models/clusterid.py +16 -0
  92. egain_api_python/models/clusterresult.py +37 -0
  93. egain_api_python/models/clusterresults.py +28 -0
  94. egain_api_python/models/comment.py +33 -0
  95. egain_api_python/models/comments.py +26 -0
  96. egain_api_python/models/completecustomerescalationop.py +44 -0
  97. egain_api_python/models/compliancearticleresult.py +166 -0
  98. egain_api_python/models/compliancearticleresultadditionalattributes.py +22 -0
  99. egain_api_python/models/compliancearticleresults.py +35 -0
  100. egain_api_python/models/complianceforarticle.py +59 -0
  101. egain_api_python/models/complyarticleop.py +40 -0
  102. egain_api_python/models/components_schemas_tag.py +25 -0
  103. egain_api_python/models/components_schemas_tagcategory.py +39 -0
  104. egain_api_python/models/components_schemas_taggroup.py +25 -0
  105. egain_api_python/models/configurableattribute.py +25 -0
  106. egain_api_python/models/configurableattributes.py +15 -0
  107. egain_api_python/models/contactperson.py +43 -0
  108. egain_api_python/models/contacts.py +21 -0
  109. egain_api_python/models/createbookmark.py +64 -0
  110. egain_api_python/models/createdby.py +37 -0
  111. egain_api_python/models/createfederatedsearchevent.py +85 -0
  112. egain_api_python/models/createfederatedsearchresulteventop.py +46 -0
  113. egain_api_python/models/createimportop.py +20 -0
  114. egain_api_python/models/createimportvalidationop.py +20 -0
  115. egain_api_python/models/createquickpick.py +34 -0
  116. egain_api_python/models/createquickpickop.py +55 -0
  117. egain_api_python/models/createsearchresulteventforconnectors.py +71 -0
  118. egain_api_python/models/createsearchresulteventforconnectorsop.py +48 -0
  119. egain_api_python/models/createsignedurlop.py +29 -0
  120. egain_api_python/models/createsuggestion.py +126 -0
  121. egain_api_python/models/createviewedsearchresulteventforconnectors.py +76 -0
  122. egain_api_python/models/createviewedsearchresultseventforconnectorsop.py +48 -0
  123. egain_api_python/models/customattribute.py +35 -0
  124. egain_api_python/models/deletebookmarkop.py +40 -0
  125. egain_api_python/models/deletesuggestionop.py +40 -0
  126. egain_api_python/models/department.py +21 -0
  127. egain_api_python/models/detailfield.py +32 -0
  128. egain_api_python/models/displayfield.py +27 -0
  129. egain_api_python/models/dynamiccluster.py +21 -0
  130. egain_api_python/models/dynamicsearch.py +40 -0
  131. egain_api_python/models/edition.py +79 -0
  132. egain_api_python/models/editionwithcontent.py +68 -0
  133. egain_api_python/models/email.py +21 -0
  134. egain_api_python/models/exportcontentop.py +14 -0
  135. egain_api_python/models/exportstatus.py +106 -0
  136. egain_api_python/models/exportstatusop.py +31 -0
  137. egain_api_python/models/feedbackarticleforsuggestion.py +34 -0
  138. egain_api_python/models/folderbreadcrumb.py +24 -0
  139. egain_api_python/models/foldersummary.py +29 -0
  140. egain_api_python/models/getacknowledgedcompliancearticlesop.py +119 -0
  141. egain_api_python/models/getallarticlelistsop.py +47 -0
  142. egain_api_python/models/getallcasebasesreleasesop.py +65 -0
  143. egain_api_python/models/getallcasesop.py +83 -0
  144. egain_api_python/models/getallportalsop.py +60 -0
  145. egain_api_python/models/getallprofilesinportalop.py +64 -0
  146. egain_api_python/models/getallquickpicksop.py +83 -0
  147. egain_api_python/models/getalltopicsop.py +132 -0
  148. egain_api_python/models/getalluserprofilesop.py +47 -0
  149. egain_api_python/models/getancestortopicsop.py +133 -0
  150. egain_api_python/models/getannouncementarticlesop.py +134 -0
  151. egain_api_python/models/getarticleattachmentbyidop.py +31 -0
  152. egain_api_python/models/getarticlebyidop.py +257 -0
  153. egain_api_python/models/getarticlebyidwitheditionsop.py +46 -0
  154. egain_api_python/models/getarticleeditiondetailsop.py +55 -0
  155. egain_api_python/models/getarticlelistdetailsop.py +115 -0
  156. egain_api_python/models/getarticlepermissionsbyidop.py +40 -0
  157. egain_api_python/models/getarticlepersonalizationop.py +73 -0
  158. egain_api_python/models/getarticleratingsop.py +74 -0
  159. egain_api_python/models/getarticlesintopicop.py +172 -0
  160. egain_api_python/models/getattachmentbyidinportalop.py +56 -0
  161. egain_api_python/models/getbookmarkop.py +31 -0
  162. egain_api_python/models/getcasebasereleasebyidop.py +64 -0
  163. egain_api_python/models/getcasebyidop.py +75 -0
  164. egain_api_python/models/getchildtopicsop.py +150 -0
  165. egain_api_python/models/getclusterbycasebasereleaseidop.py +74 -0
  166. egain_api_python/models/gethealthop.py +130 -0
  167. egain_api_python/models/getimportcontentop.py +46 -0
  168. egain_api_python/models/getmyportalsop.py +97 -0
  169. egain_api_python/models/getmysubscriptionop.py +115 -0
  170. egain_api_python/models/getpendingcompliancearticlesop.py +119 -0
  171. egain_api_python/models/getpopulararticlesop.py +133 -0
  172. egain_api_python/models/getportaldetailsbyidop.py +47 -0
  173. egain_api_python/models/getrelatedarticlesforsuggestionop.py +96 -0
  174. egain_api_python/models/getrelatedarticlesop.py +143 -0
  175. egain_api_python/models/getsuggestionattachmentbyidop.py +76 -0
  176. egain_api_python/models/getsuggestionattachmentsop.py +40 -0
  177. egain_api_python/models/getsuggestioncommentsop.py +40 -0
  178. egain_api_python/models/getsuggestionop.py +107 -0
  179. egain_api_python/models/gettagcategoriesforinterestforportalop.py +46 -0
  180. egain_api_python/models/gettopicbreadcrumbforarticleop.py +55 -0
  181. egain_api_python/models/getuserdetailsop.py +22 -0
  182. egain_api_python/models/getusermilestonesop.py +22 -0
  183. egain_api_python/models/ghsearchrequest.py +67 -0
  184. egain_api_python/models/ghsearchresult.py +75 -0
  185. egain_api_python/models/ghstepsearchrequest.py +64 -0
  186. egain_api_python/models/image.py +17 -0
  187. egain_api_python/models/importcontent.py +79 -0
  188. egain_api_python/models/importstatus.py +29 -0
  189. egain_api_python/models/kblanguage.py +63 -0
  190. egain_api_python/models/kblanguagecode.py +48 -0
  191. egain_api_python/models/kblanguages.py +22 -0
  192. egain_api_python/models/knowledgeexport.py +237 -0
  193. egain_api_python/models/l10nstring.py +22 -0
  194. egain_api_python/models/languagecode.py +39 -0
  195. egain_api_python/models/languagecode_parameter.py +39 -0
  196. egain_api_python/models/languagequeryparameter.py +39 -0
  197. egain_api_python/models/link.py +25 -0
  198. egain_api_python/models/makesuggestionop.py +44 -0
  199. egain_api_python/models/mandatorylanguagequeryparameter.py +38 -0
  200. egain_api_python/models/metadata.py +29 -0
  201. egain_api_python/models/milestone.py +21 -0
  202. egain_api_python/models/milestonename.py +26 -0
  203. egain_api_python/models/milestones.py +21 -0
  204. egain_api_python/models/modifiedby.py +37 -0
  205. egain_api_python/models/modifysuggestion.py +78 -0
  206. egain_api_python/models/modifysuggestionsop.py +44 -0
  207. egain_api_python/models/optionalarticleattributes.py +20 -0
  208. egain_api_python/models/order.py +10 -0
  209. egain_api_python/models/ownedby.py +37 -0
  210. egain_api_python/models/paginationinfo.py +32 -0
  211. egain_api_python/models/patchimportcontentvalidationop.py +46 -0
  212. egain_api_python/models/personalization.py +67 -0
  213. egain_api_python/models/phone.py +21 -0
  214. egain_api_python/models/portal.py +102 -0
  215. egain_api_python/models/portalresult.py +28 -0
  216. egain_api_python/models/portalsettings.py +398 -0
  217. egain_api_python/models/post_portalid_answersop.py +88 -0
  218. egain_api_python/models/post_portalid_retrieveop.py +88 -0
  219. egain_api_python/models/profile.py +26 -0
  220. egain_api_python/models/profileresult.py +24 -0
  221. egain_api_python/models/publishprofile.py +30 -0
  222. egain_api_python/models/publishview.py +38 -0
  223. egain_api_python/models/question.py +101 -0
  224. egain_api_python/models/questionandanswer.py +26 -0
  225. egain_api_python/models/quickpickrating.py +32 -0
  226. egain_api_python/models/quickpickresult.py +38 -0
  227. egain_api_python/models/quickpickresults.py +28 -0
  228. egain_api_python/models/ratearticleop.py +71 -0
  229. egain_api_python/models/referenceresponse.py +80 -0
  230. egain_api_python/models/rejectghsolutionop.py +52 -0
  231. egain_api_python/models/relatedquestions.py +28 -0
  232. egain_api_python/models/resourcetype_parameter.py +10 -0
  233. egain_api_python/models/restorequickpickop.py +63 -0
  234. egain_api_python/models/retrieverequest.py +47 -0
  235. egain_api_python/models/retrieveresponse.py +96 -0
  236. egain_api_python/models/role.py +26 -0
  237. egain_api_python/models/roletemplate.py +25 -0
  238. egain_api_python/models/schemas_answer.py +94 -0
  239. egain_api_python/models/schemas_customattribute.py +35 -0
  240. egain_api_python/models/schemas_link.py +27 -0
  241. egain_api_python/models/schemas_tag.py +21 -0
  242. egain_api_python/models/schemas_tagcategory.py +75 -0
  243. egain_api_python/models/schemas_taggroup.py +31 -0
  244. egain_api_python/models/schemas_tags.py +19 -0
  245. egain_api_python/models/schemas_wserrorcommon.py +17 -0
  246. egain_api_python/models/searchfilterattribute.py +61 -0
  247. egain_api_python/models/searchpriortoescalationop.py +108 -0
  248. egain_api_python/models/searchresult.py +101 -0
  249. egain_api_python/models/searchsuggestionop.py +93 -0
  250. egain_api_python/models/security.py +25 -0
  251. egain_api_python/models/selectuserprofileop.py +44 -0
  252. egain_api_python/models/sessioncontextvariable.py +17 -0
  253. egain_api_python/models/shorturl.py +32 -0
  254. egain_api_python/models/sortidname.py +10 -0
  255. egain_api_python/models/sortidnamedepartment.py +11 -0
  256. egain_api_python/models/stage.py +26 -0
  257. egain_api_python/models/startcustomerescalationop.py +66 -0
  258. egain_api_python/models/startescalationrequest.py +94 -0
  259. egain_api_python/models/startghsearchop.py +74 -0
  260. egain_api_python/models/startquestionandanswer.py +26 -0
  261. egain_api_python/models/stepghsearchop.py +62 -0
  262. egain_api_python/models/stringattributevalue.py +30 -0
  263. egain_api_python/models/structuredauthoringfields.py +33 -0
  264. egain_api_python/models/subscribearticleop.py +40 -0
  265. egain_api_python/models/suggestion.py +190 -0
  266. egain_api_python/models/suggestionadditionalattributes.py +11 -0
  267. egain_api_python/models/suggestionattachment.py +46 -0
  268. egain_api_python/models/suggestions.py +28 -0
  269. egain_api_python/models/tag.py +17 -0
  270. egain_api_python/models/tagcategoriesforinterest.py +22 -0
  271. egain_api_python/models/tagcategory.py +34 -0
  272. egain_api_python/models/taggroup.py +17 -0
  273. egain_api_python/models/taggroups.py +20 -0
  274. egain_api_python/models/tags.py +17 -0
  275. egain_api_python/models/topic.py +113 -0
  276. egain_api_python/models/topicadditionalattributes.py +20 -0
  277. egain_api_python/models/topicaisearchresult.py +67 -0
  278. egain_api_python/models/topicbreadcrumb.py +24 -0
  279. egain_api_python/models/topicresult.py +26 -0
  280. egain_api_python/models/topicsummary.py +31 -0
  281. egain_api_python/models/topictreenode.py +27 -0
  282. egain_api_python/models/topictreeresult.py +28 -0
  283. egain_api_python/models/unsubscribearticleop.py +55 -0
  284. egain_api_python/models/uploadattachmentop.py +36 -0
  285. egain_api_python/models/userdetails.py +44 -0
  286. egain_api_python/models/userprofile.py +33 -0
  287. egain_api_python/models/userprofiles.py +21 -0
  288. egain_api_python/models/userview.py +33 -0
  289. egain_api_python/models/validateimportcontent.py +58 -0
  290. egain_api_python/models/virtualcase.py +52 -0
  291. egain_api_python/models/workflow.py +21 -0
  292. egain_api_python/models/workflowmilestone.py +11 -0
  293. egain_api_python/models/wserrorcommon.py +17 -0
  294. egain_api_python/populararticles.py +287 -0
  295. egain_api_python/portal_article.py +4935 -0
  296. egain_api_python/portal_attachment.py +494 -0
  297. egain_api_python/portal_bookmark.py +707 -0
  298. egain_api_python/portal_sdk.py +88 -0
  299. egain_api_python/portal_suggestion.py +2283 -0
  300. egain_api_python/portal_topic.py +975 -0
  301. egain_api_python/portal_userdetails.py +211 -0
  302. egain_api_python/portal_userprofile.py +431 -0
  303. egain_api_python/py.typed +1 -0
  304. egain_api_python/retrieve.py +265 -0
  305. egain_api_python/sdk.py +216 -0
  306. egain_api_python/sdkconfiguration.py +50 -0
  307. egain_api_python/search.py +251 -0
  308. egain_api_python/types/__init__.py +21 -0
  309. egain_api_python/types/basemodel.py +39 -0
  310. egain_api_python/usermilestones.py +219 -0
  311. egain_api_python/utils/__init__.py +200 -0
  312. egain_api_python/utils/annotations.py +79 -0
  313. egain_api_python/utils/datetimes.py +23 -0
  314. egain_api_python/utils/enums.py +74 -0
  315. egain_api_python/utils/eventstreaming.py +248 -0
  316. egain_api_python/utils/forms.py +223 -0
  317. egain_api_python/utils/headers.py +136 -0
  318. egain_api_python/utils/logger.py +27 -0
  319. egain_api_python/utils/metadata.py +118 -0
  320. egain_api_python/utils/queryparams.py +205 -0
  321. egain_api_python/utils/requestbodies.py +66 -0
  322. egain_api_python/utils/retries.py +217 -0
  323. egain_api_python/utils/security.py +192 -0
  324. egain_api_python/utils/serializers.py +249 -0
  325. egain_api_python/utils/unmarshal_json_response.py +24 -0
  326. egain_api_python/utils/url.py +155 -0
  327. egain_api_python/utils/values.py +137 -0
  328. egain_api_python-0.1.1.dist-info/METADATA +827 -0
  329. egain_api_python-0.1.1.dist-info/RECORD +332 -0
  330. egain_api_python-0.1.1.dist-info/WHEEL +5 -0
  331. egain_api_python-0.1.1.dist-info/licenses/LICENSE +21 -0
  332. egain_api_python-0.1.1.dist-info/top_level.txt +1 -0
@@ -0,0 +1,158 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .action import Action, ActionTypedDict
5
+ from .casequestiondetail import CaseQuestionDetail, CaseQuestionDetailTypedDict
6
+ from .createdby import CreatedBy, CreatedByTypedDict
7
+ from .link import Link, LinkTypedDict
8
+ from .metadata import Metadata, MetadataTypedDict
9
+ from .modifiedby import ModifiedBy, ModifiedByTypedDict
10
+ from egain_api_python.types import BaseModel
11
+ import pydantic
12
+ from typing import List, Literal, Optional
13
+ from typing_extensions import Annotated, NotRequired, TypedDict
14
+
15
+
16
+ ThresholdType = Literal[
17
+ "Default",
18
+ "Custom",
19
+ ]
20
+ r"""Threshold type indicating if thresholdValue is default or custom."""
21
+
22
+
23
+ CaseType = Literal[
24
+ "Control",
25
+ "Content",
26
+ ]
27
+ r"""Type of the case. Control or Content type"""
28
+
29
+
30
+ class CaseTypedDict(TypedDict):
31
+ r"""Success"""
32
+
33
+ id: NotRequired[str]
34
+ r"""The numerical ID of the case."""
35
+ short_name: NotRequired[str]
36
+ r"""short name of the case."""
37
+ title: NotRequired[str]
38
+ r"""title of the case"""
39
+ comments: NotRequired[str]
40
+ r"""comments on the case"""
41
+ profile_id: NotRequired[str]
42
+ r"""The ID of the guided help profile.<br>
43
+ 1 will always be the **system profile**.
44
+
45
+ """
46
+ release_id: NotRequired[str]
47
+ r"""The numerical ID of the Casebase Release in which case in created"""
48
+ cluster_id: NotRequired[str]
49
+ r"""ID of the cluster in which case is created"""
50
+ created_date: NotRequired[str]
51
+ r"""The date on which the Case was created."""
52
+ created_by: NotRequired[CreatedByTypedDict]
53
+ modified_by: NotRequired[ModifiedByTypedDict]
54
+ modified_date: NotRequired[str]
55
+ r"""The date on which the Case was last modified."""
56
+ is_visible: NotRequired[bool]
57
+ r"""Flag indicating if the case is visible"""
58
+ reject_count: NotRequired[int]
59
+ r"""number of times case was rejected."""
60
+ accept_count: NotRequired[int]
61
+ r"""number of times case was accepted."""
62
+ action: NotRequired[List[ActionTypedDict]]
63
+ r"""actions in the case"""
64
+ metadata: NotRequired[List[MetadataTypedDict]]
65
+ r"""Metadata of the case"""
66
+ threshold_value: NotRequired[int]
67
+ r"""Threshold value of the case"""
68
+ threshold_type: NotRequired[ThresholdType]
69
+ r"""Threshold type indicating if thresholdValue is default or custom."""
70
+ threshold_value_from_cluster: NotRequired[float]
71
+ r"""Threshold value of the cluster in which case is created"""
72
+ case_type: NotRequired[CaseType]
73
+ r"""Type of the case. Control or Content type"""
74
+ question_detail: NotRequired[List[CaseQuestionDetailTypedDict]]
75
+ r"""Questions in the case"""
76
+ link: NotRequired[LinkTypedDict]
77
+ r"""Defines the relationship between this resource and another object."""
78
+
79
+
80
+ class Case(BaseModel):
81
+ r"""Success"""
82
+
83
+ id: Optional[str] = None
84
+ r"""The numerical ID of the case."""
85
+
86
+ short_name: Annotated[Optional[str], pydantic.Field(alias="shortName")] = None
87
+ r"""short name of the case."""
88
+
89
+ title: Optional[str] = None
90
+ r"""title of the case"""
91
+
92
+ comments: Optional[str] = None
93
+ r"""comments on the case"""
94
+
95
+ profile_id: Annotated[Optional[str], pydantic.Field(alias="profileId")] = None
96
+ r"""The ID of the guided help profile.<br>
97
+ 1 will always be the **system profile**.
98
+
99
+ """
100
+
101
+ release_id: Annotated[Optional[str], pydantic.Field(alias="releaseId")] = None
102
+ r"""The numerical ID of the Casebase Release in which case in created"""
103
+
104
+ cluster_id: Annotated[Optional[str], pydantic.Field(alias="clusterId")] = None
105
+ r"""ID of the cluster in which case is created"""
106
+
107
+ created_date: Annotated[Optional[str], pydantic.Field(alias="createdDate")] = None
108
+ r"""The date on which the Case was created."""
109
+
110
+ created_by: Annotated[Optional[CreatedBy], pydantic.Field(alias="createdBy")] = None
111
+
112
+ modified_by: Annotated[Optional[ModifiedBy], pydantic.Field(alias="modifiedBy")] = (
113
+ None
114
+ )
115
+
116
+ modified_date: Annotated[Optional[str], pydantic.Field(alias="modifiedDate")] = None
117
+ r"""The date on which the Case was last modified."""
118
+
119
+ is_visible: Annotated[Optional[bool], pydantic.Field(alias="isVisible")] = None
120
+ r"""Flag indicating if the case is visible"""
121
+
122
+ reject_count: Annotated[Optional[int], pydantic.Field(alias="rejectCount")] = None
123
+ r"""number of times case was rejected."""
124
+
125
+ accept_count: Annotated[Optional[int], pydantic.Field(alias="acceptCount")] = None
126
+ r"""number of times case was accepted."""
127
+
128
+ action: Optional[List[Action]] = None
129
+ r"""actions in the case"""
130
+
131
+ metadata: Optional[List[Metadata]] = None
132
+ r"""Metadata of the case"""
133
+
134
+ threshold_value: Annotated[
135
+ Optional[int], pydantic.Field(alias="thresholdValue")
136
+ ] = None
137
+ r"""Threshold value of the case"""
138
+
139
+ threshold_type: Annotated[
140
+ Optional[ThresholdType], pydantic.Field(alias="thresholdType")
141
+ ] = None
142
+ r"""Threshold type indicating if thresholdValue is default or custom."""
143
+
144
+ threshold_value_from_cluster: Annotated[
145
+ Optional[float], pydantic.Field(alias="thresholdValueFromCluster")
146
+ ] = None
147
+ r"""Threshold value of the cluster in which case is created"""
148
+
149
+ case_type: Annotated[Optional[CaseType], pydantic.Field(alias="caseType")] = None
150
+ r"""Type of the case. Control or Content type"""
151
+
152
+ question_detail: Annotated[
153
+ Optional[List[CaseQuestionDetail]], pydantic.Field(alias="questionDetail")
154
+ ] = None
155
+ r"""Questions in the case"""
156
+
157
+ link: Optional[Link] = None
158
+ r"""Defines the relationship between this resource and another object."""
@@ -0,0 +1,11 @@
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
+ CaseAdditionalAttributes = Literal[
8
+ "questionDetail",
9
+ "actions",
10
+ "all",
11
+ ]
@@ -0,0 +1,21 @@
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 CaseAnswerTypedDict(TypedDict):
10
+ id: NotRequired[str]
11
+ r"""ID of the answer"""
12
+ text: NotRequired[str]
13
+ r"""Text of the answer"""
14
+
15
+
16
+ class CaseAnswer(BaseModel):
17
+ id: Optional[str] = None
18
+ r"""ID of the answer"""
19
+
20
+ text: Optional[str] = None
21
+ r"""Text of the answer"""
@@ -0,0 +1,67 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .casebasesearchsettings import (
5
+ CasebaseSearchSettings,
6
+ CasebaseSearchSettingsTypedDict,
7
+ )
8
+ from .kblanguages import KbLanguages, KbLanguagesTypedDict
9
+ from .link import Link, LinkTypedDict
10
+ from .profileresult import ProfileResult, ProfileResultTypedDict
11
+ from egain_api_python.types import BaseModel
12
+ import pydantic
13
+ from typing import List, Literal, Optional
14
+ from typing_extensions import Annotated, NotRequired, TypedDict
15
+
16
+
17
+ CasebaseStatus = Literal[
18
+ "author",
19
+ "live",
20
+ "qa",
21
+ ]
22
+ r"""status of the Casebase"""
23
+
24
+
25
+ class CasebaseTypedDict(TypedDict):
26
+ casebase_id: NotRequired[str]
27
+ r"""The numerical ID of the Casebase."""
28
+ name: NotRequired[str]
29
+ r"""name of the Casebase Release."""
30
+ id: NotRequired[str]
31
+ r"""The numerical ID of the Casebase Release."""
32
+ status: NotRequired[CasebaseStatus]
33
+ r"""status of the Casebase"""
34
+ profiles: NotRequired[List[ProfileResultTypedDict]]
35
+ r"""All Guided Help Profiles associated with Casebase release"""
36
+ search_settings: NotRequired[CasebaseSearchSettingsTypedDict]
37
+ languages: NotRequired[KbLanguagesTypedDict]
38
+ r"""KB languages"""
39
+ link: NotRequired[LinkTypedDict]
40
+ r"""Defines the relationship between this resource and another object."""
41
+
42
+
43
+ class Casebase(BaseModel):
44
+ casebase_id: Annotated[Optional[str], pydantic.Field(alias="casebaseId")] = None
45
+ r"""The numerical ID of the Casebase."""
46
+
47
+ name: Optional[str] = None
48
+ r"""name of the Casebase Release."""
49
+
50
+ id: Optional[str] = None
51
+ r"""The numerical ID of the Casebase Release."""
52
+
53
+ status: Optional[CasebaseStatus] = None
54
+ r"""status of the Casebase"""
55
+
56
+ profiles: Optional[List[ProfileResult]] = None
57
+ r"""All Guided Help Profiles associated with Casebase release"""
58
+
59
+ search_settings: Annotated[
60
+ Optional[CasebaseSearchSettings], pydantic.Field(alias="searchSettings")
61
+ ] = None
62
+
63
+ languages: Optional[KbLanguages] = None
64
+ r"""KB languages"""
65
+
66
+ link: Optional[Link] = None
67
+ r"""Defines the relationship between this resource and another object."""
@@ -0,0 +1,28 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .casebase import Casebase, CasebaseTypedDict
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 CasebaseResultTypedDict(TypedDict):
13
+ r"""Success"""
14
+
15
+ casebase: NotRequired[List[CasebaseTypedDict]]
16
+ r"""Casebase releases"""
17
+ pagination_info: NotRequired[PaginationInfoTypedDict]
18
+
19
+
20
+ class CasebaseResult(BaseModel):
21
+ r"""Success"""
22
+
23
+ casebase: Optional[List[Casebase]] = None
24
+ r"""Casebase releases"""
25
+
26
+ pagination_info: Annotated[
27
+ Optional[PaginationInfo], pydantic.Field(alias="paginationInfo")
28
+ ] = None
@@ -0,0 +1,26 @@
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 Optional
7
+ from typing_extensions import Annotated, NotRequired, TypedDict
8
+
9
+
10
+ class CasebaseSearchSettingsTypedDict(TypedDict):
11
+ close_session_on_accept: NotRequired[bool]
12
+ r"""indicates whether to close the Guided Help session upon acceptance of answer"""
13
+ close_session_on_reject: NotRequired[bool]
14
+ r"""indicates wheather to reject the Guided Helo session upon rejection of answer"""
15
+
16
+
17
+ class CasebaseSearchSettings(BaseModel):
18
+ close_session_on_accept: Annotated[
19
+ Optional[bool], pydantic.Field(alias="closeSessionOnAccept")
20
+ ] = None
21
+ r"""indicates whether to close the Guided Help session upon acceptance of answer"""
22
+
23
+ close_session_on_reject: Annotated[
24
+ Optional[bool], pydantic.Field(alias="closeSessionOnReject")
25
+ ] = None
26
+ r"""indicates wheather to reject the Guided Helo session upon rejection of answer"""
@@ -0,0 +1,74 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .createdby import CreatedBy, CreatedByTypedDict
5
+ from .link import Link, LinkTypedDict
6
+ from .modifiedby import ModifiedBy, ModifiedByTypedDict
7
+ from egain_api_python.types import BaseModel
8
+ import pydantic
9
+ from typing import Optional
10
+ from typing_extensions import Annotated, NotRequired, TypedDict
11
+
12
+
13
+ class CaseListResultTypedDict(TypedDict):
14
+ id: NotRequired[str]
15
+ r"""The numerical ID of the case."""
16
+ short_name: NotRequired[str]
17
+ r"""short name of the case."""
18
+ title: NotRequired[str]
19
+ r"""title of the case"""
20
+ profile_id: NotRequired[str]
21
+ r"""The ID of the guided help profile.<br>
22
+ 1 will always be the **system profile**.
23
+
24
+ """
25
+ release_id: NotRequired[str]
26
+ r"""The numerical ID of the Casebase Release in which case in created"""
27
+ cluster_id: NotRequired[str]
28
+ r"""ID of the cluster in which case is created"""
29
+ created_date: NotRequired[str]
30
+ r"""The date on which the Case was created."""
31
+ created_by: NotRequired[CreatedByTypedDict]
32
+ modified_by: NotRequired[ModifiedByTypedDict]
33
+ modified_date: NotRequired[str]
34
+ r"""The date on which the Case was last modified."""
35
+ link: NotRequired[LinkTypedDict]
36
+ r"""Defines the relationship between this resource and another object."""
37
+
38
+
39
+ class CaseListResult(BaseModel):
40
+ id: Optional[str] = None
41
+ r"""The numerical ID of the case."""
42
+
43
+ short_name: Annotated[Optional[str], pydantic.Field(alias="shortName")] = None
44
+ r"""short name of the case."""
45
+
46
+ title: Optional[str] = None
47
+ r"""title of the case"""
48
+
49
+ profile_id: Annotated[Optional[str], pydantic.Field(alias="profileId")] = None
50
+ r"""The ID of the guided help profile.<br>
51
+ 1 will always be the **system profile**.
52
+
53
+ """
54
+
55
+ release_id: Annotated[Optional[str], pydantic.Field(alias="releaseId")] = None
56
+ r"""The numerical ID of the Casebase Release in which case in created"""
57
+
58
+ cluster_id: Annotated[Optional[str], pydantic.Field(alias="clusterId")] = None
59
+ r"""ID of the cluster in which case is created"""
60
+
61
+ created_date: Annotated[Optional[str], pydantic.Field(alias="createdDate")] = None
62
+ r"""The date on which the Case was created."""
63
+
64
+ created_by: Annotated[Optional[CreatedBy], pydantic.Field(alias="createdBy")] = None
65
+
66
+ modified_by: Annotated[Optional[ModifiedBy], pydantic.Field(alias="modifiedBy")] = (
67
+ None
68
+ )
69
+
70
+ modified_date: Annotated[Optional[str], pydantic.Field(alias="modifiedDate")] = None
71
+ r"""The date on which the Case was last modified."""
72
+
73
+ link: Optional[Link] = None
74
+ r"""Defines the relationship between this resource and another object."""
@@ -0,0 +1,28 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .caselistresult import CaseListResult, CaseListResultTypedDict
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 CaseListResultsTypedDict(TypedDict):
13
+ r"""Success"""
14
+
15
+ case: NotRequired[List[CaseListResultTypedDict]]
16
+ r"""Cases"""
17
+ pagination_info: NotRequired[PaginationInfoTypedDict]
18
+
19
+
20
+ class CaseListResults(BaseModel):
21
+ r"""Success"""
22
+
23
+ case: Optional[List[CaseListResult]] = None
24
+ r"""Cases"""
25
+
26
+ pagination_info: Annotated[
27
+ Optional[PaginationInfo], pydantic.Field(alias="paginationInfo")
28
+ ] = None
@@ -0,0 +1,16 @@
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 CaseQuestionTypedDict(TypedDict):
10
+ id: NotRequired[str]
11
+ r"""The numerical ID of the question"""
12
+
13
+
14
+ class CaseQuestion(BaseModel):
15
+ id: Optional[str] = None
16
+ r"""The numerical ID of the question"""
@@ -0,0 +1,29 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .caseanswer import CaseAnswer, CaseAnswerTypedDict
5
+ from .casequestion import CaseQuestion, CaseQuestionTypedDict
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 CaseQuestionDetailTypedDict(TypedDict):
13
+ question: CaseQuestionTypedDict
14
+ answer: List[CaseAnswerTypedDict]
15
+ r"""Answer of the question"""
16
+ scoring_value: NotRequired[float]
17
+ r"""Weightage of the question"""
18
+
19
+
20
+ class CaseQuestionDetail(BaseModel):
21
+ question: CaseQuestion
22
+
23
+ answer: List[CaseAnswer]
24
+ r"""Answer of the question"""
25
+
26
+ scoring_value: Annotated[Optional[float], pydantic.Field(alias="scoringValue")] = (
27
+ None
28
+ )
29
+ r"""Weightage of the question"""
@@ -0,0 +1,80 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .action import Action, ActionTypedDict
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
+ CaseSearchType = Literal[
13
+ "Control",
14
+ "Article",
15
+ ]
16
+ r"""The type of the action"""
17
+
18
+
19
+ class CaseSearchTypedDict(TypedDict):
20
+ accept_count: NotRequired[int]
21
+ r"""The number of times action was accepted"""
22
+ action: NotRequired[List[ActionTypedDict]]
23
+ r"""actions in search"""
24
+ additional_info: NotRequired[bool]
25
+ r"""This field indicates if action has additional information"""
26
+ metadata: NotRequired[List[MetadataTypedDict]]
27
+ r"""Metadata in search"""
28
+ case_id: NotRequired[str]
29
+ r"""case Id"""
30
+ passed_threshold_value: NotRequired[bool]
31
+ r"""This field 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"""The short name"""
36
+ score: NotRequired[float]
37
+ r"""The score of the case"""
38
+ title: NotRequired[str]
39
+ r"""The title of the case"""
40
+ type: NotRequired[CaseSearchType]
41
+ r"""The type of the action"""
42
+
43
+
44
+ class CaseSearch(BaseModel):
45
+ accept_count: Annotated[Optional[int], pydantic.Field(alias="acceptCount")] = None
46
+ r"""The number of times action was accepted"""
47
+
48
+ action: Optional[List[Action]] = None
49
+ r"""actions in search"""
50
+
51
+ additional_info: Annotated[
52
+ Optional[bool], pydantic.Field(alias="additionalInfo")
53
+ ] = None
54
+ r"""This field indicates if action has additional information"""
55
+
56
+ metadata: Optional[List[Metadata]] = None
57
+ r"""Metadata in search"""
58
+
59
+ case_id: Annotated[Optional[str], pydantic.Field(alias="caseId")] = None
60
+ r"""case Id"""
61
+
62
+ passed_threshold_value: Annotated[
63
+ Optional[bool], pydantic.Field(alias="passedThresholdValue")
64
+ ] = None
65
+ r"""This field indicates if the case has passed the threshold value"""
66
+
67
+ reject_count: Annotated[Optional[int], pydantic.Field(alias="rejectCount")] = None
68
+ r"""The number of times action was rejected"""
69
+
70
+ short_name: Annotated[Optional[str], pydantic.Field(alias="shortName")] = None
71
+ r"""The short name"""
72
+
73
+ score: Optional[float] = None
74
+ r"""The score of the case"""
75
+
76
+ title: Optional[str] = None
77
+ r"""The title of the case"""
78
+
79
+ type: Optional[CaseSearchType] = None
80
+ r"""The type of the action"""
@@ -0,0 +1,16 @@
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 ClusterIDTypedDict(TypedDict):
10
+ id: NotRequired[str]
11
+ r"""The numerical Cluster ID"""
12
+
13
+
14
+ class ClusterID(BaseModel):
15
+ id: Optional[str] = None
16
+ r"""The numerical Cluster ID"""
@@ -0,0 +1,37 @@
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 Optional
7
+ from typing_extensions import Annotated, NotRequired, TypedDict
8
+
9
+
10
+ class ClusterResultTypedDict(TypedDict):
11
+ id: NotRequired[str]
12
+ r"""id of the cluster"""
13
+ short_name: NotRequired[str]
14
+ r"""short name of the cluster"""
15
+ name: NotRequired[str]
16
+ r"""name of the cluster"""
17
+ startup: NotRequired[bool]
18
+ r"""indicates if the cluster is startup cluster of the release"""
19
+ depth: NotRequired[int]
20
+ r"""depth of the cluster"""
21
+
22
+
23
+ class ClusterResult(BaseModel):
24
+ id: Optional[str] = None
25
+ r"""id of the cluster"""
26
+
27
+ short_name: Annotated[Optional[str], pydantic.Field(alias="shortName")] = None
28
+ r"""short name of the cluster"""
29
+
30
+ name: Optional[str] = None
31
+ r"""name of the cluster"""
32
+
33
+ startup: Optional[bool] = None
34
+ r"""indicates if the cluster is startup cluster of the release"""
35
+
36
+ depth: Optional[int] = None
37
+ r"""depth of the cluster"""
@@ -0,0 +1,28 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .clusterresult import ClusterResult, ClusterResultTypedDict
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 ClusterResultsTypedDict(TypedDict):
13
+ r"""Success"""
14
+
15
+ cluster: NotRequired[List[ClusterResultTypedDict]]
16
+ r"""Clusters"""
17
+ pagination_info: NotRequired[PaginationInfoTypedDict]
18
+
19
+
20
+ class ClusterResults(BaseModel):
21
+ r"""Success"""
22
+
23
+ cluster: Optional[List[ClusterResult]] = None
24
+ r"""Clusters"""
25
+
26
+ pagination_info: Annotated[
27
+ Optional[PaginationInfo], pydantic.Field(alias="paginationInfo")
28
+ ] = None
@@ -0,0 +1,33 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .createdby import CreatedBy, CreatedByTypedDict
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 CommentTypedDict(TypedDict):
12
+ r"""This schema contains the definition of a comment object."""
13
+
14
+ id: NotRequired[str]
15
+ r"""The ID of the comment."""
16
+ content: NotRequired[str]
17
+ r"""The content of the comment."""
18
+ created_by: NotRequired[CreatedByTypedDict]
19
+ created_date: NotRequired[str]
20
+
21
+
22
+ class Comment(BaseModel):
23
+ r"""This schema contains the definition of a comment object."""
24
+
25
+ id: Optional[str] = None
26
+ r"""The ID of the comment."""
27
+
28
+ content: Optional[str] = None
29
+ r"""The content of the comment."""
30
+
31
+ created_by: Annotated[Optional[CreatedBy], pydantic.Field(alias="createdBy")] = None
32
+
33
+ created_date: Annotated[Optional[str], pydantic.Field(alias="createdDate")] = None