stackos-connectors 0.2.0__tar.gz → 0.2.2__tar.gz

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 (522) hide show
  1. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/PKG-INFO +6 -3
  2. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/README.md +5 -2
  3. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/pyproject.toml +1 -1
  4. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/auth.py +11 -0
  5. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/catalog/index.json +1 -0
  6. stackos_connectors-0.2.2/src/stackos_connectors/connectors/google_search_console/auth.py +19 -0
  7. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_search_console/catalog.json +114 -5
  8. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_search_console/docs/auth.md +12 -0
  9. stackos_connectors-0.2.2/src/stackos_connectors/connectors/quickbooks_online/__init__.py +1 -0
  10. stackos_connectors-0.2.2/src/stackos_connectors/connectors/quickbooks_online/actions.py +110 -0
  11. stackos_connectors-0.2.2/src/stackos_connectors/connectors/quickbooks_online/catalog.json +309 -0
  12. stackos_connectors-0.2.2/src/stackos_connectors/connectors/quickbooks_online/docs/auth.md +13 -0
  13. stackos_connectors-0.2.2/src/stackos_connectors/connectors/quickbooks_online/docs/quickbooks-online.md +24 -0
  14. stackos_connectors-0.2.2/src/stackos_connectors/connectors/quickbooks_online/integration.py +75 -0
  15. stackos_connectors-0.2.2/src/stackos_connectors/connectors/quickbooks_online/response.py +263 -0
  16. stackos_connectors-0.2.2/tests/auth/test_search_console_scopes.py +59 -0
  17. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/catalog/test_presentation.py +2 -1
  18. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/packaging/installed_auth_consumer.py +62 -2
  19. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/packaging/test_grouped_layout.py +1 -1
  20. stackos_connectors-0.2.2/tests/quickbooks_online/conftest.py +57 -0
  21. stackos_connectors-0.2.2/tests/quickbooks_online/test_auth.py +108 -0
  22. stackos_connectors-0.2.2/tests/quickbooks_online/test_reads.py +343 -0
  23. stackos_connectors-0.2.2/tests/web/__init__.py +0 -0
  24. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/.github/workflows/publish.yml +0 -0
  25. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/.gitignore +0 -0
  26. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/LICENSE +0 -0
  27. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/__init__.py +0 -0
  28. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/catalog/schema.json +0 -0
  29. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/catalog.py +0 -0
  30. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/__init__.py +0 -0
  31. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/ahrefs/__init__.py +0 -0
  32. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/ahrefs/actions.py +0 -0
  33. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/ahrefs/assets/icon.png +0 -0
  34. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/ahrefs/catalog.json +0 -0
  35. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/ahrefs/integration.py +0 -0
  36. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/aignc/__init__.py +0 -0
  37. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/aignc/actions.py +0 -0
  38. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/aignc/catalog.json +0 -0
  39. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/aignc/contract.py +0 -0
  40. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/aignc/docs/aignc.md +0 -0
  41. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/aignc/integration.py +0 -0
  42. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/alibaba_wan/__init__.py +0 -0
  43. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/alibaba_wan/actions.py +0 -0
  44. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/alibaba_wan/assets/icon.png +0 -0
  45. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/alibaba_wan/catalog.json +0 -0
  46. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/alibaba_wan/integration.py +0 -0
  47. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/apollo/__init__.py +0 -0
  48. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/apollo/actions.py +0 -0
  49. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/apollo/assets/icon.png +0 -0
  50. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/apollo/catalog.json +0 -0
  51. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/apollo/docs/protocol.md +0 -0
  52. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/aws_s3/__init__.py +0 -0
  53. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/aws_s3/actions.py +0 -0
  54. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/aws_s3/assets/icon.png +0 -0
  55. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/aws_s3/catalog.json +0 -0
  56. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/aws_s3/contract.py +0 -0
  57. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/aws_s3/docs/s3.md +0 -0
  58. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/aws_s3/integration.py +0 -0
  59. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/aws_s3/probe.py +0 -0
  60. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/byteplus_seedance/__init__.py +0 -0
  61. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/byteplus_seedance/actions.py +0 -0
  62. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/byteplus_seedance/catalog.json +0 -0
  63. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/byteplus_seedream/__init__.py +0 -0
  64. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/byteplus_seedream/actions.py +0 -0
  65. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/byteplus_seedream/catalog.json +0 -0
  66. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/byteplus_seedream/probe.py +0 -0
  67. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/clay/__init__.py +0 -0
  68. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/clay/actions.py +0 -0
  69. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/clay/assets/icon.png +0 -0
  70. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/clay/catalog.json +0 -0
  71. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/clay/docs/protocol.md +0 -0
  72. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/cloudflare/__init__.py +0 -0
  73. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/cloudflare/actions.py +0 -0
  74. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/cloudflare/assets/icon.png +0 -0
  75. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/cloudflare/catalog.json +0 -0
  76. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/cloudflare/docs/cloudflare-dns.md +0 -0
  77. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/cloudflare/integration.py +0 -0
  78. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/dataforseo/__init__.py +0 -0
  79. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/dataforseo/actions.py +0 -0
  80. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/dataforseo/assets/icon.jpeg +0 -0
  81. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/dataforseo/catalog.json +0 -0
  82. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/dataforseo/integration.py +0 -0
  83. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/dataforseo/probe.py +0 -0
  84. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/firecrawl/__init__.py +0 -0
  85. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/firecrawl/actions.py +0 -0
  86. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/firecrawl/assets/icon.png +0 -0
  87. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/firecrawl/catalog.json +0 -0
  88. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/firecrawl/integration.py +0 -0
  89. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/ftp/__init__.py +0 -0
  90. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/ftp/actions.py +0 -0
  91. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/ftp/assets/icon.svg +0 -0
  92. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/ftp/catalog.json +0 -0
  93. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/ftp/docs/ftp.md +0 -0
  94. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/ftp/integration.py +0 -0
  95. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/ftp/probe.py +0 -0
  96. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/ftp/remote_tree.py +0 -0
  97. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/ghost/__init__.py +0 -0
  98. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/ghost/actions.py +0 -0
  99. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/ghost/assets/icon.png +0 -0
  100. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/ghost/catalog.json +0 -0
  101. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/ghost/integration.py +0 -0
  102. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/ghost/probe.py +0 -0
  103. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_ads/__init__.py +0 -0
  104. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_ads/actions.py +0 -0
  105. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_ads/assets/icon.png +0 -0
  106. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_ads/catalog.json +0 -0
  107. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_ads/docs/auth.md +0 -0
  108. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_ads/docs/protocol.md +0 -0
  109. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_ads/probe.py +0 -0
  110. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_analytics/__init__.py +0 -0
  111. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_analytics/actions.py +0 -0
  112. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_analytics/assets/icon.png +0 -0
  113. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_analytics/catalog.json +0 -0
  114. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_analytics/docs/auth.md +0 -0
  115. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_analytics/integration.py +0 -0
  116. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_gemini_image/__init__.py +0 -0
  117. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_gemini_image/actions.py +0 -0
  118. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_gemini_image/assets/icon.webp +0 -0
  119. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_gemini_image/catalog.json +0 -0
  120. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_gemini_image/integration.py +0 -0
  121. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_indexing/__init__.py +0 -0
  122. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_indexing/actions.py +0 -0
  123. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_indexing/catalog.json +0 -0
  124. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_indexing/docs/google-indexing.md +0 -0
  125. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_indexing/integration.py +0 -0
  126. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_search_console/__init__.py +0 -0
  127. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_search_console/actions.py +0 -0
  128. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_search_console/assets/icon.png +0 -0
  129. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_search_console/docs/google-search-console.md +0 -0
  130. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_search_console/integration.py +0 -0
  131. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_tag_manager/__init__.py +0 -0
  132. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_tag_manager/actions.py +0 -0
  133. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_tag_manager/assets/icon.png +0 -0
  134. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_tag_manager/catalog.json +0 -0
  135. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_tag_manager/docs/auth.md +0 -0
  136. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_tag_manager/integration.py +0 -0
  137. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_veo/__init__.py +0 -0
  138. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_veo/actions.py +0 -0
  139. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_veo/assets/icon.png +0 -0
  140. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_veo/catalog.json +0 -0
  141. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_veo/integration.py +0 -0
  142. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_workspace/__init__.py +0 -0
  143. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_workspace/actions.py +0 -0
  144. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_workspace/assets/icon.png +0 -0
  145. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_workspace/catalog.json +0 -0
  146. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_workspace/docs/auth.md +0 -0
  147. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_workspace/docs/protocol.md +0 -0
  148. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/google_workspace/probe.py +0 -0
  149. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/http/__init__.py +0 -0
  150. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/http/actions.py +0 -0
  151. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/http/catalog.json +0 -0
  152. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/hubspot/__init__.py +0 -0
  153. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/hubspot/actions.py +0 -0
  154. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/hubspot/assets/icon.png +0 -0
  155. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/hubspot/catalog.json +0 -0
  156. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/hubspot/contract.py +0 -0
  157. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/hubspot/docs/auth.md +0 -0
  158. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/hubspot/docs/hubspot.md +0 -0
  159. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/hubspot/docs/signatures.md +0 -0
  160. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/hubspot/integration.py +0 -0
  161. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/hubspot/signature.py +0 -0
  162. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/ideogram/__init__.py +0 -0
  163. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/ideogram/actions.py +0 -0
  164. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/ideogram/assets/icon.png +0 -0
  165. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/ideogram/catalog.json +0 -0
  166. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/ideogram/integration.py +0 -0
  167. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/imap/__init__.py +0 -0
  168. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/imap/actions.py +0 -0
  169. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/imap/assets/icon.svg +0 -0
  170. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/imap/catalog.json +0 -0
  171. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/imap/docs/protocol.md +0 -0
  172. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/imap/integration.py +0 -0
  173. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/imap/probe.py +0 -0
  174. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/jina/__init__.py +0 -0
  175. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/jina/actions.py +0 -0
  176. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/jina/assets/icon.png +0 -0
  177. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/jina/catalog.json +0 -0
  178. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/jina/integration.py +0 -0
  179. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/kling_video/__init__.py +0 -0
  180. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/kling_video/actions.py +0 -0
  181. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/kling_video/assets/icon.png +0 -0
  182. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/kling_video/catalog.json +0 -0
  183. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/kling_video/integration.py +0 -0
  184. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/__init__.py +0 -0
  185. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/actions.py +0 -0
  186. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/graphql/auth/viewer-organization.graphql +0 -0
  187. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/graphql/comments/create.graphql +0 -0
  188. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/graphql/comments/delete.graphql +0 -0
  189. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/graphql/comments/get.graphql +0 -0
  190. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/graphql/comments/list.graphql +0 -0
  191. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/graphql/comments/resolve.graphql +0 -0
  192. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/graphql/comments/unresolve.graphql +0 -0
  193. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/graphql/comments/update.graphql +0 -0
  194. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/graphql/cycles/get.graphql +0 -0
  195. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/graphql/cycles/list.graphql +0 -0
  196. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/graphql/issue-labels/get.graphql +0 -0
  197. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/graphql/issue-labels/list.graphql +0 -0
  198. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/graphql/issue-relations/create.graphql +0 -0
  199. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/graphql/issue-relations/delete.graphql +0 -0
  200. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/graphql/issue-relations/get.graphql +0 -0
  201. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/graphql/issue-relations/list.graphql +0 -0
  202. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/graphql/issue-relations/update.graphql +0 -0
  203. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/graphql/issues/add-label.graphql +0 -0
  204. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/graphql/issues/archive.graphql +0 -0
  205. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/graphql/issues/create.graphql +0 -0
  206. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/graphql/issues/get.graphql +0 -0
  207. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/graphql/issues/list.graphql +0 -0
  208. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/graphql/issues/remove-label.graphql +0 -0
  209. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/graphql/issues/search.graphql +0 -0
  210. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/graphql/issues/unarchive.graphql +0 -0
  211. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/graphql/issues/update.graphql +0 -0
  212. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/graphql/projects/get.graphql +0 -0
  213. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/graphql/projects/list.graphql +0 -0
  214. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/graphql/teams/get.graphql +0 -0
  215. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/graphql/teams/list.graphql +0 -0
  216. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/graphql/users/get.graphql +0 -0
  217. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/graphql/users/list.graphql +0 -0
  218. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/graphql/viewer/get.graphql +0 -0
  219. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/graphql/workflow-states/get.graphql +0 -0
  220. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/graphql/workflow-states/list.graphql +0 -0
  221. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/assets/icon.png +0 -0
  222. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/catalog.json +0 -0
  223. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/contract.py +0 -0
  224. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/docs/auth.md +0 -0
  225. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/docs/linear.md +0 -0
  226. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/integration.py +0 -0
  227. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/schemas/introspection-2026-07-23.json +0 -0
  228. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/schemas/introspection-2026-07-23.metadata.json +0 -0
  229. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/linear/schemas/root-policy-2026-07-23.json +0 -0
  230. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/meta_ads/__init__.py +0 -0
  231. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/meta_ads/actions.py +0 -0
  232. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/meta_ads/assets/icon.png +0 -0
  233. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/meta_ads/auth.py +0 -0
  234. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/meta_ads/catalog.json +0 -0
  235. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/meta_ads/docs/auth.md +0 -0
  236. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/microsoft_365/__init__.py +0 -0
  237. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/microsoft_365/actions.py +0 -0
  238. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/microsoft_365/assets/icon.png +0 -0
  239. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/microsoft_365/auth.py +0 -0
  240. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/microsoft_365/catalog.json +0 -0
  241. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/microsoft_365/docs/auth.md +0 -0
  242. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/microsoft_365/docs/protocol.md +0 -0
  243. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/openai_images/__init__.py +0 -0
  244. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/openai_images/actions.py +0 -0
  245. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/openai_images/assets/icon.webp +0 -0
  246. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/openai_images/catalog.json +0 -0
  247. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/openai_images/integration.py +0 -0
  248. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/openrouter/__init__.py +0 -0
  249. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/openrouter/assets/icon.png +0 -0
  250. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/openrouter/catalog.json +0 -0
  251. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/openrouter/integration.py +0 -0
  252. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/openrouter/probe.py +0 -0
  253. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/outreach/__init__.py +0 -0
  254. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/outreach/actions.py +0 -0
  255. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/outreach/assets/icon.png +0 -0
  256. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/outreach/catalog.json +0 -0
  257. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/outreach/docs/auth.md +0 -0
  258. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/outreach/docs/protocol.md +0 -0
  259. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/pipedrive/__init__.py +0 -0
  260. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/pipedrive/actions.py +0 -0
  261. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/pipedrive/assets/icon.png +0 -0
  262. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/pipedrive/catalog.json +0 -0
  263. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/pipedrive/docs/auth.md +0 -0
  264. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/pipedrive/docs/protocol.md +0 -0
  265. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/pipedrive/integration.py +0 -0
  266. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/pipedrive/probe.py +0 -0
  267. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/reddit/__init__.py +0 -0
  268. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/reddit/actions.py +0 -0
  269. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/reddit/assets/icon.png +0 -0
  270. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/reddit/catalog.json +0 -0
  271. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/reddit/docs/auth.md +0 -0
  272. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/reddit/integration.py +0 -0
  273. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/reve/__init__.py +0 -0
  274. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/reve/actions.py +0 -0
  275. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/reve/assets/icon.png +0 -0
  276. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/reve/catalog.json +0 -0
  277. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/reve/integration.py +0 -0
  278. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/salesforce/__init__.py +0 -0
  279. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/salesforce/actions.py +0 -0
  280. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/salesforce/assets/icon.png +0 -0
  281. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/salesforce/auth.py +0 -0
  282. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/salesforce/catalog.json +0 -0
  283. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/salesforce/docs/auth.md +0 -0
  284. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/salesforce/docs/protocol.md +0 -0
  285. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/salesloft/__init__.py +0 -0
  286. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/salesloft/actions.py +0 -0
  287. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/salesloft/assets/icon.jpeg +0 -0
  288. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/salesloft/catalog.json +0 -0
  289. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/salesloft/docs/auth.md +0 -0
  290. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/salesloft/docs/protocol.md +0 -0
  291. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/salesloft/integration.py +0 -0
  292. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/serper/__init__.py +0 -0
  293. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/serper/actions.py +0 -0
  294. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/serper/assets/icon.svg +0 -0
  295. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/serper/catalog.json +0 -0
  296. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/serper/integration.py +0 -0
  297. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/__init__.py +0 -0
  298. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/actions.py +0 -0
  299. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/customers/add-customer-tag.graphql +0 -0
  300. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/customers/create-customer.graphql +0 -0
  301. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/customers/get-customer-lifetime-value.graphql +0 -0
  302. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/customers/get-customer-orders.graphql +0 -0
  303. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/customers/get-customer.graphql +0 -0
  304. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/customers/list-customers.graphql +0 -0
  305. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/customers/remove-customer-tag.graphql +0 -0
  306. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/customers/search-customers.graphql +0 -0
  307. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/customers/update-customer.graphql +0 -0
  308. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/inventory/adjust-inventory.graphql +0 -0
  309. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/inventory/get-inventory-by-sku.graphql +0 -0
  310. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/inventory/get-inventory-item.graphql +0 -0
  311. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/inventory/get-location-inventory.graphql +0 -0
  312. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/inventory/list-inventory-item-availability.graphql +0 -0
  313. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/inventory/list-inventory-levels.graphql +0 -0
  314. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/inventory/list-product-variant-inventory.graphql +0 -0
  315. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/inventory/set-inventory-level.graphql +0 -0
  316. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/orders/add-order-note.graphql +0 -0
  317. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/orders/add-order-tag.graphql +0 -0
  318. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/orders/create-draft-order.graphql +0 -0
  319. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/orders/get-order-by-name.graphql +0 -0
  320. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/orders/get-order-fulfillment-status.graphql +0 -0
  321. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/orders/get-order-timeline.graphql +0 -0
  322. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/orders/get-order.graphql +0 -0
  323. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/orders/list-order-variant-quantities.graphql +0 -0
  324. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/orders/list-orders.graphql +0 -0
  325. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/orders/mark-order-paid.graphql +0 -0
  326. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/orders/search-orders.graphql +0 -0
  327. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/orders/update-order-note.graphql +0 -0
  328. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/orders/update-order-tags.graphql +0 -0
  329. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/products/create-collection.graphql +0 -0
  330. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/products/create-product-variant.graphql +0 -0
  331. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/products/create-product.graphql +0 -0
  332. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/products/get-collection.graphql +0 -0
  333. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/products/get-product-by-handle.graphql +0 -0
  334. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/products/get-product-variant.graphql +0 -0
  335. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/products/get-product.graphql +0 -0
  336. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/products/list-collections.graphql +0 -0
  337. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/products/list-product-variants.graphql +0 -0
  338. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/products/list-products.graphql +0 -0
  339. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/products/search-products.graphql +0 -0
  340. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/products/update-product-status.graphql +0 -0
  341. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/products/update-product-variant.graphql +0 -0
  342. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/products/update-product.graphql +0 -0
  343. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/graphql/shopifyql.graphql +0 -0
  344. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/assets/icon.png +0 -0
  345. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/catalog.json +0 -0
  346. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/docs/shopify.md +0 -0
  347. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/integration.py +0 -0
  348. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/payloads.py +0 -0
  349. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/shopify/probe.py +0 -0
  350. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/sitemap/__init__.py +0 -0
  351. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/sitemap/actions.py +0 -0
  352. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/sitemap/catalog.json +0 -0
  353. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/sitemap/integration.py +0 -0
  354. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/slack_bot/__init__.py +0 -0
  355. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/slack_bot/actions.py +0 -0
  356. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/slack_bot/assets/icon.png +0 -0
  357. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/slack_bot/auth.py +0 -0
  358. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/slack_bot/catalog.json +0 -0
  359. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/slack_bot/constants.py +0 -0
  360. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/slack_bot/docs/protocol.md +0 -0
  361. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/slack_bot/docs/signatures.md +0 -0
  362. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/slack_bot/files.py +0 -0
  363. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/slack_bot/http.py +0 -0
  364. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/slack_bot/integration.py +0 -0
  365. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/slack_bot/payloads.py +0 -0
  366. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/slack_bot/probe.py +0 -0
  367. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/slack_bot/results.py +0 -0
  368. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/slack_bot/validation.py +0 -0
  369. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/smtp/__init__.py +0 -0
  370. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/smtp/actions.py +0 -0
  371. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/smtp/assets/icon.svg +0 -0
  372. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/smtp/catalog.json +0 -0
  373. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/smtp/docs/protocol.md +0 -0
  374. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/smtp/integration.py +0 -0
  375. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/smtp/probe.py +0 -0
  376. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/stripe/__init__.py +0 -0
  377. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/stripe/actions.py +0 -0
  378. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/stripe/assets/icon.jpeg +0 -0
  379. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/stripe/catalog.json +0 -0
  380. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/stripe/contract.py +0 -0
  381. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/stripe/docs/stripe.md +0 -0
  382. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/stripe/integration.py +0 -0
  383. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/taboola/__init__.py +0 -0
  384. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/taboola/actions.py +0 -0
  385. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/taboola/assets/icon.svg +0 -0
  386. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/taboola/catalog.json +0 -0
  387. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/taboola/docs/auth.md +0 -0
  388. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/telegram/__init__.py +0 -0
  389. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/telegram/actions.py +0 -0
  390. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/telegram/assets/icon.png +0 -0
  391. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/telegram/auth.py +0 -0
  392. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/telegram/catalog.json +0 -0
  393. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/telegram/docs/auth-protocol.md +0 -0
  394. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/telegram/docs/protocol.md +0 -0
  395. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/telegram/payloads.py +0 -0
  396. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/telegram/schema.py +0 -0
  397. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/telegram/tdlib/__init__.py +0 -0
  398. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/telegram/tdlib/native.py +0 -0
  399. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/telegram/tdlib/proxy.py +0 -0
  400. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/telegram/tdlib/sessions.py +0 -0
  401. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/trackbooth/__init__.py +0 -0
  402. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/trackbooth/actions.py +0 -0
  403. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/trackbooth/assets/agent-api/catalog.json +0 -0
  404. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/trackbooth/assets/agent-api/openapi.json +0 -0
  405. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/trackbooth/assets/agent-api/stackos-tools.json +0 -0
  406. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/trackbooth/assets/icon.png +0 -0
  407. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/trackbooth/assets.py +0 -0
  408. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/trackbooth/catalog.json +0 -0
  409. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/trackbooth/contract.py +0 -0
  410. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/trackbooth/docs/agent-api/README.md +0 -0
  411. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/trackbooth/docs/trackbooth.md +0 -0
  412. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/trackbooth/integration.py +0 -0
  413. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/trackbooth/probe.py +0 -0
  414. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/trackbooth/schema.py +0 -0
  415. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/trackbooth/transport.py +0 -0
  416. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/wordpress/__init__.py +0 -0
  417. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/wordpress/actions.py +0 -0
  418. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/wordpress/assets/icon.png +0 -0
  419. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/wordpress/catalog.json +0 -0
  420. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/wordpress/integration.py +0 -0
  421. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/wordpress/probe.py +0 -0
  422. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/xai_imagine/__init__.py +0 -0
  423. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/xai_imagine/actions.py +0 -0
  424. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/xai_imagine/assets/icon.png +0 -0
  425. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/xai_imagine/catalog.json +0 -0
  426. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/connectors/xai_imagine/integration.py +0 -0
  427. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/contracts.py +0 -0
  428. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/errors.py +0 -0
  429. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/probe.py +0 -0
  430. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/py.typed +0 -0
  431. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/redaction.py +0 -0
  432. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/registry.py +0 -0
  433. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/shared/__init__.py +0 -0
  434. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/shared/base.py +0 -0
  435. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/shared/byteplus/__init__.py +0 -0
  436. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/shared/byteplus/ark.py +0 -0
  437. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/shared/byteplus/media.py +0 -0
  438. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/shared/google/__init__.py +0 -0
  439. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/shared/google/batch.py +0 -0
  440. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/shared/google/oauth.py +0 -0
  441. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/shared/google/probe.py +0 -0
  442. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/shared/google/service_account.py +0 -0
  443. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/shared/icons/integration.svg +0 -0
  444. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/shared/media.py +0 -0
  445. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/shared/oauth.py +0 -0
  446. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/shared/provider_utils.py +0 -0
  447. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/shared/rate_limit.py +0 -0
  448. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/shared/vendor_utils.py +0 -0
  449. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/src/stackos_connectors/validation.py +0 -0
  450. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/auth/test_auth_redaction.py +0 -0
  451. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/auth/test_google_service_account.py +0 -0
  452. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/auth/test_oauth_contracts.py +0 -0
  453. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/auth/test_oauth_protocol.py +0 -0
  454. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/auth/test_probes.py +0 -0
  455. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/business/conftest.py +0 -0
  456. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/business/fixtures/wire-contracts.json +0 -0
  457. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/business/test_hubspot_signature_protocol.py +0 -0
  458. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/business/test_named_actions.py +0 -0
  459. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/business/test_pipedrive_probes.py +0 -0
  460. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/business/test_probe_boundary.py +0 -0
  461. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/business/test_salesloft_probes.py +0 -0
  462. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/catalog/test_catalog.py +0 -0
  463. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/catalog/test_nested_resources.py +0 -0
  464. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/core/test_contract.py +0 -0
  465. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/core/test_native_result_boundary.py +0 -0
  466. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/core/test_nested_auth_redaction.py +0 -0
  467. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/core/test_preflight_redaction.py +0 -0
  468. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/core/test_public_key_facts.py +0 -0
  469. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/core/test_runtime.py +0 -0
  470. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/core/test_timeout_options.py +0 -0
  471. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/core/test_validation_data.py +0 -0
  472. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/core/test_validation_execution_outcome.py +0 -0
  473. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/mail_slack/__init__.py +0 -0
  474. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/mail_slack/test_native.py +0 -0
  475. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/mail_slack/test_probes_catalog.py +0 -0
  476. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/mail_slack/test_signature_protocol.py +0 -0
  477. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/media/test_aignc_native.py +0 -0
  478. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/media/test_generation_outcomes.py +0 -0
  479. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/media/test_media_files.py +0 -0
  480. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/media/test_named_media.py +0 -0
  481. {stackos_connectors-0.2.0/tests/web → stackos_connectors-0.2.2/tests/quickbooks_online}/__init__.py +0 -0
  482. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/safe_refs/conftest.py +0 -0
  483. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/safe_refs/test_linear_transport.py +0 -0
  484. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/safe_refs/test_safe_refs_named_actions.py +0 -0
  485. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/safe_refs/test_stripe_transport_transport.py +0 -0
  486. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/telegram/__init__.py +0 -0
  487. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/telegram/test_actions.py +0 -0
  488. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/telegram/test_authorization.py +0 -0
  489. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/telegram/test_closure_outcomes.py +0 -0
  490. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/telegram/test_native.py +0 -0
  491. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/telegram/test_payloads.py +0 -0
  492. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/telegram/test_proxy.py +0 -0
  493. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/telegram/test_sessions.py +0 -0
  494. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/trackbooth/__init__.py +0 -0
  495. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/trackbooth/test_native.py +0 -0
  496. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/web/catalog_fixture.py +0 -0
  497. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/web/conftest.py +0 -0
  498. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/web/test_ahrefs.py +0 -0
  499. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/web/test_boundary_timeout.py +0 -0
  500. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/web/test_cloudflare.py +0 -0
  501. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/web/test_dataforseo.py +0 -0
  502. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/web/test_firecrawl.py +0 -0
  503. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/web/test_ftp.py +0 -0
  504. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/web/test_ftp_actions.py +0 -0
  505. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/web/test_google_analytics.py +0 -0
  506. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/web/test_google_indexing.py +0 -0
  507. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/web/test_google_indexing_batch.py +0 -0
  508. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/web/test_google_search_console.py +0 -0
  509. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/web/test_google_search_console_batch.py +0 -0
  510. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/web/test_google_tag_manager.py +0 -0
  511. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/web/test_jina_reader.py +0 -0
  512. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/web/test_named_clients.py +0 -0
  513. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/web/test_native_boundary.py +0 -0
  514. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/web/test_openrouter.py +0 -0
  515. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/web/test_reddit.py +0 -0
  516. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/web/test_s3.py +0 -0
  517. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/web/test_s3_actions.py +0 -0
  518. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/web/test_serper.py +0 -0
  519. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/web/test_shopify.py +0 -0
  520. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/web/test_sitemap.py +0 -0
  521. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/web/test_transport_defaults.py +0 -0
  522. {stackos_connectors-0.2.0 → stackos_connectors-0.2.2}/tests/web/test_wordpress_ghost.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: stackos-connectors
