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,62 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .acceptlanguage import AcceptLanguage
5
+ from .ghstepsearchrequest import GHStepSearchRequest, GHStepSearchRequestTypedDict
6
+ from .languagequeryparameter import LanguageQueryParameter
7
+ from egain_api_python.types import BaseModel
8
+ from egain_api_python.utils import (
9
+ FieldMetadata,
10
+ HeaderMetadata,
11
+ PathParamMetadata,
12
+ QueryParamMetadata,
13
+ RequestMetadata,
14
+ )
15
+ import pydantic
16
+ from typing import Optional
17
+ from typing_extensions import Annotated, NotRequired, TypedDict
18
+
19
+
20
+ class StepGHSearchRequestTypedDict(TypedDict):
21
+ accept_language: AcceptLanguage
22
+ r"""The Language locale accepted by the client (used for locale specific fields in resource representation and in error responses)."""
23
+ portal_id: str
24
+ r"""The ID of the portal being accessed.<br><br>A portal ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits."""
25
+ gh_step_search_request: GHStepSearchRequestTypedDict
26
+ language: NotRequired[LanguageQueryParameter]
27
+ r"""The language that describes the details of a resource. Resources available in different languages may differ from each other.<li>If <code>lang</code> is not passed, then the portal's default language is used.</li>"""
28
+ gh_custom_additional_attributes: NotRequired[str]
29
+
30
+
31
+ class StepGHSearchRequest(BaseModel):
32
+ accept_language: Annotated[
33
+ AcceptLanguage,
34
+ pydantic.Field(alias="Accept-Language"),
35
+ FieldMetadata(header=HeaderMetadata(style="simple", explode=False)),
36
+ ]
37
+ r"""The Language locale accepted by the client (used for locale specific fields in resource representation and in error responses)."""
38
+
39
+ portal_id: Annotated[
40
+ str,
41
+ pydantic.Field(alias="portalID"),
42
+ FieldMetadata(path=PathParamMetadata(style="simple", explode=False)),
43
+ ]
44
+ r"""The ID of the portal being accessed.<br><br>A portal ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits."""
45
+
46
+ gh_step_search_request: Annotated[
47
+ GHStepSearchRequest,
48
+ FieldMetadata(request=RequestMetadata(media_type="application/json")),
49
+ ]
50
+
51
+ language: Annotated[
52
+ Optional[LanguageQueryParameter],
53
+ pydantic.Field(alias="$lang"),
54
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
55
+ ] = None
56
+ r"""The language that describes the details of a resource. Resources available in different languages may differ from each other.<li>If <code>lang</code> is not passed, then the portal's default language is used.</li>"""
57
+
58
+ gh_custom_additional_attributes: Annotated[
59
+ Optional[str],
60
+ pydantic.Field(alias="ghCustomAdditionalAttributes"),
61
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
62
+ ] = None
@@ -0,0 +1,30 @@
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 StringAttributeValueTypedDict(TypedDict):
11
+ r"""An attribute can have an external value such as a readable label, and an internal value such as a unique ID. This schema provides both the internal and external values for one attribute."""
12
+
13
+ internal_value: NotRequired[str]
14
+ r"""The internal value of the attribute."""
15
+ external_value: NotRequired[str]
16
+ r"""The external or public value of the attribute."""
17
+
18
+
19
+ class StringAttributeValue(BaseModel):
20
+ r"""An attribute can have an external value such as a readable label, and an internal value such as a unique ID. This schema provides both the internal and external values for one attribute."""
21
+
22
+ internal_value: Annotated[Optional[str], pydantic.Field(alias="internalValue")] = (
23
+ None
24
+ )
25
+ r"""The internal value of the attribute."""
26
+
27
+ external_value: Annotated[Optional[str], pydantic.Field(alias="externalValue")] = (
28
+ None
29
+ )
30
+ r"""The external or public value of the attribute."""
@@ -0,0 +1,33 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .l10nstring import L10NString, L10NStringTypedDict
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 StructuredAuthoringFieldsTypedDict(TypedDict):
12
+ confidence_level: NotRequired[L10NStringTypedDict]
13
+ issue: NotRequired[str]
14
+ r"""Describes the problem, symptom, or question the article addresses."""
15
+ environment: NotRequired[str]
16
+ r"""Specifies the relevant product(s), category, or business process tied to the issue."""
17
+ cause: NotRequired[str]
18
+ r"""Identifies the underlying cause of the issue."""
19
+
20
+
21
+ class StructuredAuthoringFields(BaseModel):
22
+ confidence_level: Annotated[
23
+ Optional[L10NString], pydantic.Field(alias="confidenceLevel")
24
+ ] = None
25
+
26
+ issue: Optional[str] = None
27
+ r"""Describes the problem, symptom, or question the article addresses."""
28
+
29
+ environment: Optional[str] = None
30
+ r"""Specifies the relevant product(s), category, or business process tied to the issue."""
31
+
32
+ cause: Optional[str] = None
33
+ r"""Identifies the underlying cause of the issue."""
@@ -0,0 +1,40 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .acceptlanguage import AcceptLanguage
5
+ from egain_api_python.types import BaseModel
6
+ from egain_api_python.utils import FieldMetadata, HeaderMetadata, PathParamMetadata
7
+ import pydantic
8
+ from typing_extensions import Annotated, TypedDict
9
+
10
+
11
+ class SubscribeArticleRequestTypedDict(TypedDict):
12
+ accept_language: AcceptLanguage
13
+ r"""The Language locale accepted by the client (used for locale specific fields in resource representation and in error responses)."""
14
+ portal_id: str
15
+ r"""The ID of the portal being accessed.<br><br>A portal ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits."""
16
+ article_id: 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
+
19
+
20
+ class SubscribeArticleRequest(BaseModel):
21
+ accept_language: Annotated[
22
+ AcceptLanguage,
23
+ pydantic.Field(alias="Accept-Language"),
24
+ FieldMetadata(header=HeaderMetadata(style="simple", explode=False)),
25
+ ]
26
+ r"""The Language locale accepted by the client (used for locale specific fields in resource representation and in error responses)."""
27
+
28
+ portal_id: Annotated[
29
+ str,
30
+ pydantic.Field(alias="portalID"),
31
+ FieldMetadata(path=PathParamMetadata(style="simple", explode=False)),
32
+ ]
33
+ r"""The ID of the portal being accessed.<br><br>A portal ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits."""
34
+
35
+ article_id: Annotated[
36
+ str,
37
+ pydantic.Field(alias="articleID"),
38
+ FieldMetadata(path=PathParamMetadata(style="simple", explode=False)),
39
+ ]
40
+ 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."""
@@ -0,0 +1,190 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .customattribute import CustomAttribute, CustomAttributeTypedDict
5
+ from .link import Link, LinkTypedDict
6
+ from .modifiedby import ModifiedBy, ModifiedByTypedDict
7
+ from datetime import datetime
8
+ from egain_api_python.types import BaseModel
9
+ import pydantic
10
+ from typing import List, Literal, Optional
11
+ from typing_extensions import Annotated, NotRequired, TypedDict
12
+
13
+
14
+ class SuggestionL10NStringTypedDict(TypedDict):
15
+ r"""The status of the Suggestion.
16
+ <li>1 : suggested.</li>
17
+ <li>2 : pending</li>
18
+ <li>3 : declined</li>
19
+ <li>4 : approved</li>
20
+ """
21
+
22
+ value: NotRequired[str]
23
+ r"""A string that indicates the value."""
24
+ display_value: NotRequired[str]
25
+ r"""Localized string of the value element."""
26
+
27
+
28
+ class SuggestionL10NString(BaseModel):
29
+ r"""The status of the Suggestion.
30
+ <li>1 : suggested.</li>
31
+ <li>2 : pending</li>
32
+ <li>3 : declined</li>
33
+ <li>4 : approved</li>
34
+ """
35
+
36
+ value: Optional[str] = None
37
+ r"""A string that indicates the value."""
38
+
39
+ display_value: Annotated[Optional[str], pydantic.Field(alias="displayValue")] = None
40
+ r"""Localized string of the value element."""
41
+
42
+
43
+ SuggestionCode = Literal[
44
+ "en-US",
45
+ "en-GB",
46
+ "fr-FR",
47
+ "es-ES",
48
+ "it-IT",
49
+ "de-DE",
50
+ "nl-NL",
51
+ "pt-BR",
52
+ "pt-PT",
53
+ "da-DK",
54
+ "sv-SE",
55
+ "ru-RU",
56
+ "fr-CA",
57
+ "zh-CN",
58
+ "ja-JP",
59
+ "ko-KR",
60
+ ]
61
+ r"""The language that describes the details of the resource. Resources available in different languages may differ from each other."""
62
+
63
+
64
+ Label = Literal[
65
+ "English",
66
+ "French",
67
+ "Spanish",
68
+ "Italian",
69
+ "German",
70
+ "Dutch",
71
+ "Portuguese",
72
+ "Danish",
73
+ "Swedish",
74
+ "Russian",
75
+ "Chinese",
76
+ "Japanese",
77
+ "Korean",
78
+ ]
79
+ r"""The name of the language."""
80
+
81
+
82
+ class SuggestionLanguageTypedDict(TypedDict):
83
+ r"""The knowledge base language in which the Suggestion was created."""
84
+
85
+ code: SuggestionCode
86
+ r"""The language that describes the details of the resource. Resources available in different languages may differ from each other."""
87
+ label: NotRequired[Label]
88
+ r"""The name of the language."""
89
+
90
+
91
+ class SuggestionLanguage(BaseModel):
92
+ r"""The knowledge base language in which the Suggestion was created."""
93
+
94
+ code: SuggestionCode
95
+ r"""The language that describes the details of the resource. Resources available in different languages may differ from each other."""
96
+
97
+ label: Optional[Label] = None
98
+ r"""The name of the language."""
99
+
100
+
101
+ class SuggestionTypedDict(TypedDict):
102
+ r"""This schema contains information about a Suggestion."""
103
+
104
+ id: str
105
+ r"""The ID of the Suggestion. A Suggestion ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits."""
106
+ name: str
107
+ r"""The name of the Suggestion."""
108
+ link: NotRequired[LinkTypedDict]
109
+ r"""Defines the relationship between this resource and another object."""
110
+ description: NotRequired[str]
111
+ r"""The description of the Suggestion."""
112
+ content: NotRequired[str]
113
+ r"""The content of the Suggestion."""
114
+ has_related_articles: NotRequired[bool]
115
+ r"""If true, the Suggestion has one or more Related Articles."""
116
+ status: NotRequired[SuggestionL10NStringTypedDict]
117
+ r"""The status of the Suggestion.
118
+ <li>1 : suggested.</li>
119
+ <li>2 : pending</li>
120
+ <li>3 : declined</li>
121
+ <li>4 : approved</li>
122
+ """
123
+ modified_by: NotRequired[ModifiedByTypedDict]
124
+ modified_date: NotRequired[datetime]
125
+ r"""The last modified date and last modifying user of the Suggestion."""
126
+ has_attachments: NotRequired[bool]
127
+ r"""Indicates whether the Suggestion has any Attachments."""
128
+ has_comments: NotRequired[bool]
129
+ r"""Indicates whether the Suggestion has any comments."""
130
+ language: NotRequired[SuggestionLanguageTypedDict]
131
+ r"""The knowledge base language in which the Suggestion was created."""
132
+ custom_attributes: NotRequired[List[CustomAttributeTypedDict]]
133
+ r"""Custom Attributes of the Suggestion."""
134
+
135
+
136
+ class Suggestion(BaseModel):
137
+ r"""This schema contains information about a Suggestion."""
138
+
139
+ id: str
140
+ r"""The ID of the Suggestion. A Suggestion ID is composed of a 2-4 letter prefix, followed by a dash and 4-15 digits."""
141
+
142
+ name: str
143
+ r"""The name of the Suggestion."""
144
+
145
+ link: Optional[Link] = None
146
+ r"""Defines the relationship between this resource and another object."""
147
+
148
+ description: Optional[str] = None
149
+ r"""The description of the Suggestion."""
150
+
151
+ content: Optional[str] = None
152
+ r"""The content of the Suggestion."""
153
+
154
+ has_related_articles: Annotated[
155
+ Optional[bool], pydantic.Field(alias="hasRelatedArticles")
156
+ ] = None
157
+ r"""If true, the Suggestion has one or more Related Articles."""
158
+
159
+ status: Optional[SuggestionL10NString] = None
160
+ r"""The status of the Suggestion.
161
+ <li>1 : suggested.</li>
162
+ <li>2 : pending</li>
163
+ <li>3 : declined</li>
164
+ <li>4 : approved</li>
165
+ """
166
+
167
+ modified_by: Annotated[Optional[ModifiedBy], pydantic.Field(alias="modifiedBy")] = (
168
+ None
169
+ )
170
+
171
+ modified_date: Annotated[
172
+ Optional[datetime], pydantic.Field(alias="modifiedDate")
173
+ ] = None
174
+ r"""The last modified date and last modifying user of the Suggestion."""
175
+
176
+ has_attachments: Annotated[
177
+ Optional[bool], pydantic.Field(alias="hasAttachments")
178
+ ] = None
179
+ r"""Indicates whether the Suggestion has any Attachments."""
180
+
181
+ has_comments: Annotated[Optional[bool], pydantic.Field(alias="hasComments")] = None
182
+ r"""Indicates whether the Suggestion has any comments."""
183
+
184
+ language: Optional[SuggestionLanguage] = None
185
+ r"""The knowledge base language in which the Suggestion was created."""
186
+
187
+ custom_attributes: Annotated[
188
+ Optional[List[CustomAttribute]], pydantic.Field(alias="customAttributes")
189
+ ] = None
190
+ r"""Custom Attributes of the Suggestion."""
@@ -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
+ SuggestionAdditionalAttributes = Literal[
8
+ "content",
9
+ "modifiedBy.userName",
10
+ "all",
11
+ ]
@@ -0,0 +1,46 @@
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 SuggestionAttachmentTypedDict(TypedDict):
12
+ r"""This schema contains the definition of an Attachment."""
13
+
14
+ id: NotRequired[str]
15
+ r"""The ID of the Attachment."""
16
+ link: NotRequired[LinkTypedDict]
17
+ r"""Defines the relationship between this resource and another object."""
18
+ file_name: NotRequired[str]
19
+ r"""The name of the Attachment file.<li>This must not exceed 255 characters.</li>"""
20
+ size: NotRequired[int]
21
+ r"""The size of the Attachment.<li>Limited to 25MB.</li>"""
22
+ content_url: NotRequired[str]
23
+ r"""The content URL of the Attachment. Download immediately, as this unique URL exists temporarily and can only be retrieved once before deletion.
24
+
25
+ """
26
+
27
+
28
+ class SuggestionAttachment(BaseModel):
29
+ r"""This schema contains the definition of an Attachment."""
30
+
31
+ id: Optional[str] = None
32
+ r"""The ID of the Attachment."""
33
+
34
+ link: Optional[Link] = None
35
+ r"""Defines the relationship between this resource and another object."""
36
+
37
+ file_name: Annotated[Optional[str], pydantic.Field(alias="fileName")] = None
38
+ r"""The name of the Attachment file.<li>This must not exceed 255 characters.</li>"""
39
+
40
+ size: Optional[int] = None
41
+ r"""The size of the Attachment.<li>Limited to 25MB.</li>"""
42
+
43
+ content_url: Annotated[Optional[str], pydantic.Field(alias="contentUrl")] = None
44
+ r"""The content URL of the Attachment. Download immediately, as this unique URL exists temporarily and can only be retrieved once before deletion.
45
+
46
+ """
@@ -0,0 +1,28 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .paginationinfo import PaginationInfo, PaginationInfoTypedDict
5
+ from .suggestion import Suggestion, SuggestionTypedDict
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 SuggestionsTypedDict(TypedDict):
13
+ r"""One or more instances of Suggestion."""
14
+
15
+ suggestion: NotRequired[List[SuggestionTypedDict]]
16
+ pagination_info: NotRequired[PaginationInfoTypedDict]
17
+
18
+
19
+ class Suggestions(BaseModel):
20
+ r"""One or more instances of Suggestion."""
21
+
22
+ suggestion: Annotated[
23
+ Optional[List[Suggestion]], pydantic.Field(alias="Suggestion")
24
+ ] = None
25
+
26
+ pagination_info: Annotated[
27
+ Optional[PaginationInfo], pydantic.Field(alias="paginationInfo")
28
+ ] = None
@@ -0,0 +1,17 @@
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 TagTypedDict(TypedDict):
10
+ name: NotRequired[str]
11
+ id: NotRequired[str]
12
+
13
+
14
+ class Tag(BaseModel):
15
+ name: Optional[str] = None
16
+
17
+ id: Optional[str] = None
@@ -0,0 +1,22 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .components_schemas_tagcategory import (
5
+ ComponentsSchemasTagCategory,
6
+ ComponentsSchemasTagCategoryTypedDict,
7
+ )
8
+ from egain_api_python.types import BaseModel
9
+ import pydantic
10
+ from typing import List, Optional
11
+ from typing_extensions import Annotated, NotRequired, TypedDict
12
+
13
+
14
+ class TagCategoriesForInterestTypedDict(TypedDict):
15
+ tag_category: NotRequired[List[ComponentsSchemasTagCategoryTypedDict]]
16
+
17
+
18
+ class TagCategoriesForInterest(BaseModel):
19
+ tag_category: Annotated[
20
+ Optional[List[ComponentsSchemasTagCategory]],
21
+ pydantic.Field(alias="tagCategory"),
22
+ ] = None
@@ -0,0 +1,34 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .taggroups import TagGroups, TagGroupsTypedDict
5
+ from .tags import Tags, TagsTypedDict
6
+ from egain_api_python.types import BaseModel
7
+ import pydantic
8
+ from typing import Optional
9
+ from typing_extensions import Annotated, NotRequired, TypedDict
10
+
11
+
12
+ class TagCategoryTypedDict(TypedDict):
13
+ r"""A tag category is a grouping of tags and tag groups."""
14
+
15
+ name: NotRequired[str]
16
+ r"""The name of the tag category."""
17
+ id: NotRequired[str]
18
+ r"""The ID of the tag category. A tag category ID is composed of a 4-letter prefix, followed by a dash and 4-15 digits."""
19
+ tags: NotRequired[TagsTypedDict]
20
+ tag_groups: NotRequired[TagGroupsTypedDict]
21
+
22
+
23
+ class TagCategory(BaseModel):
24
+ r"""A tag category is a grouping of tags and tag groups."""
25
+
26
+ name: Optional[str] = None
27
+ r"""The name of the tag category."""
28
+
29
+ id: Optional[str] = None
30
+ r"""The ID of the tag category. A tag category ID is composed of a 4-letter prefix, followed by a dash and 4-15 digits."""
31
+
32
+ tags: Optional[Tags] = None
33
+
34
+ tag_groups: Annotated[Optional[TagGroups], pydantic.Field(alias="tagGroups")] = None
@@ -0,0 +1,17 @@
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 TagGroupTypedDict(TypedDict):
10
+ name: NotRequired[str]
11
+ id: NotRequired[str]
12
+
13
+
14
+ class TagGroup(BaseModel):
15
+ name: Optional[str] = None
16
+
17
+ id: Optional[str] = None
@@ -0,0 +1,20 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .taggroup import TagGroup, TagGroupTypedDict
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 TagGroupsTypedDict(TypedDict):
12
+ tag_group: NotRequired[List[TagGroupTypedDict]]
13
+ r"""An array of tag groups."""
14
+
15
+
16
+ class TagGroups(BaseModel):
17
+ tag_group: Annotated[Optional[List[TagGroup]], pydantic.Field(alias="tagGroup")] = (
18
+ None
19
+ )
20
+ r"""An array of tag groups."""
@@ -0,0 +1,17 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .tag import Tag, TagTypedDict
5
+ from egain_api_python.types import BaseModel
6
+ from typing import List, Optional
7
+ from typing_extensions import NotRequired, TypedDict
8
+
9
+
10
+ class TagsTypedDict(TypedDict):
11
+ tag: NotRequired[List[TagTypedDict]]
12
+ r"""An array of tags."""
13
+
14
+
15
+ class Tags(BaseModel):
16
+ tag: Optional[List[Tag]] = None
17
+ r"""An array of tags."""