subnoto-api-client 0.0.99__py3-none-manylinux2014_x86_64.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 (399) hide show
  1. oak_py_sdk/oak_client.so +0 -0
  2. subnoto_api_client/__init__.py +23 -0
  3. subnoto_api_client/client.py +155 -0
  4. subnoto_api_client/generated/__init__.py +8 -0
  5. subnoto_api_client/generated/api/__init__.py +1 -0
  6. subnoto_api_client/generated/api/contact/__init__.py +1 -0
  7. subnoto_api_client/generated/api/contact/post_public_contact_create.py +241 -0
  8. subnoto_api_client/generated/api/contact/post_public_contact_delete.py +241 -0
  9. subnoto_api_client/generated/api/contact/post_public_contact_get.py +241 -0
  10. subnoto_api_client/generated/api/contact/post_public_contact_list.py +241 -0
  11. subnoto_api_client/generated/api/contact/post_public_contact_update.py +241 -0
  12. subnoto_api_client/generated/api/envelope/__init__.py +1 -0
  13. subnoto_api_client/generated/api/envelope/post_public_envelope_add_blocks.py +243 -0
  14. subnoto_api_client/generated/api/envelope/post_public_envelope_add_recipients.py +253 -0
  15. subnoto_api_client/generated/api/envelope/post_public_envelope_complete_document_upload.py +257 -0
  16. subnoto_api_client/generated/api/envelope/post_public_envelope_create.py +253 -0
  17. subnoto_api_client/generated/api/envelope/post_public_envelope_create_from_template.py +257 -0
  18. subnoto_api_client/generated/api/envelope/post_public_envelope_delete.py +241 -0
  19. subnoto_api_client/generated/api/envelope/post_public_envelope_delete_blocks.py +253 -0
  20. subnoto_api_client/generated/api/envelope/post_public_envelope_delete_recipients.py +253 -0
  21. subnoto_api_client/generated/api/envelope/post_public_envelope_get.py +241 -0
  22. subnoto_api_client/generated/api/envelope/post_public_envelope_get_document.py +247 -0
  23. subnoto_api_client/generated/api/envelope/post_public_envelope_get_proof.py +237 -0
  24. subnoto_api_client/generated/api/envelope/post_public_envelope_list.py +227 -0
  25. subnoto_api_client/generated/api/envelope/post_public_envelope_send.py +241 -0
  26. subnoto_api_client/generated/api/envelope/post_public_envelope_sign.py +241 -0
  27. subnoto_api_client/generated/api/template/__init__.py +1 -0
  28. subnoto_api_client/generated/api/template/post_public_template_list.py +227 -0
  29. subnoto_api_client/generated/api/utils/__init__.py +1 -0
  30. subnoto_api_client/generated/api/utils/post_public_utils_whoami.py +227 -0
  31. subnoto_api_client/generated/api/workspace/__init__.py +1 -0
  32. subnoto_api_client/generated/api/workspace/post_public_workspace_list.py +227 -0
  33. subnoto_api_client/generated/client.py +282 -0
  34. subnoto_api_client/generated/errors.py +16 -0
  35. subnoto_api_client/generated/models/__init__.py +1271 -0
  36. subnoto_api_client/generated/models/post_public_contact_create_body.py +89 -0
  37. subnoto_api_client/generated/models/post_public_contact_create_body_contacts_item.py +88 -0
  38. subnoto_api_client/generated/models/post_public_contact_create_response_200.py +62 -0
  39. subnoto_api_client/generated/models/post_public_contact_create_response_200_contacts_item.py +80 -0
  40. subnoto_api_client/generated/models/post_public_contact_create_response_400.py +84 -0
  41. subnoto_api_client/generated/models/post_public_contact_create_response_400_error.py +70 -0
  42. subnoto_api_client/generated/models/post_public_contact_create_response_400_error_code.py +10 -0
  43. subnoto_api_client/generated/models/post_public_contact_create_response_401.py +84 -0
  44. subnoto_api_client/generated/models/post_public_contact_create_response_401_error.py +70 -0
  45. subnoto_api_client/generated/models/post_public_contact_create_response_401_error_code.py +10 -0
  46. subnoto_api_client/generated/models/post_public_contact_create_response_403.py +84 -0
  47. subnoto_api_client/generated/models/post_public_contact_create_response_403_error.py +70 -0
  48. subnoto_api_client/generated/models/post_public_contact_create_response_403_error_code.py +9 -0
  49. subnoto_api_client/generated/models/post_public_contact_create_response_500.py +84 -0
  50. subnoto_api_client/generated/models/post_public_contact_create_response_500_error.py +70 -0
  51. subnoto_api_client/generated/models/post_public_contact_create_response_500_error_code.py +9 -0
  52. subnoto_api_client/generated/models/post_public_contact_delete_body.py +69 -0
  53. subnoto_api_client/generated/models/post_public_contact_delete_response_200.py +24 -0
  54. subnoto_api_client/generated/models/post_public_contact_delete_response_400.py +84 -0
  55. subnoto_api_client/generated/models/post_public_contact_delete_response_400_error.py +70 -0
  56. subnoto_api_client/generated/models/post_public_contact_delete_response_400_error_code.py +10 -0
  57. subnoto_api_client/generated/models/post_public_contact_delete_response_401.py +84 -0
  58. subnoto_api_client/generated/models/post_public_contact_delete_response_401_error.py +70 -0
  59. subnoto_api_client/generated/models/post_public_contact_delete_response_401_error_code.py +10 -0
  60. subnoto_api_client/generated/models/post_public_contact_delete_response_403.py +84 -0
  61. subnoto_api_client/generated/models/post_public_contact_delete_response_403_error.py +70 -0
  62. subnoto_api_client/generated/models/post_public_contact_delete_response_403_error_code.py +9 -0
  63. subnoto_api_client/generated/models/post_public_contact_delete_response_500.py +84 -0
  64. subnoto_api_client/generated/models/post_public_contact_delete_response_500_error.py +70 -0
  65. subnoto_api_client/generated/models/post_public_contact_delete_response_500_error_code.py +9 -0
  66. subnoto_api_client/generated/models/post_public_contact_get_body.py +69 -0
  67. subnoto_api_client/generated/models/post_public_contact_get_response_200.py +52 -0
  68. subnoto_api_client/generated/models/post_public_contact_get_response_200_contact.py +80 -0
  69. subnoto_api_client/generated/models/post_public_contact_get_response_400.py +84 -0
  70. subnoto_api_client/generated/models/post_public_contact_get_response_400_error.py +70 -0
  71. subnoto_api_client/generated/models/post_public_contact_get_response_400_error_code.py +10 -0
  72. subnoto_api_client/generated/models/post_public_contact_get_response_401.py +84 -0
  73. subnoto_api_client/generated/models/post_public_contact_get_response_401_error.py +70 -0
  74. subnoto_api_client/generated/models/post_public_contact_get_response_401_error_code.py +10 -0
  75. subnoto_api_client/generated/models/post_public_contact_get_response_403.py +84 -0
  76. subnoto_api_client/generated/models/post_public_contact_get_response_403_error.py +70 -0
  77. subnoto_api_client/generated/models/post_public_contact_get_response_403_error_code.py +9 -0
  78. subnoto_api_client/generated/models/post_public_contact_get_response_500.py +84 -0
  79. subnoto_api_client/generated/models/post_public_contact_get_response_500_error.py +70 -0
  80. subnoto_api_client/generated/models/post_public_contact_get_response_500_error_code.py +9 -0
  81. subnoto_api_client/generated/models/post_public_contact_list_body.py +61 -0
  82. subnoto_api_client/generated/models/post_public_contact_list_response_200.py +62 -0
  83. subnoto_api_client/generated/models/post_public_contact_list_response_200_contacts_item.py +80 -0
  84. subnoto_api_client/generated/models/post_public_contact_list_response_400.py +84 -0
  85. subnoto_api_client/generated/models/post_public_contact_list_response_400_error.py +70 -0
  86. subnoto_api_client/generated/models/post_public_contact_list_response_400_error_code.py +9 -0
  87. subnoto_api_client/generated/models/post_public_contact_list_response_401.py +84 -0
  88. subnoto_api_client/generated/models/post_public_contact_list_response_401_error.py +70 -0
  89. subnoto_api_client/generated/models/post_public_contact_list_response_401_error_code.py +10 -0
  90. subnoto_api_client/generated/models/post_public_contact_list_response_403.py +84 -0
  91. subnoto_api_client/generated/models/post_public_contact_list_response_403_error.py +70 -0
  92. subnoto_api_client/generated/models/post_public_contact_list_response_403_error_code.py +9 -0
  93. subnoto_api_client/generated/models/post_public_contact_list_response_500.py +84 -0
  94. subnoto_api_client/generated/models/post_public_contact_list_response_500_error.py +70 -0
  95. subnoto_api_client/generated/models/post_public_contact_list_response_500_error_code.py +9 -0
  96. subnoto_api_client/generated/models/post_public_contact_update_body.py +79 -0
  97. subnoto_api_client/generated/models/post_public_contact_update_body_contact.py +91 -0
  98. subnoto_api_client/generated/models/post_public_contact_update_response_200.py +52 -0
  99. subnoto_api_client/generated/models/post_public_contact_update_response_200_contact.py +80 -0
  100. subnoto_api_client/generated/models/post_public_contact_update_response_400.py +84 -0
  101. subnoto_api_client/generated/models/post_public_contact_update_response_400_error.py +70 -0
  102. subnoto_api_client/generated/models/post_public_contact_update_response_400_error_code.py +11 -0
  103. subnoto_api_client/generated/models/post_public_contact_update_response_401.py +84 -0
  104. subnoto_api_client/generated/models/post_public_contact_update_response_401_error.py +70 -0
  105. subnoto_api_client/generated/models/post_public_contact_update_response_401_error_code.py +10 -0
  106. subnoto_api_client/generated/models/post_public_contact_update_response_403.py +84 -0
  107. subnoto_api_client/generated/models/post_public_contact_update_response_403_error.py +70 -0
  108. subnoto_api_client/generated/models/post_public_contact_update_response_403_error_code.py +9 -0
  109. subnoto_api_client/generated/models/post_public_contact_update_response_500.py +84 -0
  110. subnoto_api_client/generated/models/post_public_contact_update_response_500_error.py +70 -0
  111. subnoto_api_client/generated/models/post_public_contact_update_response_500_error_code.py +9 -0
  112. subnoto_api_client/generated/models/post_public_envelope_add_blocks_body.py +174 -0
  113. subnoto_api_client/generated/models/post_public_envelope_add_blocks_body_blocks_item_type_0.py +153 -0
  114. subnoto_api_client/generated/models/post_public_envelope_add_blocks_body_blocks_item_type_0_templated_text.py +10 -0
  115. subnoto_api_client/generated/models/post_public_envelope_add_blocks_body_blocks_item_type_0_type.py +8 -0
  116. subnoto_api_client/generated/models/post_public_envelope_add_blocks_body_blocks_item_type_1.py +133 -0
  117. subnoto_api_client/generated/models/post_public_envelope_add_blocks_body_blocks_item_type_1_type.py +8 -0
  118. subnoto_api_client/generated/models/post_public_envelope_add_blocks_body_blocks_item_type_2.py +117 -0
  119. subnoto_api_client/generated/models/post_public_envelope_add_blocks_body_blocks_item_type_2_type.py +8 -0
  120. subnoto_api_client/generated/models/post_public_envelope_add_blocks_response_200.py +42 -0
  121. subnoto_api_client/generated/models/post_public_envelope_add_blocks_response_400.py +84 -0
  122. subnoto_api_client/generated/models/post_public_envelope_add_blocks_response_400_error.py +70 -0
  123. subnoto_api_client/generated/models/post_public_envelope_add_blocks_response_400_error_code.py +13 -0
  124. subnoto_api_client/generated/models/post_public_envelope_add_blocks_response_401.py +84 -0
  125. subnoto_api_client/generated/models/post_public_envelope_add_blocks_response_401_error.py +70 -0
  126. subnoto_api_client/generated/models/post_public_envelope_add_blocks_response_401_error_code.py +10 -0
  127. subnoto_api_client/generated/models/post_public_envelope_add_blocks_response_403.py +84 -0
  128. subnoto_api_client/generated/models/post_public_envelope_add_blocks_response_403_error.py +70 -0
  129. subnoto_api_client/generated/models/post_public_envelope_add_blocks_response_403_error_code.py +9 -0
  130. subnoto_api_client/generated/models/post_public_envelope_add_blocks_response_500.py +84 -0
  131. subnoto_api_client/generated/models/post_public_envelope_add_blocks_response_500_error.py +70 -0
  132. subnoto_api_client/generated/models/post_public_envelope_add_blocks_response_500_error_code.py +9 -0
  133. subnoto_api_client/generated/models/post_public_envelope_add_recipients_body.py +171 -0
  134. subnoto_api_client/generated/models/post_public_envelope_add_recipients_body_recipients_item_type_0.py +91 -0
  135. subnoto_api_client/generated/models/post_public_envelope_add_recipients_body_recipients_item_type_0_type.py +8 -0
  136. subnoto_api_client/generated/models/post_public_envelope_add_recipients_body_recipients_item_type_1.py +75 -0
  137. subnoto_api_client/generated/models/post_public_envelope_add_recipients_body_recipients_item_type_1_type.py +8 -0
  138. subnoto_api_client/generated/models/post_public_envelope_add_recipients_body_recipients_item_type_2.py +75 -0
  139. subnoto_api_client/generated/models/post_public_envelope_add_recipients_body_recipients_item_type_2_type.py +8 -0
  140. subnoto_api_client/generated/models/post_public_envelope_add_recipients_response_200.py +64 -0
  141. subnoto_api_client/generated/models/post_public_envelope_add_recipients_response_200_recipients_item.py +93 -0
  142. subnoto_api_client/generated/models/post_public_envelope_add_recipients_response_200_recipients_item_role.py +8 -0
  143. subnoto_api_client/generated/models/post_public_envelope_add_recipients_response_200_recipients_item_status.py +12 -0
  144. subnoto_api_client/generated/models/post_public_envelope_add_recipients_response_400.py +86 -0
  145. subnoto_api_client/generated/models/post_public_envelope_add_recipients_response_400_error.py +70 -0
  146. subnoto_api_client/generated/models/post_public_envelope_add_recipients_response_400_error_code.py +14 -0
  147. subnoto_api_client/generated/models/post_public_envelope_add_recipients_response_401.py +86 -0
  148. subnoto_api_client/generated/models/post_public_envelope_add_recipients_response_401_error.py +70 -0
  149. subnoto_api_client/generated/models/post_public_envelope_add_recipients_response_401_error_code.py +10 -0
  150. subnoto_api_client/generated/models/post_public_envelope_add_recipients_response_403.py +86 -0
  151. subnoto_api_client/generated/models/post_public_envelope_add_recipients_response_403_error.py +70 -0
  152. subnoto_api_client/generated/models/post_public_envelope_add_recipients_response_403_error_code.py +9 -0
  153. subnoto_api_client/generated/models/post_public_envelope_add_recipients_response_500.py +86 -0
  154. subnoto_api_client/generated/models/post_public_envelope_add_recipients_response_500_error.py +70 -0
  155. subnoto_api_client/generated/models/post_public_envelope_add_recipients_response_500_error_code.py +9 -0
  156. subnoto_api_client/generated/models/post_public_envelope_complete_document_upload_body.py +77 -0
  157. subnoto_api_client/generated/models/post_public_envelope_complete_document_upload_response_200.py +24 -0
  158. subnoto_api_client/generated/models/post_public_envelope_complete_document_upload_response_400.py +86 -0
  159. subnoto_api_client/generated/models/post_public_envelope_complete_document_upload_response_400_error.py +72 -0
  160. subnoto_api_client/generated/models/post_public_envelope_complete_document_upload_response_400_error_code.py +14 -0
  161. subnoto_api_client/generated/models/post_public_envelope_complete_document_upload_response_401.py +86 -0
  162. subnoto_api_client/generated/models/post_public_envelope_complete_document_upload_response_401_error.py +72 -0
  163. subnoto_api_client/generated/models/post_public_envelope_complete_document_upload_response_401_error_code.py +10 -0
  164. subnoto_api_client/generated/models/post_public_envelope_complete_document_upload_response_403.py +86 -0
  165. subnoto_api_client/generated/models/post_public_envelope_complete_document_upload_response_403_error.py +72 -0
  166. subnoto_api_client/generated/models/post_public_envelope_complete_document_upload_response_403_error_code.py +9 -0
  167. subnoto_api_client/generated/models/post_public_envelope_complete_document_upload_response_500.py +86 -0
  168. subnoto_api_client/generated/models/post_public_envelope_complete_document_upload_response_500_error.py +72 -0
  169. subnoto_api_client/generated/models/post_public_envelope_complete_document_upload_response_500_error_code.py +9 -0
  170. subnoto_api_client/generated/models/post_public_envelope_create_body.py +81 -0
  171. subnoto_api_client/generated/models/post_public_envelope_create_from_template_body.py +170 -0
  172. subnoto_api_client/generated/models/post_public_envelope_create_from_template_body_recipients_item_type_0.py +99 -0
  173. subnoto_api_client/generated/models/post_public_envelope_create_from_template_body_recipients_item_type_0_type.py +8 -0
  174. subnoto_api_client/generated/models/post_public_envelope_create_from_template_body_recipients_item_type_1.py +83 -0
  175. subnoto_api_client/generated/models/post_public_envelope_create_from_template_body_recipients_item_type_1_type.py +8 -0
  176. subnoto_api_client/generated/models/post_public_envelope_create_from_template_body_recipients_item_type_2.py +83 -0
  177. subnoto_api_client/generated/models/post_public_envelope_create_from_template_body_recipients_item_type_2_type.py +8 -0
  178. subnoto_api_client/generated/models/post_public_envelope_create_from_template_response_200.py +50 -0
  179. subnoto_api_client/generated/models/post_public_envelope_create_from_template_response_400.py +86 -0
  180. subnoto_api_client/generated/models/post_public_envelope_create_from_template_response_400_error.py +70 -0
  181. subnoto_api_client/generated/models/post_public_envelope_create_from_template_response_400_error_code.py +13 -0
  182. subnoto_api_client/generated/models/post_public_envelope_create_from_template_response_401.py +86 -0
  183. subnoto_api_client/generated/models/post_public_envelope_create_from_template_response_401_error.py +70 -0
  184. subnoto_api_client/generated/models/post_public_envelope_create_from_template_response_401_error_code.py +10 -0
  185. subnoto_api_client/generated/models/post_public_envelope_create_from_template_response_403.py +86 -0
  186. subnoto_api_client/generated/models/post_public_envelope_create_from_template_response_403_error.py +70 -0
  187. subnoto_api_client/generated/models/post_public_envelope_create_from_template_response_403_error_code.py +9 -0
  188. subnoto_api_client/generated/models/post_public_envelope_create_from_template_response_500.py +86 -0
  189. subnoto_api_client/generated/models/post_public_envelope_create_from_template_response_500_error.py +70 -0
  190. subnoto_api_client/generated/models/post_public_envelope_create_from_template_response_500_error_code.py +9 -0
  191. subnoto_api_client/generated/models/post_public_envelope_create_response_200.py +95 -0
  192. subnoto_api_client/generated/models/post_public_envelope_create_response_200_presigned_s3_params.py +63 -0
  193. subnoto_api_client/generated/models/post_public_envelope_create_response_200_presigned_s3_params_fields.py +99 -0
  194. subnoto_api_client/generated/models/post_public_envelope_create_response_400.py +84 -0
  195. subnoto_api_client/generated/models/post_public_envelope_create_response_400_error.py +70 -0
  196. subnoto_api_client/generated/models/post_public_envelope_create_response_400_error_code.py +12 -0
  197. subnoto_api_client/generated/models/post_public_envelope_create_response_401.py +84 -0
  198. subnoto_api_client/generated/models/post_public_envelope_create_response_401_error.py +70 -0
  199. subnoto_api_client/generated/models/post_public_envelope_create_response_401_error_code.py +10 -0
  200. subnoto_api_client/generated/models/post_public_envelope_create_response_403.py +84 -0
  201. subnoto_api_client/generated/models/post_public_envelope_create_response_403_error.py +70 -0
  202. subnoto_api_client/generated/models/post_public_envelope_create_response_403_error_code.py +9 -0
  203. subnoto_api_client/generated/models/post_public_envelope_create_response_500.py +84 -0
  204. subnoto_api_client/generated/models/post_public_envelope_create_response_500_error.py +70 -0
  205. subnoto_api_client/generated/models/post_public_envelope_create_response_500_error_code.py +9 -0
  206. subnoto_api_client/generated/models/post_public_envelope_delete_blocks_body.py +85 -0
  207. subnoto_api_client/generated/models/post_public_envelope_delete_blocks_response_200.py +42 -0
  208. subnoto_api_client/generated/models/post_public_envelope_delete_blocks_response_400.py +84 -0
  209. subnoto_api_client/generated/models/post_public_envelope_delete_blocks_response_400_error.py +70 -0
  210. subnoto_api_client/generated/models/post_public_envelope_delete_blocks_response_400_error_code.py +12 -0
  211. subnoto_api_client/generated/models/post_public_envelope_delete_blocks_response_401.py +84 -0
  212. subnoto_api_client/generated/models/post_public_envelope_delete_blocks_response_401_error.py +70 -0
  213. subnoto_api_client/generated/models/post_public_envelope_delete_blocks_response_401_error_code.py +10 -0
  214. subnoto_api_client/generated/models/post_public_envelope_delete_blocks_response_403.py +84 -0
  215. subnoto_api_client/generated/models/post_public_envelope_delete_blocks_response_403_error.py +70 -0
  216. subnoto_api_client/generated/models/post_public_envelope_delete_blocks_response_403_error_code.py +9 -0
  217. subnoto_api_client/generated/models/post_public_envelope_delete_blocks_response_500.py +84 -0
  218. subnoto_api_client/generated/models/post_public_envelope_delete_blocks_response_500_error.py +70 -0
  219. subnoto_api_client/generated/models/post_public_envelope_delete_blocks_response_500_error_code.py +9 -0
  220. subnoto_api_client/generated/models/post_public_envelope_delete_body.py +69 -0
  221. subnoto_api_client/generated/models/post_public_envelope_delete_recipients_body.py +99 -0
  222. subnoto_api_client/generated/models/post_public_envelope_delete_recipients_body_recipients_item.py +61 -0
  223. subnoto_api_client/generated/models/post_public_envelope_delete_recipients_response_200.py +24 -0
  224. subnoto_api_client/generated/models/post_public_envelope_delete_recipients_response_400.py +86 -0
  225. subnoto_api_client/generated/models/post_public_envelope_delete_recipients_response_400_error.py +70 -0
  226. subnoto_api_client/generated/models/post_public_envelope_delete_recipients_response_400_error_code.py +12 -0
  227. subnoto_api_client/generated/models/post_public_envelope_delete_recipients_response_401.py +86 -0
  228. subnoto_api_client/generated/models/post_public_envelope_delete_recipients_response_401_error.py +70 -0
  229. subnoto_api_client/generated/models/post_public_envelope_delete_recipients_response_401_error_code.py +10 -0
  230. subnoto_api_client/generated/models/post_public_envelope_delete_recipients_response_403.py +86 -0
  231. subnoto_api_client/generated/models/post_public_envelope_delete_recipients_response_403_error.py +70 -0
  232. subnoto_api_client/generated/models/post_public_envelope_delete_recipients_response_403_error_code.py +9 -0
  233. subnoto_api_client/generated/models/post_public_envelope_delete_recipients_response_500.py +86 -0
  234. subnoto_api_client/generated/models/post_public_envelope_delete_recipients_response_500_error.py +70 -0
  235. subnoto_api_client/generated/models/post_public_envelope_delete_recipients_response_500_error_code.py +9 -0
  236. subnoto_api_client/generated/models/post_public_envelope_delete_response_200.py +24 -0
  237. subnoto_api_client/generated/models/post_public_envelope_delete_response_400.py +84 -0
  238. subnoto_api_client/generated/models/post_public_envelope_delete_response_400_error.py +70 -0
  239. subnoto_api_client/generated/models/post_public_envelope_delete_response_400_error_code.py +10 -0
  240. subnoto_api_client/generated/models/post_public_envelope_delete_response_401.py +84 -0
  241. subnoto_api_client/generated/models/post_public_envelope_delete_response_401_error.py +70 -0
  242. subnoto_api_client/generated/models/post_public_envelope_delete_response_401_error_code.py +10 -0
  243. subnoto_api_client/generated/models/post_public_envelope_delete_response_403.py +84 -0
  244. subnoto_api_client/generated/models/post_public_envelope_delete_response_403_error.py +70 -0
  245. subnoto_api_client/generated/models/post_public_envelope_delete_response_403_error_code.py +9 -0
  246. subnoto_api_client/generated/models/post_public_envelope_delete_response_500.py +84 -0
  247. subnoto_api_client/generated/models/post_public_envelope_delete_response_500_error.py +70 -0
  248. subnoto_api_client/generated/models/post_public_envelope_delete_response_500_error_code.py +9 -0
  249. subnoto_api_client/generated/models/post_public_envelope_get_body.py +69 -0
  250. subnoto_api_client/generated/models/post_public_envelope_get_document_body.py +77 -0
  251. subnoto_api_client/generated/models/post_public_envelope_get_document_response_400.py +84 -0
  252. subnoto_api_client/generated/models/post_public_envelope_get_document_response_400_error.py +70 -0
  253. subnoto_api_client/generated/models/post_public_envelope_get_document_response_400_error_code.py +13 -0
  254. subnoto_api_client/generated/models/post_public_envelope_get_document_response_401.py +84 -0
  255. subnoto_api_client/generated/models/post_public_envelope_get_document_response_401_error.py +70 -0
  256. subnoto_api_client/generated/models/post_public_envelope_get_document_response_401_error_code.py +10 -0
  257. subnoto_api_client/generated/models/post_public_envelope_get_document_response_403.py +84 -0
  258. subnoto_api_client/generated/models/post_public_envelope_get_document_response_403_error.py +70 -0
  259. subnoto_api_client/generated/models/post_public_envelope_get_document_response_403_error_code.py +9 -0
  260. subnoto_api_client/generated/models/post_public_envelope_get_document_response_500.py +84 -0
  261. subnoto_api_client/generated/models/post_public_envelope_get_document_response_500_error.py +70 -0
  262. subnoto_api_client/generated/models/post_public_envelope_get_document_response_500_error_code.py +9 -0
  263. subnoto_api_client/generated/models/post_public_envelope_get_proof_body.py +69 -0
  264. subnoto_api_client/generated/models/post_public_envelope_get_proof_response_400.py +84 -0
  265. subnoto_api_client/generated/models/post_public_envelope_get_proof_response_400_error.py +70 -0
  266. subnoto_api_client/generated/models/post_public_envelope_get_proof_response_400_error_code.py +13 -0
  267. subnoto_api_client/generated/models/post_public_envelope_get_proof_response_401.py +84 -0
  268. subnoto_api_client/generated/models/post_public_envelope_get_proof_response_401_error.py +70 -0
  269. subnoto_api_client/generated/models/post_public_envelope_get_proof_response_401_error_code.py +10 -0
  270. subnoto_api_client/generated/models/post_public_envelope_get_proof_response_403.py +84 -0
  271. subnoto_api_client/generated/models/post_public_envelope_get_proof_response_403_error.py +70 -0
  272. subnoto_api_client/generated/models/post_public_envelope_get_proof_response_403_error_code.py +9 -0
  273. subnoto_api_client/generated/models/post_public_envelope_get_proof_response_500.py +84 -0
  274. subnoto_api_client/generated/models/post_public_envelope_get_proof_response_500_error.py +70 -0
  275. subnoto_api_client/generated/models/post_public_envelope_get_proof_response_500_error_code.py +9 -0
  276. subnoto_api_client/generated/models/post_public_envelope_get_response_200.py +170 -0
  277. subnoto_api_client/generated/models/post_public_envelope_get_response_200_documents_item.py +106 -0
  278. subnoto_api_client/generated/models/post_public_envelope_get_response_200_documents_item_blocks.py +162 -0
  279. subnoto_api_client/generated/models/post_public_envelope_get_response_200_documents_item_blocks_additional_property_item_type_0.py +236 -0
  280. subnoto_api_client/generated/models/post_public_envelope_get_response_200_documents_item_blocks_additional_property_item_type_0_color.py +15 -0
  281. subnoto_api_client/generated/models/post_public_envelope_get_response_200_documents_item_blocks_additional_property_item_type_0_label_icon.py +14 -0
  282. subnoto_api_client/generated/models/post_public_envelope_get_response_200_documents_item_blocks_additional_property_item_type_0_templated_text.py +12 -0
  283. subnoto_api_client/generated/models/post_public_envelope_get_response_200_documents_item_blocks_additional_property_item_type_0_type.py +10 -0
  284. subnoto_api_client/generated/models/post_public_envelope_get_response_200_documents_item_blocks_additional_property_item_type_1.py +207 -0
  285. subnoto_api_client/generated/models/post_public_envelope_get_response_200_documents_item_blocks_additional_property_item_type_1_color.py +15 -0
  286. subnoto_api_client/generated/models/post_public_envelope_get_response_200_documents_item_blocks_additional_property_item_type_1_label_icon.py +14 -0
  287. subnoto_api_client/generated/models/post_public_envelope_get_response_200_documents_item_blocks_additional_property_item_type_1_type.py +10 -0
  288. subnoto_api_client/generated/models/post_public_envelope_get_response_200_documents_item_blocks_additional_property_item_type_2.py +191 -0
  289. subnoto_api_client/generated/models/post_public_envelope_get_response_200_documents_item_blocks_additional_property_item_type_2_color.py +15 -0
  290. subnoto_api_client/generated/models/post_public_envelope_get_response_200_documents_item_blocks_additional_property_item_type_2_label_icon.py +14 -0
  291. subnoto_api_client/generated/models/post_public_envelope_get_response_200_documents_item_blocks_additional_property_item_type_2_type.py +10 -0
  292. subnoto_api_client/generated/models/post_public_envelope_get_response_200_metrics.py +66 -0
  293. subnoto_api_client/generated/models/post_public_envelope_get_response_200_owner.py +93 -0
  294. subnoto_api_client/generated/models/post_public_envelope_get_response_200_sender.py +51 -0
  295. subnoto_api_client/generated/models/post_public_envelope_get_response_200_status.py +14 -0
  296. subnoto_api_client/generated/models/post_public_envelope_get_response_400.py +84 -0
  297. subnoto_api_client/generated/models/post_public_envelope_get_response_400_error.py +70 -0
  298. subnoto_api_client/generated/models/post_public_envelope_get_response_400_error_code.py +10 -0
  299. subnoto_api_client/generated/models/post_public_envelope_get_response_401.py +84 -0
  300. subnoto_api_client/generated/models/post_public_envelope_get_response_401_error.py +70 -0
  301. subnoto_api_client/generated/models/post_public_envelope_get_response_401_error_code.py +10 -0
  302. subnoto_api_client/generated/models/post_public_envelope_get_response_403.py +84 -0
  303. subnoto_api_client/generated/models/post_public_envelope_get_response_403_error.py +70 -0
  304. subnoto_api_client/generated/models/post_public_envelope_get_response_403_error_code.py +9 -0
  305. subnoto_api_client/generated/models/post_public_envelope_get_response_500.py +84 -0
  306. subnoto_api_client/generated/models/post_public_envelope_get_response_500_error.py +70 -0
  307. subnoto_api_client/generated/models/post_public_envelope_get_response_500_error_code.py +9 -0
  308. subnoto_api_client/generated/models/post_public_envelope_list_body.py +82 -0
  309. subnoto_api_client/generated/models/post_public_envelope_list_response_200.py +62 -0
  310. subnoto_api_client/generated/models/post_public_envelope_list_response_200_envelopes_item.py +144 -0
  311. subnoto_api_client/generated/models/post_public_envelope_list_response_200_envelopes_item_metrics.py +67 -0
  312. subnoto_api_client/generated/models/post_public_envelope_list_response_200_envelopes_item_owner.py +79 -0
  313. subnoto_api_client/generated/models/post_public_envelope_list_response_200_envelopes_item_status.py +14 -0
  314. subnoto_api_client/generated/models/post_public_envelope_list_response_401.py +84 -0
  315. subnoto_api_client/generated/models/post_public_envelope_list_response_401_error.py +70 -0
  316. subnoto_api_client/generated/models/post_public_envelope_list_response_401_error_code.py +10 -0
  317. subnoto_api_client/generated/models/post_public_envelope_list_response_403.py +84 -0
  318. subnoto_api_client/generated/models/post_public_envelope_list_response_403_error.py +70 -0
  319. subnoto_api_client/generated/models/post_public_envelope_list_response_403_error_code.py +9 -0
  320. subnoto_api_client/generated/models/post_public_envelope_list_response_500.py +84 -0
  321. subnoto_api_client/generated/models/post_public_envelope_list_response_500_error.py +70 -0
  322. subnoto_api_client/generated/models/post_public_envelope_list_response_500_error_code.py +9 -0
  323. subnoto_api_client/generated/models/post_public_envelope_send_body.py +90 -0
  324. subnoto_api_client/generated/models/post_public_envelope_send_response_200.py +24 -0
  325. subnoto_api_client/generated/models/post_public_envelope_send_response_400.py +84 -0
  326. subnoto_api_client/generated/models/post_public_envelope_send_response_400_error.py +70 -0
  327. subnoto_api_client/generated/models/post_public_envelope_send_response_400_error_code.py +15 -0
  328. subnoto_api_client/generated/models/post_public_envelope_send_response_401.py +84 -0
  329. subnoto_api_client/generated/models/post_public_envelope_send_response_401_error.py +70 -0
  330. subnoto_api_client/generated/models/post_public_envelope_send_response_401_error_code.py +10 -0
  331. subnoto_api_client/generated/models/post_public_envelope_send_response_403.py +84 -0
  332. subnoto_api_client/generated/models/post_public_envelope_send_response_403_error.py +70 -0
  333. subnoto_api_client/generated/models/post_public_envelope_send_response_403_error_code.py +9 -0
  334. subnoto_api_client/generated/models/post_public_envelope_send_response_500.py +84 -0
  335. subnoto_api_client/generated/models/post_public_envelope_send_response_500_error.py +70 -0
  336. subnoto_api_client/generated/models/post_public_envelope_send_response_500_error_code.py +9 -0
  337. subnoto_api_client/generated/models/post_public_envelope_sign_body.py +88 -0
  338. subnoto_api_client/generated/models/post_public_envelope_sign_response_200.py +58 -0
  339. subnoto_api_client/generated/models/post_public_envelope_sign_response_400.py +84 -0
  340. subnoto_api_client/generated/models/post_public_envelope_sign_response_400_error.py +70 -0
  341. subnoto_api_client/generated/models/post_public_envelope_sign_response_400_error_code.py +16 -0
  342. subnoto_api_client/generated/models/post_public_envelope_sign_response_401.py +84 -0
  343. subnoto_api_client/generated/models/post_public_envelope_sign_response_401_error.py +70 -0
  344. subnoto_api_client/generated/models/post_public_envelope_sign_response_401_error_code.py +10 -0
  345. subnoto_api_client/generated/models/post_public_envelope_sign_response_403.py +84 -0
  346. subnoto_api_client/generated/models/post_public_envelope_sign_response_403_error.py +70 -0
  347. subnoto_api_client/generated/models/post_public_envelope_sign_response_403_error_code.py +9 -0
  348. subnoto_api_client/generated/models/post_public_envelope_sign_response_500.py +84 -0
  349. subnoto_api_client/generated/models/post_public_envelope_sign_response_500_error.py +70 -0
  350. subnoto_api_client/generated/models/post_public_envelope_sign_response_500_error_code.py +9 -0
  351. subnoto_api_client/generated/models/post_public_template_list_body.py +52 -0
  352. subnoto_api_client/generated/models/post_public_template_list_response_200.py +62 -0
  353. subnoto_api_client/generated/models/post_public_template_list_response_200_templates_item.py +174 -0
  354. subnoto_api_client/generated/models/post_public_template_list_response_200_templates_item_documents_item.py +50 -0
  355. subnoto_api_client/generated/models/post_public_template_list_response_200_templates_item_owner.py +79 -0
  356. subnoto_api_client/generated/models/post_public_template_list_response_200_templates_item_recipients_item.py +42 -0
  357. subnoto_api_client/generated/models/post_public_template_list_response_200_templates_item_status.py +11 -0
  358. subnoto_api_client/generated/models/post_public_template_list_response_401.py +84 -0
  359. subnoto_api_client/generated/models/post_public_template_list_response_401_error.py +70 -0
  360. subnoto_api_client/generated/models/post_public_template_list_response_401_error_code.py +10 -0
  361. subnoto_api_client/generated/models/post_public_template_list_response_403.py +84 -0
  362. subnoto_api_client/generated/models/post_public_template_list_response_403_error.py +70 -0
  363. subnoto_api_client/generated/models/post_public_template_list_response_403_error_code.py +9 -0
  364. subnoto_api_client/generated/models/post_public_template_list_response_500.py +84 -0
  365. subnoto_api_client/generated/models/post_public_template_list_response_500_error.py +70 -0
  366. subnoto_api_client/generated/models/post_public_template_list_response_500_error_code.py +9 -0
  367. subnoto_api_client/generated/models/post_public_utils_whoami_body.py +46 -0
  368. subnoto_api_client/generated/models/post_public_utils_whoami_response_200.py +74 -0
  369. subnoto_api_client/generated/models/post_public_utils_whoami_response_401.py +84 -0
  370. subnoto_api_client/generated/models/post_public_utils_whoami_response_401_error.py +70 -0
  371. subnoto_api_client/generated/models/post_public_utils_whoami_response_401_error_code.py +10 -0
  372. subnoto_api_client/generated/models/post_public_utils_whoami_response_403.py +84 -0
  373. subnoto_api_client/generated/models/post_public_utils_whoami_response_403_error.py +70 -0
  374. subnoto_api_client/generated/models/post_public_utils_whoami_response_403_error_code.py +9 -0
  375. subnoto_api_client/generated/models/post_public_utils_whoami_response_500.py +84 -0
  376. subnoto_api_client/generated/models/post_public_utils_whoami_response_500_error.py +70 -0
  377. subnoto_api_client/generated/models/post_public_utils_whoami_response_500_error_code.py +9 -0
  378. subnoto_api_client/generated/models/post_public_workspace_list_body.py +46 -0
  379. subnoto_api_client/generated/models/post_public_workspace_list_response_200.py +64 -0
  380. subnoto_api_client/generated/models/post_public_workspace_list_response_200_workspaces_item.py +74 -0
  381. subnoto_api_client/generated/models/post_public_workspace_list_response_401.py +84 -0
  382. subnoto_api_client/generated/models/post_public_workspace_list_response_401_error.py +70 -0
  383. subnoto_api_client/generated/models/post_public_workspace_list_response_401_error_code.py +10 -0
  384. subnoto_api_client/generated/models/post_public_workspace_list_response_403.py +84 -0
  385. subnoto_api_client/generated/models/post_public_workspace_list_response_403_error.py +70 -0
  386. subnoto_api_client/generated/models/post_public_workspace_list_response_403_error_code.py +9 -0
  387. subnoto_api_client/generated/models/post_public_workspace_list_response_500.py +84 -0
  388. subnoto_api_client/generated/models/post_public_workspace_list_response_500_error.py +70 -0
  389. subnoto_api_client/generated/models/post_public_workspace_list_response_500_error_code.py +9 -0
  390. subnoto_api_client/generated/types.py +54 -0
  391. subnoto_api_client/middleware/__init__.py +15 -0
  392. subnoto_api_client/middleware/signature_utils.py +128 -0
  393. subnoto_api_client/middleware/tunnel.py +119 -0
  394. subnoto_api_client/session.py +239 -0
  395. subnoto_api_client/transport.py +156 -0
  396. subnoto_api_client/types.py +43 -0
  397. subnoto_api_client-0.0.99.dist-info/METADATA +81 -0
  398. subnoto_api_client-0.0.99.dist-info/RECORD +399 -0
  399. subnoto_api_client-0.0.99.dist-info/WHEEL +4 -0