3
- Version: 0.2.0
3
+ Version: 0.2.2
4
4
  Summary: Named provider connectors with plain data and caller-owned authentication.
5
5
  License-Expression: MIT
6
6
  License-File: LICENSE
@@ -73,6 +73,9 @@ execution; existing names cannot be replaced.
73
73
  `CallOptions.timeout=None` preserves each provider's default. A numeric timeout
74
74
  overrides that default. A supplied HTTP client remains caller-owned.
75
75
 
76
+ QuickBooks Online provides bounded company/invoice reads with exact invoice JSON
77
+ fragments and explicit OAuth. See the [provider contract](src/stackos_connectors/connectors/quickbooks_online/docs/quickbooks-online.md).
78
+
76
79
  ## Explicit authentication
77
80
 
78
81
  `get_auth_contract(connector, method=..., config=...)` reads immutable provider
@@ -188,10 +191,10 @@ Python 3.12 or newer is required. Source:
188
191
  Published releases can be installed with:
189
192
 
190
193
  ```bash
191
- python -m pip install stackos-connectors==0.2.0
194
+ python -m pip install stackos-connectors==0.2.2
192
195
  ```
193
196
 
194
- Or add `stackos-connectors==0.2.0` to your Python dependency requirements.
197
+ Or add `stackos-connectors==0.2.2` to your Python dependency requirements.
195
198
 
