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,159 @@
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 .complianceforarticle import ComplianceForArticle, ComplianceForArticleTypedDict
6
+ from .createdby import CreatedBy, CreatedByTypedDict
7
+ from .customattribute import CustomAttribute, CustomAttributeTypedDict
8
+ from .languagecode import LanguageCode
9
+ from .link import Link, LinkTypedDict
10
+ from .modifiedby import ModifiedBy, ModifiedByTypedDict
11
+ from .ownedby import OwnedBy, OwnedByTypedDict
12
+ from .personalization import Personalization, PersonalizationTypedDict
13
+ from .topicbreadcrumb import TopicBreadcrumb, TopicBreadcrumbTypedDict
14
+ from .workflow import Workflow, WorkflowTypedDict
15
+ from egain_api_python.types import BaseModel
16
+ import pydantic
17
+ from typing import List, Optional
18
+ from typing_extensions import Annotated, NotRequired, TypedDict
19
+
20
+
21
+ class ArticleResultTypedDict(TypedDict):
22
+ r"""Article search result, a subset of Article that does not contain content and contentText."""
23
+
24
+ id: NotRequired[str]
25
+ r"""The ID of the Article.<br>An Article ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits."""
26
+ article_type: NotRequired[ArticleTypeTypedDict]
27
+ r"""The type of the Article and its attributes."""
28
+ article_keywords: NotRequired[str]
29
+ r"""A comma-separated list of keywords associated with this Article. 1 KB max size limit."""
30
+ article_summary: NotRequired[str]
31
+ r"""A brief summary of the Article, provided as metadata. 1 KB max size limit."""
32
+ average_rating: NotRequired[float]
33
+ r"""The average rating of the Article."""
34
+ created_by: NotRequired[CreatedByTypedDict]
35
+ modified_by: NotRequired[ModifiedByTypedDict]
36
+ owned_by: NotRequired[OwnedByTypedDict]
37
+ created_date: NotRequired[str]
38
+ custom_attributes: NotRequired[List[CustomAttributeTypedDict]]
39
+ r"""A list of custom attributes."""
40
+ description: NotRequired[str]
41
+ r"""A description of the Article. The maximum allowed Article description size is 1 KB."""
42
+ has_attachments: NotRequired[bool]
43
+ r"""Indicates whether the Article has any attachments."""
44
+ is_subscribed: NotRequired[bool]
45
+ r"""Indicates whether the Article is subscribed for notifications."""
46
+ modified_date: NotRequired[str]
47
+ r"""The date on which the Article was last modified."""
48
+ language_code: NotRequired[LanguageCode]
49
+ r"""Language code of the resource's language."""
50
+ link: NotRequired[LinkTypedDict]
51
+ r"""Defines the relationship between this resource and another object."""
52
+ image_url: NotRequired[str]
53
+ r"""The URL of the image that is present in the Article version. It is used as the thumbnail image for the Article."""
54
+ name: NotRequired[str]
55
+ r"""The name of the Article."""
56
+ times_rated: NotRequired[int]
57
+ r"""The number of times that this Article has been rated."""
58
+ topic_breadcrumb: NotRequired[List[TopicBreadcrumbTypedDict]]
59
+ r"""A list of topics from the root topic to this Article. There may be multiple paths."""
60
+ version_id: NotRequired[str]
61
+ r"""The ID of this version of the Article."""
62
+ workflow: NotRequired[WorkflowTypedDict]
63
+ r"""The Article's workflow."""
64
+ compliance: NotRequired[ComplianceForArticleTypedDict]
65
+ r"""This schema contains the compliance details for an Article."""
66
+ personalization: NotRequired[PersonalizationTypedDict]
67
+ r"""Personalization allows the filtering of search results and controls the access to articles and article editions."""
68
+
69
+
70
+ class ArticleResult(BaseModel):
71
+ r"""Article search result, a subset of Article that does not contain content and contentText."""
72
+
73
+ id: Optional[str] = None
74
+ r"""The ID of the Article.<br>An Article ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits."""
75
+
76
+ article_type: Annotated[
77
+ Optional[ArticleType], pydantic.Field(alias="articleType")
78
+ ] = None
79
+ r"""The type of the Article and its attributes."""
80
+
81
+ article_keywords: Annotated[
82
+ Optional[str], pydantic.Field(alias="articleKeywords")
83
+ ] = None
84
+ r"""A comma-separated list of keywords associated with this Article. 1 KB max size limit."""
85
+
86
+ article_summary: Annotated[
87
+ Optional[str], pydantic.Field(alias="articleSummary")
88
+ ] = None
89
+ r"""A brief summary of the Article, provided as metadata. 1 KB max size limit."""
90
+
91
+ average_rating: Annotated[
92
+ Optional[float], pydantic.Field(alias="averageRating")
93
+ ] = None
94
+ r"""The average rating of the Article."""
95
+
96
+ created_by: Annotated[Optional[CreatedBy], pydantic.Field(alias="createdBy")] = None
97
+
98
+ modified_by: Annotated[Optional[ModifiedBy], pydantic.Field(alias="modifiedBy")] = (
99
+ None
100
+ )
101
+
102
+ owned_by: Annotated[Optional[OwnedBy], pydantic.Field(alias="ownedBy")] = None
103
+
104
+ created_date: Annotated[Optional[str], pydantic.Field(alias="createdDate")] = None
105
+
106
+ custom_attributes: Annotated[
107
+ Optional[List[CustomAttribute]], pydantic.Field(alias="customAttributes")
108
+ ] = None
109
+ r"""A list of custom attributes."""
110
+
111
+ description: Optional[str] = None
112
+ r"""A description of the Article. The maximum allowed Article description size is 1 KB."""
113
+
114
+ has_attachments: Annotated[
115
+ Optional[bool], pydantic.Field(alias="hasAttachments")
116
+ ] = None
117
+ r"""Indicates whether the Article has any attachments."""
118
+
119
+ is_subscribed: Annotated[Optional[bool], pydantic.Field(alias="isSubscribed")] = (
120
+ None
121
+ )
122
+ r"""Indicates whether the Article is subscribed for notifications."""
123
+
124
+ modified_date: Annotated[Optional[str], pydantic.Field(alias="modifiedDate")] = None
125
+ r"""The date on which the Article was last modified."""
126
+
127
+ language_code: Annotated[
128
+ Optional[LanguageCode], pydantic.Field(alias="languageCode")
129
+ ] = None
130
+ r"""Language code of the resource's language."""
131
+
132
+ link: Optional[Link] = None
133
+ r"""Defines the relationship between this resource and another object."""
134
+
135
+ image_url: Annotated[Optional[str], pydantic.Field(alias="imageURL")] = None
136
+ r"""The URL of the image that is present in the Article version. It is used as the thumbnail image for the Article."""
137
+
138
+ name: Optional[str] = None
139
+ r"""The name of the Article."""
140
+
141
+ times_rated: Annotated[Optional[int], pydantic.Field(alias="timesRated")] = None
142
+ r"""The number of times that this Article has been rated."""
143
+
144
+ topic_breadcrumb: Annotated[
145
+ Optional[List[TopicBreadcrumb]], pydantic.Field(alias="topicBreadcrumb")
146
+ ] = None
147
+ r"""A list of topics from the root topic to this Article. There may be multiple paths."""
148
+
149
+ version_id: Annotated[Optional[str], pydantic.Field(alias="versionId")] = None
150
+ r"""The ID of this version of the Article."""
151
+
152
+ workflow: Optional[Workflow] = None
153
+ r"""The Article's workflow."""
154
+
155
+ compliance: Optional[ComplianceForArticle] = None
156
+ r"""This schema contains the compliance details for an Article."""
157
+
158
+ personalization: Optional[Personalization] = None
159
+ r"""Personalization allows the filtering of search results and controls the access to articles and article editions."""
@@ -0,0 +1,22 @@
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
+ ArticleResultAdditionalAttributes = Literal[
8
+ "averageRating",
9
+ "customAttributes",
10
+ "description",
11
+ "articleSummary",
12
+ "imageURL",
13
+ "isSubscribed",
14
+ "timesRated",
15
+ "topicBreadcrumb",
16
+ "ownedBy",
17
+ "ownedBy.userName",
18
+ "workflow",
19
+ "compliance",
20
+ "personalization",
21
+ "all",
22
+ ]
@@ -0,0 +1,32 @@
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 .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 ArticleResultsTypedDict(TypedDict):
13
+ r"""One or more instances of an Article result."""
14
+
15
+ articles: NotRequired[List[ArticleResultTypedDict]]
16
+ r"""Article details
17
+
18
+ """
19
+ pagination_info: NotRequired[PaginationInfoTypedDict]
20
+
21
+
22
+ class ArticleResults(BaseModel):
23
+ r"""One or more instances of an Article result."""
24
+
25
+ articles: Optional[List[ArticleResult]] = None
26
+ r"""Article details
27
+
28
+ """
29
+
30
+ pagination_info: Annotated[
31
+ Optional[PaginationInfo], pydantic.Field(alias="paginationInfo")
32
+ ] = None
@@ -0,0 +1,243 @@
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 .complianceforarticle import ComplianceForArticle, ComplianceForArticleTypedDict
6
+ from .createdby import CreatedBy, CreatedByTypedDict
7
+ from .customattribute import CustomAttribute, CustomAttributeTypedDict
8
+ from .edition import Edition, EditionTypedDict
9
+ from .languagecode import LanguageCode
10
+ from .link import Link, LinkTypedDict
11
+ from .modifiedby import ModifiedBy, ModifiedByTypedDict
12
+ from .ownedby import OwnedBy, OwnedByTypedDict
13
+ from .personalization import Personalization, PersonalizationTypedDict
14
+ from .topicbreadcrumb import TopicBreadcrumb, TopicBreadcrumbTypedDict
15
+ from .workflow import Workflow, WorkflowTypedDict
16
+ from egain_api_python.types import BaseModel
17
+ import pydantic
18
+ from typing import List, Optional
19
+ from typing_extensions import Annotated, NotRequired, TypedDict
20
+
21
+
22
+ class SnippetForStructuredAuthoringTypedDict(TypedDict):
23
+ issue: NotRequired[str]
24
+ r"""Describes the problem, symptom, or question the article addresses"""
25
+ environment: NotRequired[str]
26
+ r"""Specifies the relevant product(s), category, or business process tied to the issue."""
27
+ cause: NotRequired[str]
28
+ r"""Identifies the underlying cause of the issue."""
29
+
30
+
31
+ class SnippetForStructuredAuthoring(BaseModel):
32
+ issue: Optional[str] = None
33
+ r"""Describes the problem, symptom, or question the article addresses"""
34
+
35
+ environment: Optional[str] = None
36
+ r"""Specifies the relevant product(s), category, or business process tied to the issue."""
37
+
38
+ cause: Optional[str] = None
39
+ r"""Identifies the underlying cause of the issue."""
40
+
41
+
42
+ class ArticleSearchResultTypedDict(TypedDict):
43
+ r"""Article search result."""
44
+
45
+ id: NotRequired[str]
46
+ r"""The ID of the Article.<br>An Article ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits."""
47
+ additional_info: NotRequired[str]
48
+ r"""Additional information about the Article. Max 1 KB."""
49
+ article_macro: NotRequired[str]
50
+ r"""The name of the macro associated with this Article."""
51
+ article_type: NotRequired[ArticleTypeTypedDict]
52
+ r"""The type of the Article and its attributes."""
53
+ article_keywords: NotRequired[str]
54
+ r"""A comma-separated list of keywords associated with this Article. 1 KB max size limit."""
55
+ article_summary: NotRequired[str]
56
+ r"""A brief summary of the Article, provided as metadata. 1 KB max size limit."""
57
+ availability_date: NotRequired[str]
58
+ r"""The date on which the Article version is available."""
59
+ available_editions: NotRequired[List[EditionTypedDict]]
60
+ r"""The editions of this Article that are available to the user."""
61
+ average_rating: NotRequired[float]
62
+ r"""The average rating of the Article."""
63
+ created_by: NotRequired[CreatedByTypedDict]
64
+ modified_by: NotRequired[ModifiedByTypedDict]
65
+ owned_by: NotRequired[OwnedByTypedDict]
66
+ created_date: NotRequired[str]
67
+ custom_attributes: NotRequired[List[CustomAttributeTypedDict]]
68
+ r"""A list of custom attributes."""
69
+ department_id: NotRequired[str]
70
+ r"""ID of the Article's department."""
71
+ description: NotRequired[str]
72
+ r"""A description of the Article. The maximum allowed Article description size is 1 KB."""
73
+ expiration_date: NotRequired[str]
74
+ r"""Date of Article expiration if Article expires otherwise empty."""
75
+ has_attachments: NotRequired[bool]
76
+ r"""Indicates whether the Article has any attachments."""
77
+ image_url: NotRequired[str]
78
+ r"""The URL of an image to be associated with the Article."""
79
+ include_in_gen_ai: NotRequired[bool]
80
+ r"""Indicates whether the Article is included for Generative AI."""
81
+ is_subscribed: NotRequired[bool]
82
+ r"""Indicates whether the Article is subscribed for notifications."""
83
+ modified_date: NotRequired[str]
84
+ r"""The date on which the Article was last modified."""
85
+ language_code: NotRequired[LanguageCode]
86
+ r"""Language code of the resource's language."""
87
+ link: NotRequired[LinkTypedDict]
88
+ r"""Defines the relationship between this resource and another object."""
89
+ name: NotRequired[str]
90
+ r"""The name of the Article."""
91
+ snippet: NotRequired[str]
92
+ r"""A returned matching snippet within article content when searching for a search term."""
93
+ snippet_for_structured_authoring: NotRequired[
94
+ SnippetForStructuredAuthoringTypedDict
95
+ ]
96
+ article_state: NotRequired[str]
97
+ r"""The Article's state."""
98
+ times_rated: NotRequired[int]
99
+ r"""The number of times that this Article has been rated."""
100
+ topic_breadcrumb: NotRequired[List[TopicBreadcrumbTypedDict]]
101
+ r"""A list of topics from the root topic to this Article. There may be multiple paths."""
102
+ version_id: NotRequired[str]
103
+ r"""The ID of this version of the Article."""
104
+ workflow: NotRequired[WorkflowTypedDict]
105
+ r"""The Article's workflow."""
106
+ compliance: NotRequired[ComplianceForArticleTypedDict]
107
+ r"""This schema contains the compliance details for an Article."""
108
+ personalization: NotRequired[PersonalizationTypedDict]
109
+ r"""Personalization allows the filtering of search results and controls the access to articles and article editions."""
110
+
111
+
112
+ class ArticleSearchResult(BaseModel):
113
+ r"""Article search result."""
114
+
115
+ id: Optional[str] = None
116
+ r"""The ID of the Article.<br>An Article ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits."""
117
+
118
+ additional_info: Annotated[
119
+ Optional[str], pydantic.Field(alias="additionalInfo")
120
+ ] = None
121
+ r"""Additional information about the Article. Max 1 KB."""
122
+
123
+ article_macro: Annotated[Optional[str], pydantic.Field(alias="articleMacro")] = None
124
+ r"""The name of the macro associated with this Article."""
125
+
126
+ article_type: Annotated[
127
+ Optional[ArticleType], pydantic.Field(alias="articleType")
128
+ ] = None
129
+ r"""The type of the Article and its attributes."""
130
+
131
+ article_keywords: Annotated[
132
+ Optional[str], pydantic.Field(alias="articleKeywords")
133
+ ] = None
134
+ r"""A comma-separated list of keywords associated with this Article. 1 KB max size limit."""
135
+
136
+ article_summary: Annotated[
137
+ Optional[str], pydantic.Field(alias="articleSummary")
138
+ ] = None
139
+ r"""A brief summary of the Article, provided as metadata. 1 KB max size limit."""
140
+
141
+ availability_date: Annotated[
142
+ Optional[str], pydantic.Field(alias="availabilityDate")
143
+ ] = None
144
+ r"""The date on which the Article version is available."""
145
+
146
+ available_editions: Annotated[
147
+ Optional[List[Edition]], pydantic.Field(alias="availableEditions")
148
+ ] = None
149
+ r"""The editions of this Article that are available to the user."""
150
+
151
+ average_rating: Annotated[
152
+ Optional[float], pydantic.Field(alias="averageRating")
153
+ ] = None
154
+ r"""The average rating of the Article."""
155
+
156
+ created_by: Annotated[Optional[CreatedBy], pydantic.Field(alias="createdBy")] = None
157
+
158
+ modified_by: Annotated[Optional[ModifiedBy], pydantic.Field(alias="modifiedBy")] = (
159
+ None
160
+ )
161
+
162
+ owned_by: Annotated[Optional[OwnedBy], pydantic.Field(alias="ownedBy")] = None
163
+
164
+ created_date: Annotated[Optional[str], pydantic.Field(alias="createdDate")] = None
165
+
166
+ custom_attributes: Annotated[
167
+ Optional[List[CustomAttribute]], pydantic.Field(alias="customAttributes")
168
+ ] = None
169
+ r"""A list of custom attributes."""
170
+
171
+ department_id: Annotated[Optional[str], pydantic.Field(alias="departmentID")] = None
172
+ r"""ID of the Article's department."""
173
+
174
+ description: Optional[str] = None
175
+ r"""A description of the Article. The maximum allowed Article description size is 1 KB."""
176
+
177
+ expiration_date: Annotated[
178
+ Optional[str], pydantic.Field(alias="expirationDate")
179
+ ] = None
180
+ r"""Date of Article expiration if Article expires otherwise empty."""
181
+
182
+ has_attachments: Annotated[
183
+ Optional[bool], pydantic.Field(alias="hasAttachments")
184
+ ] = None
185
+ r"""Indicates whether the Article has any attachments."""
186
+
187
+ image_url: Annotated[Optional[str], pydantic.Field(alias="imageURL")] = None
188
+ r"""The URL of an image to be associated with the Article."""
189
+
190
+ include_in_gen_ai: Annotated[
191
+ Optional[bool], pydantic.Field(alias="includeInGenAI")
192
+ ] = None
193
+ r"""Indicates whether the Article is included for Generative AI."""
194
+
195
+ is_subscribed: Annotated[Optional[bool], pydantic.Field(alias="isSubscribed")] = (
196
+ None
197
+ )
198
+ r"""Indicates whether the Article is subscribed for notifications."""
199
+
200
+ modified_date: Annotated[Optional[str], pydantic.Field(alias="modifiedDate")] = None
201
+ r"""The date on which the Article was last modified."""
202
+
203
+ language_code: Annotated[
204
+ Optional[LanguageCode], pydantic.Field(alias="languageCode")
205
+ ] = None
206
+ r"""Language code of the resource's language."""
207
+
208
+ link: Optional[Link] = None
209
+ r"""Defines the relationship between this resource and another object."""
210
+
211
+ name: Optional[str] = None
212
+ r"""The name of the Article."""
213
+
214
+ snippet: Optional[str] = None
215
+ r"""A returned matching snippet within article content when searching for a search term."""
216
+
217
+ snippet_for_structured_authoring: Annotated[
218
+ Optional[SnippetForStructuredAuthoring],
219
+ pydantic.Field(alias="snippetForStructuredAuthoring"),
220
+ ] = None
221
+
222
+ article_state: Annotated[Optional[str], pydantic.Field(alias="articleState")] = None
223
+ r"""The Article's state."""
224
+
225
+ times_rated: Annotated[Optional[int], pydantic.Field(alias="timesRated")] = None
226
+ r"""The number of times that this Article has been rated."""
227
+
228
+ topic_breadcrumb: Annotated[
229
+ Optional[List[TopicBreadcrumb]], pydantic.Field(alias="topicBreadcrumb")
230
+ ] = None
231
+ r"""A list of topics from the root topic to this Article. There may be multiple paths."""
232
+
233
+ version_id: Annotated[Optional[str], pydantic.Field(alias="versionId")] = None
234
+ r"""The ID of this version of the Article."""
235
+
236
+ workflow: Optional[Workflow] = None
237
+ r"""The Article's workflow."""
238
+
239
+ compliance: Optional[ComplianceForArticle] = None
240
+ r"""This schema contains the compliance details for an Article."""
241
+
242
+ personalization: Optional[Personalization] = None
243
+ r"""Personalization allows the filtering of search results and controls the access to articles and article editions."""
@@ -0,0 +1,32 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .articlesearchresult import ArticleSearchResult, ArticleSearchResultTypedDict
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 ArticleSearchResultsTypedDict(TypedDict):
13
+ r"""One or more instances of an Article search result."""
14
+
15
+ articles: NotRequired[List[ArticleSearchResultTypedDict]]
16
+ r"""Article details
17
+
18
+ """
19
+ pagination_info: NotRequired[PaginationInfoTypedDict]
20
+
21
+
22
+ class ArticleSearchResults(BaseModel):
23
+ r"""One or more instances of an Article search result."""
24
+
25
+ articles: Optional[List[ArticleSearchResult]] = None
26
+ r"""Article details
27
+
28
+ """
29
+
30
+ pagination_info: Annotated[
31
+ Optional[PaginationInfo], pydantic.Field(alias="paginationInfo")
32
+ ] = None
@@ -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
+ ArticleSort = Literal[
8
+ "availabilityDate",
9
+ "popularity",
10
+ "name",
11
+ ]
@@ -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
+ ArticleSortOrder = Literal[
8
+ "asc",
9
+ "desc",
10
+ ]
11
+ r"""Sort order of articles."""
@@ -0,0 +1,56 @@
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
+ ArticleTypeTypeName = Literal[
11
+ "General",
12
+ "Guided Help",
13
+ "Data Link",
14
+ "Topic Home",
15
+ "Suggestion",
16
+ "Virtual Assistant Action",
17
+ "Rich Message",
18
+ ]
19
+ r"""Indicates the article category name."""
20
+
21
+
22
+ class ArticleTypeTypedDict(TypedDict):
23
+ r"""The type of the Article and its attributes."""
24
+
25
+ article_category_id: NotRequired[int]
26
+ r"""Specifies the article category ID."""
27
+ type_name: NotRequired[ArticleTypeTypeName]
28
+ r"""Indicates the article category name."""
29
+ use_structured_authoring: NotRequired[bool]
30
+ r"""Indicates whether to use Structured Authoring for the Article Type."""
31
+ article_type_id: NotRequired[str]
32
+ r"""The ID of the Article Type."""
33
+
34
+
35
+ class ArticleType(BaseModel):
36
+ r"""The type of the Article and its attributes."""
37
+
38
+ article_category_id: Annotated[
39
+ Optional[int], pydantic.Field(alias="articleCategoryId")
40
+ ] = None
41
+ r"""Specifies the article category ID."""
42
+
43
+ type_name: Annotated[
44
+ Optional[ArticleTypeTypeName], pydantic.Field(alias="typeName")
45
+ ] = None
46
+ r"""Indicates the article category name."""
47
+
48
+ use_structured_authoring: Annotated[
49
+ Optional[bool], pydantic.Field(alias="useStructuredAuthoring")
50
+ ] = None
51
+ r"""Indicates whether to use Structured Authoring for the Article Type."""
52
+
53
+ article_type_id: Annotated[Optional[str], pydantic.Field(alias="articleTypeId")] = (
54
+ None
55
+ )
56
+ r"""The ID of the Article Type."""