Binary file
@@ -0,0 +1,23 @@
1
+ # Copyright 2025 Subnoto
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+ #
15
+
16
+ from .client import SubnotoClient
17
+ from .types import SubnotoConfig, SubnotoError
18
+
19
+ # Re-export generated API modules
20
+ from .generated import api, models
21
+
22
+ __all__ = ["SubnotoClient", "SubnotoConfig", "SubnotoError", "api", "models"]
23
+
@@ -0,0 +1,155 @@
1
+ # Copyright 2025 Subnoto
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+ #
15
+
16
+ from typing import Any, Dict, Optional
17
+
18
+ import httpx
19
+
20
+ from .session import SessionManager
21
+ from .transport import TunnelTransport
22
+ from .types import SubnotoConfig
23
+ from .generated.client import Client as GeneratedClient
24
+
25
+
26
+ class GeneratedClientWrapper:
27
+ """Wrapper to make our httpx client compatible with generated client expectations"""
28
+
29
+ def __init__(self, httpx_client: httpx.AsyncClient):
30
+ self._httpx_client = httpx_client
31
+ self.raise_on_unexpected_status = False
32
+
33
+ def get_async_httpx_client(self) -> httpx.AsyncClient:
34
+ return self._httpx_client
35
+
36
+ def get_httpx_client(self) -> httpx.Client:
37
+ raise NotImplementedError("Synchronous client not supported")
38
+
39
+
40
+ class SubnotoClient:
41
+ """
42
+ Subnoto API client with Oak tunnel encryption and HTTP signature authentication
43
+
44
+ This is a wrapper around the generated OpenAPI client that adds:
45
+ - Oak tunnel encryption for secure communication
46
+ - HTTP signature authentication (RFC 9421)
47
+ - Session management with attestation support
48
+
49
+ You can use the generated API functions directly:
50
+ from subnoto_api_client.api.utils import post_public_utils_whoami
51
+ response = await post_public_utils_whoami.asyncio(client=client, body={})
52
+
53
+ Or use the lower-level httpx methods:
54
+ response = await client.get("/public/utils/whoami")
55
+ """
56
+
57
+ def __init__(self, config: SubnotoConfig):
58
+ self.config = config
59
+
60
+ # Create session manager first (without http_client)
61
+ self.session_manager = SessionManager(config)
62
+
63
+ # Create custom transport with tunnel encryption and signatures
64
+ transport = TunnelTransport(
65
+ self.session_manager,
66
+ config.access_key,
67
+ config.secret_key
68
+ )
69
+
70
+ # Create httpx client with custom transport
71
+ self._client = httpx.AsyncClient(
72
+ base_url=config.api_base_url,
73
+ transport=transport,
74
+ timeout=30.0
75
+ )
76
+
77
+ # Now give the session manager our signed client for handshakes
78
+ self.session_manager.http_client = self._client
79
+
80
+ # Create wrapper for generated client compatibility
81
+ self.generated = GeneratedClientWrapper(self._client)
82
+
83
+ async def __aenter__(self):
84
+ """Async context manager entry"""
85
+ return self
86
+
87
+ async def __aexit__(self, exc_type, exc_val, exc_tb):
88
+ """Async context manager exit"""
89
+ await self.close()
90
+
91
+ async def close(self) -> None:
92
+ """Close the client and cleanup resources"""
93
+ await self._client.aclose()
94
+ self.session_manager.destroy()
95
+
96
+ async def get(
97
+ self,
98
+ path: str,
99
+ *,
100
+ params: Optional[Dict[str, Any]] = None,
101
+ headers: Optional[Dict[str, str]] = None
102
+ ) -> httpx.Response:
103
+ """Make a GET request"""
104
+ return await self._client.get(path, params=params, headers=headers)
105
+
106
+ async def post(
107
+ self,
108
+ path: str,
109
+ *,
110
+ json: Optional[Dict[str, Any]] = None,
111
+ data: Optional[bytes] = None,
112
+ headers: Optional[Dict[str, str]] = None
113
+ ) -> httpx.Response:
114
+ """Make a POST request"""
115
+ return await self._client.post(path, json=json, content=data, headers=headers)
116
+
117
+ async def put(
118
+ self,
119
+ path: str,
120
+ *,
121
+ json: Optional[Dict[str, Any]] = None,
122
+ data: Optional[bytes] = None,
123
+ headers: Optional[Dict[str, str]] = None
124
+ ) -> httpx.Response:
125
+ """Make a PUT request"""
126
+ return await self._client.put(path, json=json, content=data, headers=headers)
127
+
128
+ async def delete(
129
+ self,
130
+ path: str,
131
+ *,
132
+ headers: Optional[Dict[str, str]] = None
133
+ ) -> httpx.Response:
134
+ """Make a DELETE request"""
135
+ return await self._client.delete(path, headers=headers)
136
+
137
+ async def patch(
138
+ self,
139
+ path: str,
140
+ *,
141
+ json: Optional[Dict[str, Any]] = None,
142
+ data: Optional[bytes] = None,
143
+ headers: Optional[Dict[str, str]] = None
144
+ ) -> httpx.Response:
145
+ """Make a PATCH request"""
146
+ return await self._client.patch(path, json=json, content=data, headers=headers)
147
+
148
+ def get_attestation_results(self) -> Optional[str]:
149
+ """Get attestation results as JSON string"""
150
+ return self.session_manager.get_attestation_results()
151
+
152
+ def get_attestation_status(self) -> Optional[str]:
153
+ """Get attestation status as JSON string"""
154
+ return self.session_manager.get_attestation_status()
155
+
@@ -0,0 +1,8 @@
1
+ """A client library for accessing Subnoto Public API"""
2
+
3
+ from .client import AuthenticatedClient, Client
4
+
5
+ __all__ = (
6
+ "AuthenticatedClient",
7
+ "Client",
8
+ )
@@ -0,0 +1 @@
1
+ """Contains methods for accessing the API"""
@@ -0,0 +1 @@
1
+ """Contains endpoint functions for accessing the API"""
@@ -0,0 +1,241 @@
1
+ from http import HTTPStatus
2
+ from typing import Any
3
+
4
+ import httpx
5
+
6
+ from ... import errors
7
+ from ...client import AuthenticatedClient, Client
8
+ from ...models.post_public_contact_create_body import PostPublicContactCreateBody
9
+ from ...models.post_public_contact_create_response_200 import (
10
+ PostPublicContactCreateResponse200,
11
+ )
12
+ from ...models.post_public_contact_create_response_400 import (
13
+ PostPublicContactCreateResponse400,
14
+ )
15
+ from ...models.post_public_contact_create_response_401 import (
16
+ PostPublicContactCreateResponse401,
17
+ )
18
+ from ...models.post_public_contact_create_response_403 import (
19
+ PostPublicContactCreateResponse403,
20
+ )
21
+ from ...models.post_public_contact_create_response_500 import (
22
+ PostPublicContactCreateResponse500,
23
+ )
24
+ from ...types import Response
25
+
26
+
27
+ def _get_kwargs(
28
+ *,
29
+ body: PostPublicContactCreateBody,
30
+ ) -> dict[str, Any]:
31
+ headers: dict[str, Any] = {}
32
+
33
+ _kwargs: dict[str, Any] = {
34
+ "method": "post",
35
+ "url": "/public/contact/create",
36
+ }
37
+
38
+ _kwargs["json"] = body.to_dict()
39
+
40
+ headers["Content-Type"] = "application/json"
41
+
42
+ _kwargs["headers"] = headers
43
+ return _kwargs
44
+
45
+
46
+ def _parse_response(
47
+ *, client: AuthenticatedClient | Client, response: httpx.Response
48
+ ) -> (
49
+ PostPublicContactCreateResponse200
50
+ | PostPublicContactCreateResponse400
51
+ | PostPublicContactCreateResponse401
52
+ | PostPublicContactCreateResponse403
53
+ | PostPublicContactCreateResponse500
54
+ | None
55
+ ):
56
+ if response.status_code == 200:
57
+ response_200 = PostPublicContactCreateResponse200.from_dict(response.json())
58
+
59
+ return response_200
60
+
61
+ if response.status_code == 400:
62
+ response_400 = PostPublicContactCreateResponse400.from_dict(response.json())
63
+
64
+ return response_400
65
+
66
+ if response.status_code == 401:
67
+ response_401 = PostPublicContactCreateResponse401.from_dict(response.json())
68
+
69
+ return response_401
70
+
71
+ if response.status_code == 403:
72
+ response_403 = PostPublicContactCreateResponse403.from_dict(response.json())
73
+
74
+ return response_403
75
+
76
+ if response.status_code == 500:
77
+ response_500 = PostPublicContactCreateResponse500.from_dict(response.json())
78
+
79
+ return response_500
80
+
81
+ if client.raise_on_unexpected_status:
82
+ raise errors.UnexpectedStatus(response.status_code, response.content)
83
+ else:
84
+ return None
85
+
86
+
87
+ def _build_response(
88
+ *, client: AuthenticatedClient | Client, response: httpx.Response
89
+ ) -> Response[
90
+ PostPublicContactCreateResponse200
91
+ | PostPublicContactCreateResponse400
92
+ | PostPublicContactCreateResponse401
93
+ | PostPublicContactCreateResponse403
94
+ | PostPublicContactCreateResponse500
95
+ ]:
96
+ return Response(
97
+ status_code=HTTPStatus(response.status_code),
98
+ content=response.content,
99
+ headers=response.headers,
100
+ parsed=_parse_response(client=client, response=response),
101
+ )
102
+
103
+
104
+ def sync_detailed(
105
+ *,
106
+ client: AuthenticatedClient | Client,
107
+ body: PostPublicContactCreateBody,
108
+ ) -> Response[
109
+ PostPublicContactCreateResponse200
110
+ | PostPublicContactCreateResponse400
111
+ | PostPublicContactCreateResponse401
112
+ | PostPublicContactCreateResponse403
113
+ | PostPublicContactCreateResponse500
114
+ ]:
115
+ """create
116
+
117
+ Create a contact inside the workspace.
118
+
119
+ Args:
120
+ body (PostPublicContactCreateBody):
121
+
122
+ Raises:
123
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
124
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
125
+
126
+ Returns:
127
+ Response[PostPublicContactCreateResponse200 | PostPublicContactCreateResponse400 | PostPublicContactCreateResponse401 | PostPublicContactCreateResponse403 | PostPublicContactCreateResponse500]
128
+ """
129
+
130
+ kwargs = _get_kwargs(
131
+ body=body,
132
+ )
133
+
134
+ response = client.get_httpx_client().request(
135
+ **kwargs,
136
+ )
137
+
138
+ return _build_response(client=client, response=response)
139
+
140
+
141
+ def sync(
142
+ *,
143
+ client: AuthenticatedClient | Client,
144
+ body: PostPublicContactCreateBody,
145
+ ) -> (
146
+ PostPublicContactCreateResponse200
147
+ | PostPublicContactCreateResponse400
148
+ | PostPublicContactCreateResponse401
149
+ | PostPublicContactCreateResponse403
150
+ | PostPublicContactCreateResponse500
151
+ | None
152
+ ):
153
+ """create
154
+
155
+ Create a contact inside the workspace.
156
+
157
+ Args:
158
+ body (PostPublicContactCreateBody):
159
+
160
+ Raises:
161
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
162
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
163
+
164
+ Returns:
165
+ PostPublicContactCreateResponse200 | PostPublicContactCreateResponse400 | PostPublicContactCreateResponse401 | PostPublicContactCreateResponse403 | PostPublicContactCreateResponse500
166
+ """
167
+
168
+ return sync_detailed(
169
+ client=client,
170
+ body=body,
171
+ ).parsed
172
+
173
+
174
+ async def asyncio_detailed(
175
+ *,
176
+ client: AuthenticatedClient | Client,
177
+ body: PostPublicContactCreateBody,
178
+ ) -> Response[
179
+ PostPublicContactCreateResponse200
180
+ | PostPublicContactCreateResponse400
181
+ | PostPublicContactCreateResponse401
182
+ | PostPublicContactCreateResponse403
183
+ | PostPublicContactCreateResponse500
184
+ ]:
185
+ """create
186
+
187
+ Create a contact inside the workspace.
188
+
189
+ Args:
190
+ body (PostPublicContactCreateBody):
191
+
192
+ Raises:
193
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
194
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
195
+
196
+ Returns:
197
+ Response[PostPublicContactCreateResponse200 | PostPublicContactCreateResponse400 | PostPublicContactCreateResponse401 | PostPublicContactCreateResponse403 | PostPublicContactCreateResponse500]
198
+ """
199
+
200
+ kwargs = _get_kwargs(
201
+ body=body,
202
+ )
203
+
204
+ response = await client.get_async_httpx_client().request(**kwargs)
205
+
206
+ return _build_response(client=client, response=response)
207
+
208
+
209
+ async def asyncio(
210
+ *,
211
+ client: AuthenticatedClient | Client,
212
+ body: PostPublicContactCreateBody,
213
+ ) -> (
214
+ PostPublicContactCreateResponse200
215
+ | PostPublicContactCreateResponse400
216
+ | PostPublicContactCreateResponse401
217
+ | PostPublicContactCreateResponse403
218
+ | PostPublicContactCreateResponse500
219
+ | None
220
+ ):
221
+ """create
222
+
223
+ Create a contact inside the workspace.
224
+
225
+ Args:
226
+ body (PostPublicContactCreateBody):
227
+
228
+ Raises:
229
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
230
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
231
+
232
+ Returns:
233
+ PostPublicContactCreateResponse200 | PostPublicContactCreateResponse400 | PostPublicContactCreateResponse401 | PostPublicContactCreateResponse403 | PostPublicContactCreateResponse500
234
+ """
235
+
236
+ return (
237
+ await asyncio_detailed(
238
+ client=client,
239
+ body=body,
240
+ )
241
+ ).parsed
@@ -0,0 +1,241 @@
1
+ from http import HTTPStatus
2
+ from typing import Any
3
+
4
+ import httpx
5
+
6
+ from ... import errors
7
+ from ...client import AuthenticatedClient, Client
8
+ from ...models.post_public_contact_delete_body import PostPublicContactDeleteBody
9
+ from ...models.post_public_contact_delete_response_200 import (
10
+ PostPublicContactDeleteResponse200,
11
+ )
12
+ from ...models.post_public_contact_delete_response_400 import (
13
+ PostPublicContactDeleteResponse400,
14
+ )
15
+ from ...models.post_public_contact_delete_response_401 import (
16
+ PostPublicContactDeleteResponse401,
17
+ )
18
+ from ...models.post_public_contact_delete_response_403 import (
19
+ PostPublicContactDeleteResponse403,
20
+ )
21
+ from ...models.post_public_contact_delete_response_500 import (
22
+ PostPublicContactDeleteResponse500,
23
+ )
24
+ from ...types import Response
25
+
26
+
27
+ def _get_kwargs(
28
+ *,
29
+ body: PostPublicContactDeleteBody,
30
+ ) -> dict[str, Any]:
31
+ headers: dict[str, Any] = {}
32
+
33
+ _kwargs: dict[str, Any] = {
34
+ "method": "post",
35
+ "url": "/public/contact/delete",
36
+ }
37
+
38
+ _kwargs["json"] = body.to_dict()
39
+
40
+ headers["Content-Type"] = "application/json"
41
+
42
+ _kwargs["headers"] = headers
43
+ return _kwargs
44
+
45
+
46
+ def _parse_response(
47
+ *, client: AuthenticatedClient | Client, response: httpx.Response
48
+ ) -> (
49
+ PostPublicContactDeleteResponse200
50
+ | PostPublicContactDeleteResponse400
51
+ | PostPublicContactDeleteResponse401
52
+ | PostPublicContactDeleteResponse403
53
+ | PostPublicContactDeleteResponse500
54
+ | None
55
+ ):
56
+ if response.status_code == 200:
57
+ response_200 = PostPublicContactDeleteResponse200.from_dict(response.json())
58
+
59
+ return response_200
60
+
61
+ if response.status_code == 400:
62
+ response_400 = PostPublicContactDeleteResponse400.from_dict(response.json())
63
+
64
+ return response_400
65
+
66
+ if response.status_code == 401:
67
+ response_401 = PostPublicContactDeleteResponse401.from_dict(response.json())
68
+
69
+ return response_401
70
+
71
+ if response.status_code == 403:
72
+ response_403 = PostPublicContactDeleteResponse403.from_dict(response.json())
73
+
74
+ return response_403
75
+
76
+ if response.status_code == 500:
77
+ response_500 = PostPublicContactDeleteResponse500.from_dict(response.json())
78
+
79
+ return response_500
80
+
81
+ if client.raise_on_unexpected_status:
82
+ raise errors.UnexpectedStatus(response.status_code, response.content)
83
+ else:
84
+ return None
85
+
86
+
87
+ def _build_response(
88
+ *, client: AuthenticatedClient | Client, response: httpx.Response
89
+ ) -> Response[
90
+ PostPublicContactDeleteResponse200
91
+ | PostPublicContactDeleteResponse400
92
+ | PostPublicContactDeleteResponse401
93
+ | PostPublicContactDeleteResponse403
94
+ | PostPublicContactDeleteResponse500
95
+ ]:
96
+ return Response(
97
+ status_code=HTTPStatus(response.status_code),
98
+ content=response.content,
99
+ headers=response.headers,
100
+ parsed=_parse_response(client=client, response=response),
101
+ )
102
+
103
+
104
+ def sync_detailed(
105
+ *,
106
+ client: AuthenticatedClient | Client,
107
+ body: PostPublicContactDeleteBody,
108
+ ) -> Response[
109
+ PostPublicContactDeleteResponse200
110
+ | PostPublicContactDeleteResponse400
111
+ | PostPublicContactDeleteResponse401
112
+ | PostPublicContactDeleteResponse403
113
+ | PostPublicContactDeleteResponse500
114
+ ]:
115
+ """delete
116
+
117
+ Delete a contact inside the workspace.
118
+
119
+ Args:
120
+ body (PostPublicContactDeleteBody):
121
+
122
+ Raises:
123
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
124
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
125
+
126
+ Returns:
127
+ Response[PostPublicContactDeleteResponse200 | PostPublicContactDeleteResponse400 | PostPublicContactDeleteResponse401 | PostPublicContactDeleteResponse403 | PostPublicContactDeleteResponse500]
128
+ """
129
+
130
+ kwargs = _get_kwargs(
131
+ body=body,
132
+ )
133
+
134
+ response = client.get_httpx_client().request(
135
+ **kwargs,
136
+ )
137
+
138
+ return _build_response(client=client, response=response)
139
+
140
+
141
+ def sync(
142
+ *,
143
+ client: AuthenticatedClient | Client,
144
+ body: PostPublicContactDeleteBody,
145
+ ) -> (
146
+ PostPublicContactDeleteResponse200
147
+ | PostPublicContactDeleteResponse400
148
+ | PostPublicContactDeleteResponse401
149
+ | PostPublicContactDeleteResponse403
150
+ | PostPublicContactDeleteResponse500
151
+ | None
152
+ ):
153
+ """delete
154
+
155
+ Delete a contact inside the workspace.
156
+
157
+ Args:
158
+ body (PostPublicContactDeleteBody):
159
+
160
+ Raises:
161
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
162
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
163
+
164
+ Returns:
165
+ PostPublicContactDeleteResponse200 | PostPublicContactDeleteResponse400 | PostPublicContactDeleteResponse401 | PostPublicContactDeleteResponse403 | PostPublicContactDeleteResponse500
166
+ """
167
+
168
+ return sync_detailed(
169
+ client=client,
170
+ body=body,
171
+ ).parsed
172
+
173
+
174
+ async def asyncio_detailed(
175
+ *,
176
+ client: AuthenticatedClient | Client,
177
+ body: PostPublicContactDeleteBody,
178
+ ) -> Response[
179
+ PostPublicContactDeleteResponse200
180
+ | PostPublicContactDeleteResponse400
181
+ | PostPublicContactDeleteResponse401
182
+ | PostPublicContactDeleteResponse403
183
+ | PostPublicContactDeleteResponse500
184
+ ]:
185
+ """delete
186
+
187
+ Delete a contact inside the workspace.
188
+
189
+ Args:
190
+ body (PostPublicContactDeleteBody):
191
+
192
+ Raises:
193
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
194
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
195
+
196
+ Returns:
197
+ Response[PostPublicContactDeleteResponse200 | PostPublicContactDeleteResponse400 | PostPublicContactDeleteResponse401 | PostPublicContactDeleteResponse403 | PostPublicContactDeleteResponse500]
198
+ """
199
+
200
+ kwargs = _get_kwargs(
201
+ body=body,
202
+ )
203
+
204
+ response = await client.get_async_httpx_client().request(**kwargs)
205
+
206
+ return _build_response(client=client, response=response)
207
+
208
+
209
+ async def asyncio(
210
+ *,
211
+ client: AuthenticatedClient | Client,
212
+ body: PostPublicContactDeleteBody,
213
+ ) -> (
214
+ PostPublicContactDeleteResponse200
215
+ | PostPublicContactDeleteResponse400
216
+ | PostPublicContactDeleteResponse401
217
+ | PostPublicContactDeleteResponse403
218
+ | PostPublicContactDeleteResponse500
219
+ | None
220
+ ):
221
+ """delete
222
+
223
+ Delete a contact inside the workspace.
224
+
225
+ Args:
226
+ body (PostPublicContactDeleteBody):
227
+
228
+ Raises:
229
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
230
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
231
+
232
+ Returns:
233
+ PostPublicContactDeleteResponse200 | PostPublicContactDeleteResponse400 | PostPublicContactDeleteResponse401 | PostPublicContactDeleteResponse403 | PostPublicContactDeleteResponse500
234
+ """
235
+
236
+ return (
237
+ await asyncio_detailed(
238
+ client=client,
239
+ body=body,
240
+ )
241
+ ).parsed