196
199
  Install from a local checkout with `pip install /path/to/StackOSConnectors`, or
197
200
  build a wheel with `python -m build --wheel` and install that wheel. Runtime use
@@ -57,6 +57,9 @@ execution; existing names cannot be replaced.
57
57
  `CallOptions.timeout=None` preserves each provider's default. A numeric timeout
58
58
  overrides that default. A supplied HTTP client remains caller-owned.
59
59
 
60
+ QuickBooks Online provides bounded company/invoice reads with exact invoice JSON
61
+ fragments and explicit OAuth. See the [provider contract](src/stackos_connectors/connectors/quickbooks_online/docs/quickbooks-online.md).
62
+
60
63
  ## Explicit authentication
61
64
 
62
65
  `get_auth_contract(connector, method=..., config=...)` reads immutable provider
@@ -172,10 +175,10 @@ Python 3.12 or newer is required. Source:
172
175
  Published releases can be installed with:
173
176
 
174
177
  ```bash
175
- python -m pip install stackos-connectors==0.2.0
178
+ python -m pip install stackos-connectors==0.2.2
176
179
  ```
177
180
 
178
- Or add `stackos-connectors==0.2.0` to your Python dependency requirements.
181
+ Or add `stackos-connectors==0.2.2` to your Python dependency requirements.
179
182
 
180
183
  Install from a local checkout with `pip install /path/to/StackOSConnectors`, or
181
184
  build a wheel with `python -m build --wheel` and install that wheel. Runtime use
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "stackos-connectors"
7
- version = "0.2.0"
7
+ version = "0.2.2"
8
8
  description = "Named provider connectors with plain data and caller-owned authentication."
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.12"
@@ -143,6 +143,17 @@ def get_auth_contract(
143
143
  return contract
144
144
 
145
145
 
146
+ def scope_satisfies(connector: str, required: str, granted: set[str]) -> bool:
147
+ """Report documented scope compatibility; the consumer owns enforcement."""
148
+ if required in granted:
149
+ return True
150
+ if connector == "google-search-console":
151
+ from .connectors.google_search_console.auth import READ_SCOPE, WRITE_SCOPE
152
+
153
+ return required == READ_SCOPE and WRITE_SCOPE in granted
154
+ return False
155
+
156
+
146
157
  def build_authorization_request(
147
158
  connector: str,
148
159
  *,
@@ -35,6 +35,7 @@
35
35
  "connectors/openrouter/catalog.json",
36
36
  "connectors/outreach/catalog.json",
37
37
  "connectors/pipedrive/catalog.json",
38
+ "connectors/quickbooks_online/catalog.json",
38
39
  "connectors/reddit/catalog.json",
39
40
  "connectors/reve/catalog.json",
40
41
  "connectors/salesforce/catalog.json",
@@ -0,0 +1,19 @@
1
+ """Search Console's explicit read and sitemap-submission OAuth scopes."""
2
+
3
+ from dataclasses import replace
4
+
5
+ from ...auth import OAuthTokenError
6
+
7
+ READ_SCOPE = "https://www.googleapis.com/auth/webmasters.readonly"
8
+ WRITE_SCOPE = "https://www.googleapis.com/auth/webmasters"
9
+
10
+
11
+ def resolve_contract(contract, config):
12
+ mode = config.get("access_mode", "readonly")
13
+ if mode not in ("readonly", "sitemap_write"):
14
+ raise OAuthTokenError(
15
+ "Search Console access mode must be readonly or sitemap_write",
16
+ provider_key=contract.provider_key,
17
+ invalid_fields=("access_mode",),
18
+ )
19
+ return replace(contract, scopes=(WRITE_SCOPE if mode == "sitemap_write" else READ_SCOPE,))
@@ -23,7 +23,16 @@
23
23
  },
24
24
  "config_schema": {
25
25
  "type": "object",
26
- "properties": {},
26
+ "properties": {
27
+ "access_mode": {
28
+ "type": "string",
29
+ "enum": [
30
+ "readonly",
31
+ "sitemap_write"
32
+ ],
33
+ "default": "readonly"
34
+ }
35
+ },
27
36
  "required": []
28
37
  },
29
38
  "payload_format": "json",
@@ -49,6 +58,24 @@
49
58
  "required": true,
50
59
  "secret": true,
51
60
  "type": "secret"
61
+ },
62
+ {
63
+ "key": "access_mode",
64
+ "label": "Access",
65
+ "type": "select",
66
+ "secret": false,
67
+ "required": false,
68
+ "options": [
69
+ {
70
+ "value": "readonly",
71
+ "label": "Read only"
72
+ },
73
+ {
74
+ "value": "sitemap_write",
75
+ "label": "Read and submit sitemaps"
76
+ }
77
+ ],
78
+ "description": "Defaults to read only. Changing access requires acquiring a token with the selected scope."
52
79
  }
53
80
  ],
54
81
  "description": "The consumer handles Google browser consent, state and callbacks. Exchange the resulting authorization code with request_token. Execution accepts the resolved access_token; credential storage and refresh scheduling remain consumer-owned.",
@@ -80,7 +107,16 @@
80
107
  },
81
108
  "config_schema": {
82
109
  "type": "object",
83
- "properties": {},
110
+ "properties": {
111
+ "access_mode": {
112
+ "type": "string",
113
+ "enum": [
114
+ "readonly",
115
+ "sitemap_write"
116
+ ],
117
+ "default": "readonly"
118
+ }
119
+ },
84
120
  "required": []
85
121
  },
86
122
  "payload_format": "json",
@@ -96,6 +132,24 @@
96
132
  "required": true,
97
133
  "secret": true,
98
134
  "type": "secret"
135
+ },
136
+ {
137
+ "key": "access_mode",
138
+ "label": "Access",
139
+ "type": "select",
140
+ "secret": false,
141
+ "required": false,
142
+ "options": [
143
+ {
144
+ "value": "readonly",
145
+ "label": "Read only"
146
+ },
147
+ {
148
+ "value": "sitemap_write",
149
+ "label": "Read and submit sitemaps"
150
+ }
151
+ ],
152
+ "description": "Defaults to read only. Changing access requires acquiring a token with the selected scope."
99
153
  }
100
154
  ],
101
155
  "description": "Obtain a Google access token with the required provider scopes and permissions before execution.",
@@ -126,7 +180,16 @@
126
180
  },
127
181
  "config_schema": {
128
182
  "type": "object",
129
- "properties": {},
183
+ "properties": {
184
+ "access_mode": {
185
+ "type": "string",
186
+ "enum": [
187
+ "readonly",
188
+ "sitemap_write"
189
+ ],
190
+ "default": "readonly"
191
+ }
192
+ },
130
193
  "required": []
131
194
  },
132
195
  "payload_format": "json",
@@ -162,6 +225,24 @@
162
225
  "required": true,
163
226
  "secret": true,
164
227
  "type": "secret"
228
+ },
229
+ {
230
+ "key": "access_mode",
231
+ "label": "Access",
232
+ "type": "select",
233
+ "secret": false,
234
+ "required": false,
235
+ "options": [
236
+ {
237
+ "value": "readonly",
238
+ "label": "Read only"
239
+ },
240
+ {
241
+ "value": "sitemap_write",
242
+ "label": "Read and submit sitemaps"
243
+ }
244
+ ],
245
+ "description": "Defaults to read only. Changing access requires acquiring a token with the selected scope."
165
246
  }
166
247
  ],
167
248
  "description": "Exchange the Google refresh token for an access token with an explicit request_token call. Execution accepts the resolved access_token; credential storage and refresh scheduling remain consumer-owned.",
@@ -192,7 +273,16 @@
192
273
  },
193
274
  "config_schema": {
194
275
  "type": "object",
195
- "properties": {},
276
+ "properties": {
277
+ "access_mode": {
278
+ "type": "string",
279
+ "enum": [
280
+ "readonly",
281
+ "sitemap_write"
282
+ ],
283
+ "default": "readonly"
284
+ }
285
+ },
196
286
  "required": []
197
287
  },
198
288
  "payload_format": "json",
@@ -208,6 +298,24 @@
208
298
  "required": true,
209
299
  "secret": true,
210
300
  "type": "secret"
301
+ },
302
+ {
303
+ "key": "access_mode",
304
+ "label": "Access",
305
+ "type": "select",
306
+ "secret": false,
307
+ "required": false,
308
+ "options": [
309
+ {
310
+ "value": "readonly",
311
+ "label": "Read only"
312
+ },
313
+ {
314
+ "value": "sitemap_write",
315
+ "label": "Read and submit sitemaps"
316
+ }
317
+ ],
318
+ "description": "Defaults to read only. Changing access requires acquiring a token with the selected scope."
211
319
  }
212
320
  ],
213
321
  "description": "Use request_token with the Google service-account key to acquire an access token. Execution accepts the resolved access_token; provider resource access must be granted separately. Credential storage and refresh scheduling remain consumer-owned.",
@@ -778,5 +886,6 @@
778
886
  "consent"
779
887
  ]
780
888
  ]
781
- }
889
+ },
890
+ "auth_implementation": "stackos_connectors.connectors.google_search_console.auth:resolve_contract"
782
891
  }
@@ -9,6 +9,18 @@ The [bundled catalog](../catalog.json) is the installed contract for method fiel
9
9
  | `oauth2_refresh_token` | `refresh_token` |
10
10
  | `service-account` | `jwt_bearer` |
11
11
 
12
+ All four methods expose `access_mode`: omitted or `readonly` requests
13
+ `https://www.googleapis.com/auth/webmasters.readonly`; explicit `sitemap_write`
14
+ requests `https://www.googleapis.com/auth/webmasters`. Keep the saved selection
15
+ when renewing a service-account token. Changing it requires fresh grant evidence;
16
+ OAuth consent must be repeated when a new scope is needed. Selecting a mode does
17
+ not expand a manually supplied token's permissions.
18
+
19
+ The full `webmasters` scope also permits read operations. Consumers can use
20
+ `stackos_connectors.auth.scope_satisfies` to check that documented relationship
21
+ without changing stored provider scope evidence. Read-only scope never satisfies
22
+ a sitemap submission requirement. Property permissions remain separate.
23
+
12
24
  Service-account token success does not establish Search Console property access. Inventory probes can succeed with no properties. Google Indexing is a separate resolved-token contract; no new Indexing JWT grant is supplied.
13
25
 
14
26
  `request_token` receives resolved application/key fields and performs only the requested grant. Actions and `probe_credentials` receive resolved execution fields. Discovery, probes and actions never acquire or refresh implicitly. The consumer owns credential/state/PKCE custody, callbacks, refresh timing and concurrency, permissions, persistence and audit. Token results and authorization URLs are sensitive in-process values.
@@ -0,0 +1 @@
1
+ """QuickBooks Online named reads and explicit OAuth declarations."""
@@ -0,0 +1,110 @@
1
+ """The two bounded QuickBooks Online read actions."""
2
+
3
+ from __future__ import annotations
4
+
5
+ from collections.abc import Callable
6
+ from contextlib import AsyncExitStack
7
+ from functools import partial
8
+
9
+ import httpx
10
+
11
+ from stackos_connectors import ConnectorRequest, ConnectorResult, ValidationIssue
12
+ from stackos_connectors.redaction import auth_secret_values, redact_secret_values
13
+
14
+ from .integration import QuickBooksIntegration
15
+ from .response import (
16
+ CompanyInfo,
17
+ InvoicePage,
18
+ calendar_date,
19
+ invalid_response,
20
+ parse_company_info,
21
+ parse_invoice_page,
22
+ )
23
+
24
+
25
+ class QuickBooksActionConnector:
26
+ key = "quickbooks-online"
27
+
28
+ def validate(self, request: ConnectorRequest) -> list[ValidationIssue]:
29
+ if request.operation != "invoices.list":
30
+ return []
31
+ try:
32
+ first = calendar_date(request.input_json["txn_date_from"])
33
+ last = calendar_date(request.input_json["txn_date_to"])
34
+ if first > last:
35
+ raise ValueError("reversed dates")
36
+ except ValueError:
37
+ return [
38
+ ValidationIssue(path="$.txn_date_from", message="Dates must be valid and ordered")
39
+ ]
40
+ return []
41
+
42
+ def estimate_cost_cents(self, request: ConnectorRequest) -> int:
43
+ return 0
44
+
45
+ async def execute(self, request: ConnectorRequest) -> ConnectorResult:
46
+ assert request.auth is not None
47
+ config = request.auth.config
48
+ secrets = auth_secret_values(request.auth)
49
+ realm = config["realm_id"]
50
+ path, params, parser = _read_parameters(request, secrets)
51
+ async with AsyncExitStack() as stack:
52
+ http = request.options.http
53
+ if http is None:
54
+ http = await stack.enter_async_context(
55
+ httpx.AsyncClient(timeout=30.0, follow_redirects=False)
56
+ )
57
+ integration = QuickBooksIntegration(
58
+ payload=b"",
59
+ http=http,
60
+ timeout=request.options.timeout,
61
+ rate_limiter=request.options.rate_limiter,
62
+ )
63
+ result = await integration.read(
64
+ op=request.operation,
65
+ environment=config["environment"],
66
+ realm_id=realm,
67
+ token=request.auth.fields["access_token"],
68
+ path=path,
69
+ params=params,
70
+ parser=parser,
71
+ )
72
+ if redact_secret_values(result.data, secrets) != result.data:
73
+ raise invalid_response()
74
+ return ConnectorResult(
75
+ output_json=result.data,
76
+ metadata_json={"vendor": self.key, "operation": request.operation},
77
+ )
78
+
79
+
80
+ def _read_parameters(
81
+ request: ConnectorRequest, secrets: tuple[str, ...]
82
+ ) -> tuple[str, dict[str, str] | None, Callable[[httpx.Response], CompanyInfo | InvoicePage]]:
83
+ assert request.auth is not None
84
+ realm = request.auth.config["realm_id"]
85
+ if request.operation == "company-info.get":
86
+ return (
87
+ f"companyinfo/{realm}",
88
+ None,
89
+ partial(parse_company_info, secrets=secrets, realm_id=realm),
90
+ )
91
+ data = request.input_json
92
+ parser = partial(
93
+ parse_invoice_page,
94
+ secrets=secrets,
95
+ start=data["start_position"],
96
+ limit=data["max_results"],
97
+ date_from=data["txn_date_from"],
98
+ date_to=data["txn_date_to"],
99
+ )
100
+ query = _invoice_query(
101
+ data["txn_date_from"], data["txn_date_to"], data["start_position"], data["max_results"]
102
+ )
103
+ return "query", {"query": query}, parser
104
+
105
+
106
+ def _invoice_query(date_from: str, date_to: str, start: int, limit: int) -> str:
107
+ return (
108
+ f"select * from Invoice where TxnDate >= '{date_from}' and TxnDate <= '{date_to}' "
109
+ f"STARTPOSITION {start} MAXRESULTS {limit}"
110
+ )