spatialflow 0.1.0__tar.gz → 0.2.0__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 (453) hide show
  1. spatialflow-0.2.0/.gitignore +29 -0
  2. {spatialflow-0.1.0 → spatialflow-0.2.0}/CHANGELOG.md +27 -1
  3. spatialflow-0.2.0/LICENSE +21 -0
  4. spatialflow-0.2.0/PKG-INFO +144 -0
  5. spatialflow-0.2.0/README.md +98 -0
  6. {spatialflow-0.1.0 → spatialflow-0.2.0}/pyproject.toml +44 -1
  7. spatialflow-0.2.0/src/spatialflow/__init__.py +144 -0
  8. spatialflow-0.2.0/src/spatialflow/_generated/spatialflow_generated/__init__.py +462 -0
  9. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/api/__init__.py +1 -0
  10. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/api/admin_api.py +903 -11
  11. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/api/authentication_api.py +581 -12
  12. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/api/devices_api.py +7 -6
  13. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/api/e2_e_test_api.py +23 -23
  14. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/api/geofences_api.py +58 -57
  15. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/api/gpx_simulator_api.py +43 -42
  16. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/api/integrations_api.py +122 -96
  17. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/api/public_api.py +3 -3
  18. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/api/public_location_ingest_api.py +6 -3
  19. spatialflow-0.2.0/src/spatialflow/_generated/spatialflow_generated/api/simulation_center_api.py +4282 -0
  20. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/api/webhooks_api.py +67 -66
  21. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/api/workflows_api.py +420 -154
  22. spatialflow-0.2.0/src/spatialflow/_generated/spatialflow_generated/api/workspaces_api.py +2972 -0
  23. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/api_client.py +16 -9
  24. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/configuration.py +32 -20
  25. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/exceptions.py +23 -3
  26. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/__init__.py +24 -1
  27. spatialflow-0.2.0/src/spatialflow/_generated/spatialflow_generated/models/accept_invite_schema.py +96 -0
  28. spatialflow-0.2.0/src/spatialflow/_generated/spatialflow_generated/models/admin_user_stats_response.py +105 -0
  29. spatialflow-0.2.0/src/spatialflow/_generated/spatialflow_generated/models/create_invitation_in.py +89 -0
  30. spatialflow-0.2.0/src/spatialflow/_generated/spatialflow_generated/models/create_simulation_request.py +95 -0
  31. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/device_out.py +2 -1
  32. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/execution_out.py +3 -2
  33. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/import_result_schema.py +2 -1
  34. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/integration_detail_schema.py +2 -1
  35. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/integration_response_schema.py +2 -1
  36. spatialflow-0.2.0/src/spatialflow/_generated/spatialflow_generated/models/invitation_list_response.py +97 -0
  37. spatialflow-0.2.0/src/spatialflow/_generated/spatialflow_generated/models/invitation_out.py +104 -0
  38. spatialflow-0.2.0/src/spatialflow/_generated/spatialflow_generated/models/matched_geofence_item.py +110 -0
  39. spatialflow-0.2.0/src/spatialflow/_generated/spatialflow_generated/models/member_action_out.py +96 -0
  40. spatialflow-0.2.0/src/spatialflow/_generated/spatialflow_generated/models/member_list_response.py +99 -0
  41. spatialflow-0.2.0/src/spatialflow/_generated/spatialflow_generated/models/member_out.py +100 -0
  42. spatialflow-0.2.0/src/spatialflow/_generated/spatialflow_generated/models/revoke_all_sessions_out.py +93 -0
  43. spatialflow-0.2.0/src/spatialflow/_generated/spatialflow_generated/models/route_track_points_out.py +99 -0
  44. spatialflow-0.2.0/src/spatialflow/_generated/spatialflow_generated/models/route_upload_response.py +99 -0
  45. spatialflow-0.2.0/src/spatialflow/_generated/spatialflow_generated/models/simulation_detail_out.py +111 -0
  46. spatialflow-0.2.0/src/spatialflow/_generated/spatialflow_generated/models/simulation_event_out.py +110 -0
  47. spatialflow-0.2.0/src/spatialflow/_generated/spatialflow_generated/models/simulation_out.py +130 -0
  48. spatialflow-0.2.0/src/spatialflow/_generated/spatialflow_generated/models/simulation_route_out.py +132 -0
  49. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/template_out.py +2 -1
  50. spatialflow-0.2.0/src/spatialflow/_generated/spatialflow_generated/models/template_warnings.py +89 -0
  51. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/test_point_request.py +9 -2
  52. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/test_point_response.py +22 -5
  53. spatialflow-0.2.0/src/spatialflow/_generated/spatialflow_generated/models/track_point_out.py +103 -0
  54. spatialflow-0.2.0/src/spatialflow/_generated/spatialflow_generated/models/update_member_role_in.py +87 -0
  55. spatialflow-0.2.0/src/spatialflow/_generated/spatialflow_generated/models/update_simulation_request.py +120 -0
  56. spatialflow-0.2.0/src/spatialflow/_generated/spatialflow_generated/models/user_api_stats.py +98 -0
  57. spatialflow-0.2.0/src/spatialflow/_generated/spatialflow_generated/models/verify_email_schema.py +87 -0
  58. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/workflow_list_out.py +2 -1
  59. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/workflow_out.py +15 -3
  60. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/workspace_out.py +2 -1
  61. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/rest.py +40 -37
  62. spatialflow-0.2.0/src/spatialflow/builders.py +171 -0
  63. spatialflow-0.2.0/src/spatialflow/client.py +466 -0
  64. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/exceptions.py +104 -0
  65. spatialflow-0.2.0/src/spatialflow/pagination.py +285 -0
  66. spatialflow-0.2.0/src/spatialflow/py.typed +0 -0
  67. spatialflow-0.2.0/src/spatialflow/resources.py +1733 -0
  68. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/uploads.py +60 -35
  69. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/webhooks.py +1 -1
  70. spatialflow-0.2.0/tests/test_api_methods.py +164 -0
  71. spatialflow-0.2.0/tests/test_builders.py +244 -0
  72. spatialflow-0.2.0/tests/test_integration.py +429 -0
  73. {spatialflow-0.1.0 → spatialflow-0.2.0}/tests/test_pagination.py +5 -5
  74. spatialflow-0.2.0/tests/test_resources.py +893 -0
  75. {spatialflow-0.1.0 → spatialflow-0.2.0}/tests/test_uploads.py +12 -6
  76. spatialflow-0.1.0/.gitignore +0 -148
  77. spatialflow-0.1.0/PKG-INFO +0 -249
  78. spatialflow-0.1.0/README.md +0 -204
  79. spatialflow-0.1.0/src/spatialflow/__init__.py +0 -91
  80. spatialflow-0.1.0/src/spatialflow/_generated/.github/workflows/python.yml +0 -31
  81. spatialflow-0.1.0/src/spatialflow/_generated/.gitignore +0 -66
  82. spatialflow-0.1.0/src/spatialflow/_generated/.gitlab-ci.yml +0 -31
  83. spatialflow-0.1.0/src/spatialflow/_generated/.openapi-generator/FILES +0 -390
  84. spatialflow-0.1.0/src/spatialflow/_generated/.openapi-generator/VERSION +0 -1
  85. spatialflow-0.1.0/src/spatialflow/_generated/.openapi-generator-ignore +0 -23
  86. spatialflow-0.1.0/src/spatialflow/_generated/.spec-hash +0 -1
  87. spatialflow-0.1.0/src/spatialflow/_generated/.travis.yml +0 -17
  88. spatialflow-0.1.0/src/spatialflow/_generated/README.md +0 -537
  89. spatialflow-0.1.0/src/spatialflow/_generated/__init__.py +0 -1
  90. spatialflow-0.1.0/src/spatialflow/_generated/docs/APIUsageStats.md +0 -32
  91. spatialflow-0.1.0/src/spatialflow/_generated/docs/AccountApi.md +0 -1751
  92. spatialflow-0.1.0/src/spatialflow/_generated/docs/ActionDeliverySuccessMetrics.md +0 -32
  93. spatialflow-0.1.0/src/spatialflow/_generated/docs/ActionResponse.md +0 -32
  94. spatialflow-0.1.0/src/spatialflow/_generated/docs/ActionRetryConfigSchema.md +0 -32
  95. spatialflow-0.1.0/src/spatialflow/_generated/docs/ActivitySummary.md +0 -30
  96. spatialflow-0.1.0/src/spatialflow/_generated/docs/AdminApi.md +0 -1787
  97. spatialflow-0.1.0/src/spatialflow/_generated/docs/ApiKeyCreateRequest.md +0 -31
  98. spatialflow-0.1.0/src/spatialflow/_generated/docs/ApiKeyCreateResponse.md +0 -31
  99. spatialflow-0.1.0/src/spatialflow/_generated/docs/ApiKeyResponse.md +0 -38
  100. spatialflow-0.1.0/src/spatialflow/_generated/docs/ApiKeyUpdateRequest.md +0 -33
  101. spatialflow-0.1.0/src/spatialflow/_generated/docs/AsyncUploadGeofencesResponse.md +0 -33
  102. spatialflow-0.1.0/src/spatialflow/_generated/docs/AuthTypeEnum.md +0 -17
  103. spatialflow-0.1.0/src/spatialflow/_generated/docs/AuthenticationApi.md +0 -1289
  104. spatialflow-0.1.0/src/spatialflow/_generated/docs/BatchLocationUpdateIn.md +0 -30
  105. spatialflow-0.1.0/src/spatialflow/_generated/docs/BillingApi.md +0 -925
  106. spatialflow-0.1.0/src/spatialflow/_generated/docs/BulkGeofenceRequest.md +0 -29
  107. spatialflow-0.1.0/src/spatialflow/_generated/docs/ChangePasswordSchema.md +0 -30
  108. spatialflow-0.1.0/src/spatialflow/_generated/docs/CheckoutSessionRequest.md +0 -32
  109. spatialflow-0.1.0/src/spatialflow/_generated/docs/CheckoutSessionResponse.md +0 -31
  110. spatialflow-0.1.0/src/spatialflow/_generated/docs/CircuitBreakerSchema.md +0 -33
  111. spatialflow-0.1.0/src/spatialflow/_generated/docs/ConfigFieldDefinitionRequest.md +0 -41
  112. spatialflow-0.1.0/src/spatialflow/_generated/docs/ConfigFieldDefinitionResponse.md +0 -43
  113. spatialflow-0.1.0/src/spatialflow/_generated/docs/ConfirmPasswordResetSchema.md +0 -31
  114. spatialflow-0.1.0/src/spatialflow/_generated/docs/CreateFromTemplateIn.md +0 -30
  115. spatialflow-0.1.0/src/spatialflow/_generated/docs/CreateGeofenceRequest.md +0 -36
  116. spatialflow-0.1.0/src/spatialflow/_generated/docs/CreateIntegrationSchema.md +0 -33
  117. spatialflow-0.1.0/src/spatialflow/_generated/docs/CreateUserSchema.md +0 -35
  118. spatialflow-0.1.0/src/spatialflow/_generated/docs/CreateWebhookRequest.md +0 -43
  119. spatialflow-0.1.0/src/spatialflow/_generated/docs/DashboardComparisonMetrics.md +0 -32
  120. spatialflow-0.1.0/src/spatialflow/_generated/docs/DashboardMetricsResponse.md +0 -36
  121. spatialflow-0.1.0/src/spatialflow/_generated/docs/DefaultApi.md +0 -585
  122. spatialflow-0.1.0/src/spatialflow/_generated/docs/DeleteFileResponse.md +0 -30
  123. spatialflow-0.1.0/src/spatialflow/_generated/docs/DeliveryStatusEnum.md +0 -15
  124. spatialflow-0.1.0/src/spatialflow/_generated/docs/DeviceIn.md +0 -32
  125. spatialflow-0.1.0/src/spatialflow/_generated/docs/DeviceOut.md +0 -37
  126. spatialflow-0.1.0/src/spatialflow/_generated/docs/DevicesApi.md +0 -1213
  127. spatialflow-0.1.0/src/spatialflow/_generated/docs/E2ETestApi.md +0 -271
  128. spatialflow-0.1.0/src/spatialflow/_generated/docs/EmailApi.md +0 -541
  129. spatialflow-0.1.0/src/spatialflow/_generated/docs/EmailHealthResponse.md +0 -31
  130. spatialflow-0.1.0/src/spatialflow/_generated/docs/EmailQueueStats.md +0 -34
  131. spatialflow-0.1.0/src/spatialflow/_generated/docs/EmailStats.md +0 -31
  132. spatialflow-0.1.0/src/spatialflow/_generated/docs/EmailStatusResponse.md +0 -36
  133. spatialflow-0.1.0/src/spatialflow/_generated/docs/ErrorResponse.md +0 -32
  134. spatialflow-0.1.0/src/spatialflow/_generated/docs/ExecutionOut.md +0 -38
  135. spatialflow-0.1.0/src/spatialflow/_generated/docs/ExportIntegrationSchema.md +0 -35
  136. spatialflow-0.1.0/src/spatialflow/_generated/docs/FileListResponse.md +0 -31
  137. spatialflow-0.1.0/src/spatialflow/_generated/docs/ForgotPasswordSchema.md +0 -29
  138. spatialflow-0.1.0/src/spatialflow/_generated/docs/GPXPlaybackOut.md +0 -42
  139. spatialflow-0.1.0/src/spatialflow/_generated/docs/GPXRouteOut.md +0 -40
  140. spatialflow-0.1.0/src/spatialflow/_generated/docs/GPXSimulatorApi.md +0 -883
  141. spatialflow-0.1.0/src/spatialflow/_generated/docs/GeoJSONPoint.md +0 -31
  142. spatialflow-0.1.0/src/spatialflow/_generated/docs/GeofenceListResponse.md +0 -31
  143. spatialflow-0.1.0/src/spatialflow/_generated/docs/GeofenceResponse.md +0 -43
  144. spatialflow-0.1.0/src/spatialflow/_generated/docs/GeofenceStats.md +0 -30
  145. spatialflow-0.1.0/src/spatialflow/_generated/docs/GeofenceTestResult.md +0 -33
  146. spatialflow-0.1.0/src/spatialflow/_generated/docs/GeofencesApi.md +0 -1524
  147. spatialflow-0.1.0/src/spatialflow/_generated/docs/HealthCheckResponse.md +0 -31
  148. spatialflow-0.1.0/src/spatialflow/_generated/docs/HealthResponse.md +0 -32
  149. spatialflow-0.1.0/src/spatialflow/_generated/docs/ImportIntegrationSchema.md +0 -32
  150. spatialflow-0.1.0/src/spatialflow/_generated/docs/ImportResultSchema.md +0 -33
  151. spatialflow-0.1.0/src/spatialflow/_generated/docs/IntegrationDetailSchema.md +0 -44
  152. spatialflow-0.1.0/src/spatialflow/_generated/docs/IntegrationResponseSchema.md +0 -42
  153. spatialflow-0.1.0/src/spatialflow/_generated/docs/IntegrationStatsSchema.md +0 -36
  154. spatialflow-0.1.0/src/spatialflow/_generated/docs/IntegrationTypeListResponse.md +0 -34
  155. spatialflow-0.1.0/src/spatialflow/_generated/docs/IntegrationTypeRequest.md +0 -40
  156. spatialflow-0.1.0/src/spatialflow/_generated/docs/IntegrationTypeResponse.md +0 -45
  157. spatialflow-0.1.0/src/spatialflow/_generated/docs/IntegrationsApi.md +0 -2008
  158. spatialflow-0.1.0/src/spatialflow/_generated/docs/InvoiceLineItem.md +0 -33
  159. spatialflow-0.1.0/src/spatialflow/_generated/docs/InvoiceListResponse.md +0 -31
  160. spatialflow-0.1.0/src/spatialflow/_generated/docs/InvoiceResponse.md +0 -40
  161. spatialflow-0.1.0/src/spatialflow/_generated/docs/LocationBatchIn.md +0 -31
  162. spatialflow-0.1.0/src/spatialflow/_generated/docs/LocationImportResponse.md +0 -41
  163. spatialflow-0.1.0/src/spatialflow/_generated/docs/LocationIngestResponse.md +0 -35
  164. spatialflow-0.1.0/src/spatialflow/_generated/docs/LocationPointIn.md +0 -38
  165. spatialflow-0.1.0/src/spatialflow/_generated/docs/LocationUpdateIn.md +0 -36
  166. spatialflow-0.1.0/src/spatialflow/_generated/docs/LocationUpdateOut.md +0 -32
  167. spatialflow-0.1.0/src/spatialflow/_generated/docs/LoginResponse.md +0 -33
  168. spatialflow-0.1.0/src/spatialflow/_generated/docs/LoginSchema.md +0 -30
  169. spatialflow-0.1.0/src/spatialflow/_generated/docs/MemberActionResponse.md +0 -33
  170. spatialflow-0.1.0/src/spatialflow/_generated/docs/MemberSummary.md +0 -36
  171. spatialflow-0.1.0/src/spatialflow/_generated/docs/MethodEnum.md +0 -17
  172. spatialflow-0.1.0/src/spatialflow/_generated/docs/OAuthAuthorizeResponse.md +0 -29
  173. spatialflow-0.1.0/src/spatialflow/_generated/docs/OAuthCallbackQuery.md +0 -32
  174. spatialflow-0.1.0/src/spatialflow/_generated/docs/OAuthLinkResponse.md +0 -31
  175. spatialflow-0.1.0/src/spatialflow/_generated/docs/OAuthProvidersResponse.md +0 -29
  176. spatialflow-0.1.0/src/spatialflow/_generated/docs/OnboardingProgressResponse.md +0 -37
  177. spatialflow-0.1.0/src/spatialflow/_generated/docs/PaymentMethodResponse.md +0 -37
  178. spatialflow-0.1.0/src/spatialflow/_generated/docs/PingResponse.md +0 -31
  179. spatialflow-0.1.0/src/spatialflow/_generated/docs/PlanChangePreviewResponse.md +0 -35
  180. spatialflow-0.1.0/src/spatialflow/_generated/docs/PlanFeatures.md +0 -36
  181. spatialflow-0.1.0/src/spatialflow/_generated/docs/PlanLimits.md +0 -34
  182. spatialflow-0.1.0/src/spatialflow/_generated/docs/PlanResponse.md +0 -37
  183. spatialflow-0.1.0/src/spatialflow/_generated/docs/PortalSessionRequest.md +0 -30
  184. spatialflow-0.1.0/src/spatialflow/_generated/docs/PortalSessionResponse.md +0 -30
  185. spatialflow-0.1.0/src/spatialflow/_generated/docs/PresignedUrlRequest.md +0 -31
  186. spatialflow-0.1.0/src/spatialflow/_generated/docs/PresignedUrlResponse.md +0 -35
  187. spatialflow-0.1.0/src/spatialflow/_generated/docs/PrivacyErasureRequest.md +0 -35
  188. spatialflow-0.1.0/src/spatialflow/_generated/docs/PrivacyErasureResponse.md +0 -36
  189. spatialflow-0.1.0/src/spatialflow/_generated/docs/PublicApi.md +0 -389
  190. spatialflow-0.1.0/src/spatialflow/_generated/docs/PublicLocationIngestApi.md +0 -249
  191. spatialflow-0.1.0/src/spatialflow/_generated/docs/RateLimitResponse.md +0 -32
  192. spatialflow-0.1.0/src/spatialflow/_generated/docs/RecentActivity.md +0 -31
  193. spatialflow-0.1.0/src/spatialflow/_generated/docs/RefreshTokenSchema.md +0 -29
  194. spatialflow-0.1.0/src/spatialflow/_generated/docs/RegisterSchema.md +0 -37
  195. spatialflow-0.1.0/src/spatialflow/_generated/docs/ResendVerificationSchema.md +0 -29
  196. spatialflow-0.1.0/src/spatialflow/_generated/docs/ResetPasswordSchema.md +0 -31
  197. spatialflow-0.1.0/src/spatialflow/_generated/docs/RetryPolicyResponseSchema.md +0 -32
  198. spatialflow-0.1.0/src/spatialflow/_generated/docs/RetryPolicySchema.md +0 -35
  199. spatialflow-0.1.0/src/spatialflow/_generated/docs/RetryStrategyEnum.md +0 -14
  200. spatialflow-0.1.0/src/spatialflow/_generated/docs/SeedDataResponseSchema.md +0 -31
  201. spatialflow-0.1.0/src/spatialflow/_generated/docs/SendEmailRequest.md +0 -33
  202. spatialflow-0.1.0/src/spatialflow/_generated/docs/SetupIntentResponse.md +0 -30
  203. spatialflow-0.1.0/src/spatialflow/_generated/docs/SignupRequest.md +0 -40
  204. spatialflow-0.1.0/src/spatialflow/_generated/docs/StartPlaybackRequest.md +0 -30
  205. spatialflow-0.1.0/src/spatialflow/_generated/docs/StorageApi.md +0 -494
  206. spatialflow-0.1.0/src/spatialflow/_generated/docs/SubscriptionActionResponse.md +0 -32
  207. spatialflow-0.1.0/src/spatialflow/_generated/docs/SubscriptionResponse.md +0 -36
  208. spatialflow-0.1.0/src/spatialflow/_generated/docs/SubscriptionsApi.md +0 -677
  209. spatialflow-0.1.0/src/spatialflow/_generated/docs/SuccessResponse.md +0 -31
  210. spatialflow-0.1.0/src/spatialflow/_generated/docs/SystemApi.md +0 -137
  211. spatialflow-0.1.0/src/spatialflow/_generated/docs/TemplateOut.md +0 -35
  212. spatialflow-0.1.0/src/spatialflow/_generated/docs/TestEventRequest.md +0 -29
  213. spatialflow-0.1.0/src/spatialflow/_generated/docs/TestIntegrationResponseSchema.md +0 -31
  214. spatialflow-0.1.0/src/spatialflow/_generated/docs/TestPointRequest.md +0 -34
  215. spatialflow-0.1.0/src/spatialflow/_generated/docs/TestPointResponse.md +0 -33
  216. spatialflow-0.1.0/src/spatialflow/_generated/docs/TestWebhookRequest.md +0 -32
  217. spatialflow-0.1.0/src/spatialflow/_generated/docs/TestWorkflowIn.md +0 -29
  218. spatialflow-0.1.0/src/spatialflow/_generated/docs/TileMetadata.md +0 -36
  219. spatialflow-0.1.0/src/spatialflow/_generated/docs/TilesApi.md +0 -462
  220. spatialflow-0.1.0/src/spatialflow/_generated/docs/UnsubscribeRequest.md +0 -29
  221. spatialflow-0.1.0/src/spatialflow/_generated/docs/UnsubscribeResponse.md +0 -31
  222. spatialflow-0.1.0/src/spatialflow/_generated/docs/UpdateGeofenceRequest.md +0 -37
  223. spatialflow-0.1.0/src/spatialflow/_generated/docs/UpdateIntegrationSchema.md +0 -33
  224. spatialflow-0.1.0/src/spatialflow/_generated/docs/UpdateMemberRoleRequest.md +0 -30
  225. spatialflow-0.1.0/src/spatialflow/_generated/docs/UpdateOnboardingProgressRequest.md +0 -30
  226. spatialflow-0.1.0/src/spatialflow/_generated/docs/UpdateProfileRequest.md +0 -45
  227. spatialflow-0.1.0/src/spatialflow/_generated/docs/UpdateUserWorkspaceRequest.md +0 -31
  228. spatialflow-0.1.0/src/spatialflow/_generated/docs/UpdateWebhookRequest.md +0 -43
  229. spatialflow-0.1.0/src/spatialflow/_generated/docs/UploadGeofencesRequest.md +0 -31
  230. spatialflow-0.1.0/src/spatialflow/_generated/docs/UploadJobStatus.md +0 -42
  231. spatialflow-0.1.0/src/spatialflow/_generated/docs/UsageMetrics.md +0 -33
  232. spatialflow-0.1.0/src/spatialflow/_generated/docs/UsageResponse.md +0 -36
  233. spatialflow-0.1.0/src/spatialflow/_generated/docs/UsageStats.md +0 -32
  234. spatialflow-0.1.0/src/spatialflow/_generated/docs/UserActionResponse.md +0 -35
  235. spatialflow-0.1.0/src/spatialflow/_generated/docs/UserApprovalRequest.md +0 -30
  236. spatialflow-0.1.0/src/spatialflow/_generated/docs/UserInviteRequest.md +0 -33
  237. spatialflow-0.1.0/src/spatialflow/_generated/docs/UserInviteResponse.md +0 -36
  238. spatialflow-0.1.0/src/spatialflow/_generated/docs/UserListResponse.md +0 -34
  239. spatialflow-0.1.0/src/spatialflow/_generated/docs/UserProfileResponse.md +0 -55
  240. spatialflow-0.1.0/src/spatialflow/_generated/docs/UserRejectionRequest.md +0 -30
  241. spatialflow-0.1.0/src/spatialflow/_generated/docs/UserResponse.md +0 -44
  242. spatialflow-0.1.0/src/spatialflow/_generated/docs/UserSummary.md +0 -41
  243. spatialflow-0.1.0/src/spatialflow/_generated/docs/UserUsageResponse.md +0 -38
  244. spatialflow-0.1.0/src/spatialflow/_generated/docs/UserWorkspaceResponse.md +0 -34
  245. spatialflow-0.1.0/src/spatialflow/_generated/docs/WebhookDeliveryDetailResponse.md +0 -49
  246. spatialflow-0.1.0/src/spatialflow/_generated/docs/WebhookDeliveryListResponse.md +0 -31
  247. spatialflow-0.1.0/src/spatialflow/_generated/docs/WebhookDeliveryResponse.md +0 -46
  248. spatialflow-0.1.0/src/spatialflow/_generated/docs/WebhookListResponse.md +0 -31
  249. spatialflow-0.1.0/src/spatialflow/_generated/docs/WebhookMetricsResponse.md +0 -31
  250. spatialflow-0.1.0/src/spatialflow/_generated/docs/WebhookResponse.md +0 -50
  251. spatialflow-0.1.0/src/spatialflow/_generated/docs/WebhookTestResponse.md +0 -36
  252. spatialflow-0.1.0/src/spatialflow/_generated/docs/WebhooksApi.md +0 -1384
  253. spatialflow-0.1.0/src/spatialflow/_generated/docs/WorkflowImportSchema.md +0 -30
  254. spatialflow-0.1.0/src/spatialflow/_generated/docs/WorkflowIn.md +0 -32
  255. spatialflow-0.1.0/src/spatialflow/_generated/docs/WorkflowListOut.md +0 -39
  256. spatialflow-0.1.0/src/spatialflow/_generated/docs/WorkflowListResponse.md +0 -32
  257. spatialflow-0.1.0/src/spatialflow/_generated/docs/WorkflowOut.md +0 -42
  258. spatialflow-0.1.0/src/spatialflow/_generated/docs/WorkflowRetryPolicyUpdateSchema.md +0 -32
  259. spatialflow-0.1.0/src/spatialflow/_generated/docs/WorkflowStepRetrySchema.md +0 -33
  260. spatialflow-0.1.0/src/spatialflow/_generated/docs/WorkflowUpdate.md +0 -33
  261. spatialflow-0.1.0/src/spatialflow/_generated/docs/WorkflowsApi.md +0 -2599
  262. spatialflow-0.1.0/src/spatialflow/_generated/docs/WorkspaceDeleteResponse.md +0 -33
  263. spatialflow-0.1.0/src/spatialflow/_generated/docs/WorkspaceDetail.md +0 -37
  264. spatialflow-0.1.0/src/spatialflow/_generated/docs/WorkspaceDetailResponse.md +0 -41
  265. spatialflow-0.1.0/src/spatialflow/_generated/docs/WorkspaceIn.md +0 -34
  266. spatialflow-0.1.0/src/spatialflow/_generated/docs/WorkspaceListItem.md +0 -39
  267. spatialflow-0.1.0/src/spatialflow/_generated/docs/WorkspaceListResponse.md +0 -34
  268. spatialflow-0.1.0/src/spatialflow/_generated/docs/WorkspaceMembersResponse.md +0 -35
  269. spatialflow-0.1.0/src/spatialflow/_generated/docs/WorkspaceOut.md +0 -38
  270. spatialflow-0.1.0/src/spatialflow/_generated/docs/WorkspaceSummary.md +0 -32
  271. spatialflow-0.1.0/src/spatialflow/_generated/docs/WorkspaceUpdateRequest.md +0 -34
  272. spatialflow-0.1.0/src/spatialflow/_generated/docs/WorkspaceUpdateResponse.md +0 -33
  273. spatialflow-0.1.0/src/spatialflow/_generated/docs/WorkspacesApi.md +0 -241
  274. spatialflow-0.1.0/src/spatialflow/_generated/git_push.sh +0 -57
  275. spatialflow-0.1.0/src/spatialflow/_generated/pyproject.toml +0 -91
  276. spatialflow-0.1.0/src/spatialflow/_generated/requirements.txt +0 -6
  277. spatialflow-0.1.0/src/spatialflow/_generated/setup.cfg +0 -2
  278. spatialflow-0.1.0/src/spatialflow/_generated/setup.py +0 -51
  279. spatialflow-0.1.0/src/spatialflow/_generated/spatialflow_generated/__init__.py +0 -216
  280. spatialflow-0.1.0/src/spatialflow/_generated/spatialflow_generated/api/workspaces_api.py +0 -813
  281. spatialflow-0.1.0/src/spatialflow/_generated/test-requirements.txt +0 -6
  282. spatialflow-0.1.0/src/spatialflow/_generated/tox.ini +0 -9
  283. spatialflow-0.1.0/src/spatialflow/client.py +0 -137
  284. spatialflow-0.1.0/src/spatialflow/pagination.py +0 -142
  285. spatialflow-0.1.0/tests/test_integration.py +0 -135
  286. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/api/account_api.py +0 -0
  287. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/api/billing_api.py +0 -0
  288. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/api/default_api.py +0 -0
  289. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/api/email_api.py +0 -0
  290. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/api/storage_api.py +0 -0
  291. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/api/subscriptions_api.py +0 -0
  292. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/api/system_api.py +0 -0
  293. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/api/tiles_api.py +0 -0
  294. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/api_response.py +0 -0
  295. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/action_delivery_success_metrics.py +0 -0
  296. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/action_response.py +0 -0
  297. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/action_retry_config_schema.py +0 -0
  298. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/activity_summary.py +0 -0
  299. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/api_key_create_request.py +0 -0
  300. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/api_key_create_response.py +0 -0
  301. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/api_key_response.py +0 -0
  302. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/api_key_update_request.py +0 -0
  303. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/api_usage_stats.py +0 -0
  304. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/async_upload_geofences_response.py +0 -0
  305. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/auth_type_enum.py +0 -0
  306. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/batch_location_update_in.py +0 -0
  307. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/bulk_geofence_request.py +0 -0
  308. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/change_password_schema.py +0 -0
  309. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/checkout_session_request.py +0 -0
  310. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/checkout_session_response.py +0 -0
  311. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/circuit_breaker_schema.py +0 -0
  312. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/config_field_definition_request.py +0 -0
  313. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/config_field_definition_response.py +0 -0
  314. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/confirm_password_reset_schema.py +0 -0
  315. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/create_from_template_in.py +0 -0
  316. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/create_geofence_request.py +0 -0
  317. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/create_integration_schema.py +0 -0
  318. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/create_user_schema.py +0 -0
  319. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/create_webhook_request.py +0 -0
  320. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/dashboard_comparison_metrics.py +0 -0
  321. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/dashboard_metrics_response.py +0 -0
  322. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/delete_file_response.py +0 -0
  323. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/delivery_status_enum.py +0 -0
  324. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/device_in.py +0 -0
  325. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/email_health_response.py +0 -0
  326. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/email_queue_stats.py +0 -0
  327. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/email_stats.py +0 -0
  328. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/email_status_response.py +0 -0
  329. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/error_response.py +0 -0
  330. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/export_integration_schema.py +0 -0
  331. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/file_list_response.py +0 -0
  332. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/forgot_password_schema.py +0 -0
  333. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/geo_json_point.py +0 -0
  334. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/geofence_list_response.py +0 -0
  335. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/geofence_response.py +0 -0
  336. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/geofence_stats.py +0 -0
  337. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/geofence_test_result.py +0 -0
  338. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/gpx_playback_out.py +0 -0
  339. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/gpx_route_out.py +0 -0
  340. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/health_check_response.py +0 -0
  341. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/health_response.py +0 -0
  342. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/import_integration_schema.py +0 -0
  343. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/integration_stats_schema.py +0 -0
  344. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/integration_type_list_response.py +0 -0
  345. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/integration_type_request.py +0 -0
  346. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/integration_type_response.py +0 -0
  347. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/invoice_line_item.py +0 -0
  348. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/invoice_list_response.py +0 -0
  349. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/invoice_response.py +0 -0
  350. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/location_batch_in.py +0 -0
  351. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/location_import_response.py +0 -0
  352. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/location_ingest_response.py +0 -0
  353. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/location_point_in.py +0 -0
  354. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/location_update_in.py +0 -0
  355. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/location_update_out.py +0 -0
  356. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/login_response.py +0 -0
  357. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/login_schema.py +0 -0
  358. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/member_action_response.py +0 -0
  359. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/member_summary.py +0 -0
  360. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/method_enum.py +0 -0
  361. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/o_auth_authorize_response.py +0 -0
  362. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/o_auth_callback_query.py +0 -0
  363. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/o_auth_link_response.py +0 -0
  364. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/o_auth_providers_response.py +0 -0
  365. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/onboarding_progress_response.py +0 -0
  366. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/payment_method_response.py +0 -0
  367. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/ping_response.py +0 -0
  368. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/plan_change_preview_response.py +0 -0
  369. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/plan_features.py +0 -0
  370. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/plan_limits.py +0 -0
  371. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/plan_response.py +0 -0
  372. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/portal_session_request.py +0 -0
  373. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/portal_session_response.py +0 -0
  374. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/presigned_url_request.py +0 -0
  375. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/presigned_url_response.py +0 -0
  376. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/privacy_erasure_request.py +0 -0
  377. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/privacy_erasure_response.py +0 -0
  378. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/rate_limit_response.py +0 -0
  379. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/recent_activity.py +0 -0
  380. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/refresh_token_schema.py +0 -0
  381. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/register_schema.py +0 -0
  382. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/resend_verification_schema.py +0 -0
  383. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/reset_password_schema.py +0 -0
  384. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/retry_policy_response_schema.py +0 -0
  385. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/retry_policy_schema.py +0 -0
  386. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/retry_strategy_enum.py +0 -0
  387. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/seed_data_response_schema.py +0 -0
  388. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/send_email_request.py +0 -0
  389. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/setup_intent_response.py +0 -0
  390. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/signup_request.py +0 -0
  391. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/start_playback_request.py +0 -0
  392. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/subscription_action_response.py +0 -0
  393. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/subscription_response.py +0 -0
  394. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/success_response.py +0 -0
  395. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/test_event_request.py +0 -0
  396. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/test_integration_response_schema.py +0 -0
  397. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/test_webhook_request.py +0 -0
  398. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/test_workflow_in.py +0 -0
  399. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/tile_metadata.py +0 -0
  400. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/unsubscribe_request.py +0 -0
  401. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/unsubscribe_response.py +0 -0
  402. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/update_geofence_request.py +0 -0
  403. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/update_integration_schema.py +0 -0
  404. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/update_member_role_request.py +0 -0
  405. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/update_onboarding_progress_request.py +0 -0
  406. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/update_profile_request.py +0 -0
  407. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/update_user_workspace_request.py +0 -0
  408. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/update_webhook_request.py +0 -0
  409. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/upload_geofences_request.py +0 -0
  410. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/upload_job_status.py +0 -0
  411. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/usage_metrics.py +0 -0
  412. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/usage_response.py +0 -0
  413. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/usage_stats.py +0 -0
  414. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/user_action_response.py +0 -0
  415. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/user_approval_request.py +0 -0
  416. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/user_invite_request.py +0 -0
  417. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/user_invite_response.py +0 -0
  418. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/user_list_response.py +0 -0
  419. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/user_profile_response.py +0 -0
  420. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/user_rejection_request.py +0 -0
  421. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/user_response.py +0 -0
  422. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/user_summary.py +0 -0
  423. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/user_usage_response.py +0 -0
  424. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/user_workspace_response.py +0 -0
  425. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/webhook_delivery_detail_response.py +0 -0
  426. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/webhook_delivery_list_response.py +0 -0
  427. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/webhook_delivery_response.py +0 -0
  428. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/webhook_list_response.py +0 -0
  429. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/webhook_metrics_response.py +0 -0
  430. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/webhook_response.py +0 -0
  431. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/webhook_test_response.py +0 -0
  432. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/workflow_import_schema.py +0 -0
  433. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/workflow_in.py +0 -0
  434. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/workflow_list_response.py +0 -0
  435. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/workflow_retry_policy_update_schema.py +0 -0
  436. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/workflow_step_retry_schema.py +0 -0
  437. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/workflow_update.py +0 -0
  438. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/workspace_delete_response.py +0 -0
  439. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/workspace_detail.py +0 -0
  440. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/workspace_detail_response.py +0 -0
  441. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/workspace_in.py +0 -0
  442. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/workspace_list_item.py +0 -0
  443. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/workspace_list_response.py +0 -0
  444. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/workspace_members_response.py +0 -0
  445. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/workspace_summary.py +0 -0
  446. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/workspace_update_request.py +0 -0
  447. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/models/workspace_update_response.py +0 -0
  448. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/_generated/spatialflow_generated/py.typed +0 -0
  449. {spatialflow-0.1.0 → spatialflow-0.2.0}/src/spatialflow/jobs.py +0 -0
  450. {spatialflow-0.1.0 → spatialflow-0.2.0}/tests/__init__.py +0 -0
  451. {spatialflow-0.1.0 → spatialflow-0.2.0}/tests/conftest.py +0 -0
  452. {spatialflow-0.1.0 → spatialflow-0.2.0}/tests/test_jobs.py +0 -0
  453. {spatialflow-0.1.0 → spatialflow-0.2.0}/tests/test_webhooks.py +0 -0
@@ -0,0 +1,29 @@
1
+ # Build artifacts
2
+ dist/
3
+ build/
4
+ *.egg-info/
5
+
6
+ # Python cache
7
+ __pycache__/
8
+ *.py[cod]
9
+ *$py.class
10
+ .pytest_cache/
11
+
12
+ # Coverage
13
+ htmlcov/
14
+ .coverage
15
+ .coverage.*
16
+
17
+ # Virtual environments
18
+ .venv/
19
+ venv/
20
+ ENV/
21
+
22
+ # IDE
23
+ .idea/
24
+ .vscode/
25
+ *.swp
26
+ *.swo
27
+
28
+ # OpenAPI generator scratch (if regenerating)
29
+ .openapi-generator/FILES
@@ -5,7 +5,33 @@ All notable changes to the SpatialFlow Python SDK will be documented in this fil
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
- ## [0.1.0] - 2024-12-04
8
+ ## [0.2.0] - 2025-12-26
9
+
10
+ ### Added
11
+
12
+ - **Workflow activation**: `client.workflows.activate(workflow_id)` - Activate draft workflows for production use
13
+ - Idempotent: returns success if workflow is already active
14
+ - Validates workflow has trigger and steps before activation
15
+ - Rate limited: 1000 requests/hour
16
+
17
+ ### Fixed
18
+
19
+ - **Integrations API key auth**: Integrations API now accepts API key authentication (was JWT-only)
20
+ - Requires `integrations:read` permission for list/get endpoints
21
+ - Requires `integrations:write` permission for create/update/delete/test endpoints
22
+ - Fixes: GitHub issue #114
23
+
24
+ - **Location ingest JWT auth**: Location ingest API now accepts JWT authentication (was API-key-only)
25
+ - Both JWT and API key auth now work for location ingestion
26
+ - Fixes: GitHub issue #115
27
+
28
+ ### Technical Details
29
+
30
+ - Regenerated from OpenAPI spec using openapi-generator-cli 7.19.0
31
+ - Generated package now installed as `spatialflow_generated` in virtualenv
32
+ - OpenAPI spec hash: ce5ef5f82f7f17ebc5d628a612b84d1d39159c330c8362c4680be7bbdda50327
33
+
34
+ ## [0.1.0] - 2025-12-04
9
35
 
10
36
  ### Added
11
37
 
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 SpatialFlow
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,144 @@
1
+ Metadata-Version: 2.4
2
+ Name: spatialflow
3
+ Version: 0.2.0
4
+ Summary: Python SDK for SpatialFlow - Real-time geospatial automation platform
5
+ Project-URL: Homepage, https://spatialflow.io
6
+ Project-URL: Documentation, https://docs.spatialflow.io/sdk/python
7
+ Project-URL: Repository, https://github.com/spatialflow-io/spatialflow-python
8
+ Project-URL: Issues, https://github.com/spatialflow-io/spatialflow-python/issues
9
+ Project-URL: Changelog, https://github.com/spatialflow-io/spatialflow-python/blob/main/CHANGELOG.md
10
+ Author-email: SpatialFlow <support@spatialflow.io>
11
+ License-Expression: MIT
12
+ License-File: LICENSE
13
+ Keywords: automation,geofencing,geospatial,location,sdk,spatialflow
14
+ Classifier: Development Status :: 3 - Alpha
15
+ Classifier: Intended Audience :: Developers
16
+ Classifier: License :: OSI Approved :: MIT License
17
+ Classifier: Operating System :: OS Independent
18
+ Classifier: Programming Language :: Python :: 3
19
+ Classifier: Programming Language :: Python :: 3.9
20
+ Classifier: Programming Language :: Python :: 3.10
21
+ Classifier: Programming Language :: Python :: 3.11
22
+ Classifier: Programming Language :: Python :: 3.12
23
+ Classifier: Programming Language :: Python :: 3.13
24
+ Classifier: Topic :: Scientific/Engineering :: GIS
25
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
26
+ Classifier: Typing :: Typed
27
+ Requires-Python: >=3.9
28
+ Requires-Dist: aiohttp-retry>=2.8.3
29
+ Requires-Dist: aiohttp>=3.8.4
30
+ Requires-Dist: pydantic>=2.0.0
31
+ Requires-Dist: python-dateutil>=2.8.2
32
+ Requires-Dist: typing-extensions>=4.7.1
33
+ Requires-Dist: urllib3<3.0.0,>=1.25.3
34
+ Provides-Extra: dev
35
+ Requires-Dist: aioresponses>=0.7.4; extra == 'dev'
36
+ Requires-Dist: mypy>=1.0.0; extra == 'dev'
37
+ Requires-Dist: pytest-asyncio>=0.21.0; extra == 'dev'
38
+ Requires-Dist: pytest-cov>=4.0.0; extra == 'dev'
39
+ Requires-Dist: pytest>=7.0.0; extra == 'dev'
40
+ Requires-Dist: ruff>=0.1.0; extra == 'dev'
41
+ Provides-Extra: docs
42
+ Requires-Dist: mkdocs-material>=9.0.0; extra == 'docs'
43
+ Requires-Dist: mkdocs>=1.5.0; extra == 'docs'
44
+ Requires-Dist: mkdocstrings[python]>=0.24.0; extra == 'docs'
45
+ Description-Content-Type: text/markdown
46
+
47
+ # SpatialFlow Python SDK
48
+
49
+ The official Python SDK for [SpatialFlow](https://spatialflow.io) - a real-time geospatial automation platform.
50
+
51
+ ## Installation
52
+
53
+ ```bash
54
+ pip install spatialflow
55
+ ```
56
+
57
+ ### Development Installation
58
+
59
+ ```bash
60
+ cd sdks/python
61
+ pip install -e ".[dev]"
62
+ ```
63
+
64
+ ## Quick Start
65
+
66
+ ```python
67
+ import asyncio
68
+ from spatialflow import SpatialFlow
69
+
70
+ async def main():
71
+ async with SpatialFlow(api_key="sf_xxx") as client:
72
+ # List geofences
73
+ response = await client.geofences.list()
74
+ for geofence in response.geofences:
75
+ print(f"{geofence.name}: {geofence.id}")
76
+
77
+ # Get workspace usage
78
+ usage = await client.workspaces.get_usage()
79
+ print(f"Event units: {usage.event_units}")
80
+
81
+ asyncio.run(main())
82
+ ```
83
+
84
+ ## Supported Resources
85
+
86
+ | Resource | Methods | Description |
87
+ |----------|---------|-------------|
88
+ | **Geofences** | CRUD, upload, bulk | Manage geofence boundaries |
89
+ | **Workflows** | CRUD, execute, monitor, versioning | Automation workflows |
90
+ | **Webhooks** | CRUD, deliveries, DLQ, metrics | Webhook endpoints and delivery tracking |
91
+ | **Devices** | CRUD, location updates | Device management |
92
+ | **Account** | profile, API keys, metrics, onboarding | User account management |
93
+ | **Workspaces** | get, update, usage | Workspace settings and usage metrics |
94
+ | **Locations** | ingest, batch, stats | Public location ingestion API |
95
+ | **Integrations** | CRUD, test | Third-party service connections |
96
+ | **Storage** | presigned URLs, files | File upload and management |
97
+
98
+ ## Features
99
+
100
+ - Fully async with `aiohttp`
101
+ - Automatic retry with exponential backoff
102
+ - Pagination helpers
103
+ - Webhook signature verification
104
+ - Workflow builders for common patterns
105
+ - File upload with streaming (memory efficient)
106
+
107
+ ## Error Handling
108
+
109
+ ```python
110
+ from spatialflow import SpatialFlow, NotFoundError, ValidationError
111
+
112
+ async with SpatialFlow(api_key="sf_xxx") as client:
113
+ try:
114
+ geofence = await client.geofences.get("invalid-id")
115
+ except NotFoundError as e:
116
+ print(f"Geofence not found: {e}")
117
+ except ValidationError as e:
118
+ print(f"Invalid request: {e.errors}")
119
+ ```
120
+
121
+ ## Raw API Access
122
+
123
+ For advanced use cases, access the generated API clients directly:
124
+
125
+ ```python
126
+ async with SpatialFlow(api_key="sf_xxx") as client:
127
+ # Use raw generated API
128
+ response = await client.raw.geofences.apps_geofences_api_list_geofences()
129
+ ```
130
+
131
+ Available via `client.raw`:
132
+ - `geofences`, `workflows`, `webhooks`, `devices`, `storage`, `locations`, `integrations`, `workspaces`, `account` (also wrapped)
133
+ - `authentication`, `admin`, `billing`, `subscriptions`, `tiles` (raw only)
134
+
135
+ > **Alpha Notice:** This SDK is in alpha (v0.1.0). Some generated APIs (email, system, gpx_simulator,
136
+ > public, default, e2e_test) are not yet exposed. Use the generated client directly for those.
137
+
138
+ ## Documentation
139
+
140
+ Full documentation: [docs.spatialflow.io/sdks/python](https://docs.spatialflow.io/sdks/python)
141
+
142
+ ## License
143
+
144
+ MIT
@@ -0,0 +1,98 @@
1
+ # SpatialFlow Python SDK
2
+
3
+ The official Python SDK for [SpatialFlow](https://spatialflow.io) - a real-time geospatial automation platform.
4
+
5
+ ## Installation
6
+
7
+ ```bash
8
+ pip install spatialflow
9
+ ```
10
+
11
+ ### Development Installation
12
+
13
+ ```bash
14
+ cd sdks/python
15
+ pip install -e ".[dev]"
16
+ ```
17
+
18
+ ## Quick Start
19
+
20
+ ```python
21
+ import asyncio
22
+ from spatialflow import SpatialFlow
23
+
24
+ async def main():
25
+ async with SpatialFlow(api_key="sf_xxx") as client:
26
+ # List geofences
27
+ response = await client.geofences.list()
28
+ for geofence in response.geofences:
29
+ print(f"{geofence.name}: {geofence.id}")
30
+
31
+ # Get workspace usage
32
+ usage = await client.workspaces.get_usage()
33
+ print(f"Event units: {usage.event_units}")
34
+
35
+ asyncio.run(main())
36
+ ```
37
+
38
+ ## Supported Resources
39
+
40
+ | Resource | Methods | Description |
41
+ |----------|---------|-------------|
42
+ | **Geofences** | CRUD, upload, bulk | Manage geofence boundaries |
43
+ | **Workflows** | CRUD, execute, monitor, versioning | Automation workflows |
44
+ | **Webhooks** | CRUD, deliveries, DLQ, metrics | Webhook endpoints and delivery tracking |
45
+ | **Devices** | CRUD, location updates | Device management |
46
+ | **Account** | profile, API keys, metrics, onboarding | User account management |
47
+ | **Workspaces** | get, update, usage | Workspace settings and usage metrics |
48
+ | **Locations** | ingest, batch, stats | Public location ingestion API |
49
+ | **Integrations** | CRUD, test | Third-party service connections |
50
+ | **Storage** | presigned URLs, files | File upload and management |
51
+
52
+ ## Features
53
+
54
+ - Fully async with `aiohttp`
55
+ - Automatic retry with exponential backoff
56
+ - Pagination helpers
57
+ - Webhook signature verification
58
+ - Workflow builders for common patterns
59
+ - File upload with streaming (memory efficient)
60
+
61
+ ## Error Handling
62
+
63
+ ```python
64
+ from spatialflow import SpatialFlow, NotFoundError, ValidationError
65
+
66
+ async with SpatialFlow(api_key="sf_xxx") as client:
67
+ try:
68
+ geofence = await client.geofences.get("invalid-id")
69
+ except NotFoundError as e:
70
+ print(f"Geofence not found: {e}")
71
+ except ValidationError as e:
72
+ print(f"Invalid request: {e.errors}")
73
+ ```
74
+
75
+ ## Raw API Access
76
+
77
+ For advanced use cases, access the generated API clients directly:
78
+
79
+ ```python
80
+ async with SpatialFlow(api_key="sf_xxx") as client:
81
+ # Use raw generated API
82
+ response = await client.raw.geofences.apps_geofences_api_list_geofences()
83
+ ```
84
+
85
+ Available via `client.raw`:
86
+ - `geofences`, `workflows`, `webhooks`, `devices`, `storage`, `locations`, `integrations`, `workspaces`, `account` (also wrapped)
87
+ - `authentication`, `admin`, `billing`, `subscriptions`, `tiles` (raw only)
88
+
89
+ > **Alpha Notice:** This SDK is in alpha (v0.1.0). Some generated APIs (email, system, gpx_simulator,
90
+ > public, default, e2e_test) are not yet exposed. Use the generated client directly for those.
91
+
92
+ ## Documentation
93
+
94
+ Full documentation: [docs.spatialflow.io/sdks/python](https://docs.spatialflow.io/sdks/python)
95
+
96
+ ## License
97
+
98
+ MIT
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "spatialflow"
7
- version = "0.1.0"
7
+ version = "0.2.0"
8
8
  description = "Python SDK for SpatialFlow - Real-time geospatial automation platform"
9
9
  readme = "README.md"
10
10
  license = "MIT"
@@ -61,6 +61,30 @@ Changelog = "https://github.com/spatialflow-io/spatialflow-python/blob/main/CHAN
61
61
 
62
62
  [tool.hatch.build.targets.wheel]
63
63
  packages = ["src/spatialflow"]
64
+ # Exclude generated scaffolding from wheel (keep only Python code)
65
+ exclude = [
66
+ # OpenAPI generator scaffolding
67
+ "**/.openapi-generator*",
68
+ "**/git_push.sh",
69
+ # Generated docs (not needed at runtime)
70
+ "**/docs/**",
71
+ # CI/CD configs
72
+ "**/.github/**",
73
+ "**/.gitlab-ci.yml",
74
+ "**/.travis.yml",
75
+ "**/tox.ini",
76
+ # Build configs (use root pyproject.toml instead)
77
+ "src/spatialflow/_generated/pyproject.toml",
78
+ "src/spatialflow/_generated/setup.py",
79
+ "src/spatialflow/_generated/setup.cfg",
80
+ "src/spatialflow/_generated/requirements.txt",
81
+ "src/spatialflow/_generated/test-requirements.txt",
82
+ # Generated README (we have our own)
83
+ "src/spatialflow/_generated/README.md",
84
+ # Git ignores
85
+ "**/.gitignore",
86
+ "**/.spec-hash",
87
+ ]
64
88
 
65
89
  [tool.hatch.build.targets.sdist]
66
90
  include = [
@@ -68,6 +92,25 @@ include = [
68
92
  "/tests",
69
93
  "/README.md",
70
94
  "/CHANGELOG.md",
95
+ "/LICENSE",
96
+ ]
97
+ exclude = [
98
+ # Same exclusions for sdist
99
+ "**/.openapi-generator*",
100
+ "**/git_push.sh",
101
+ "**/docs/**",
102
+ "**/.github/**",
103
+ "**/.gitlab-ci.yml",
104
+ "**/.travis.yml",
105
+ "**/tox.ini",
106
+ "src/spatialflow/_generated/pyproject.toml",
107
+ "src/spatialflow/_generated/setup.py",
108
+ "src/spatialflow/_generated/setup.cfg",
109
+ "src/spatialflow/_generated/requirements.txt",
110
+ "src/spatialflow/_generated/test-requirements.txt",
111
+ "src/spatialflow/_generated/README.md",
112
+ "**/.gitignore",
113
+ "**/.spec-hash",
71
114
  ]
72
115
 
73
116
  [tool.ruff]
@@ -0,0 +1,144 @@
1
+ """
2
+ SpatialFlow Python SDK
3
+
4
+ A Python client for the SpatialFlow API - real-time geospatial automation platform.
5
+
6
+ Example:
7
+ >>> from spatialflow import SpatialFlow, models
8
+ >>>
9
+ >>> async with SpatialFlow(api_key="sf_xxx") as client:
10
+ ... # List geofences
11
+ ... response = await client.geofences.list()
12
+ ... for geofence in response.geofences:
13
+ ... print(geofence.name)
14
+ ...
15
+ ... # Create a geofence
16
+ ... geofence = await client.geofences.create(
17
+ ... models.CreateGeofenceRequest(name="My Region", geometry={...})
18
+ ... )
19
+
20
+ """
21
+
22
+ __version__ = "0.2.0"
23
+
24
+ # Main client (imported early to get DEFAULT_BASE_URL)
25
+ from .client import SpatialFlow, DEFAULT_BASE_URL
26
+
27
+ # Custom exceptions
28
+ from .exceptions import (
29
+ SpatialFlowError,
30
+ AuthenticationError,
31
+ PermissionError,
32
+ NotFoundError,
33
+ ValidationError,
34
+ RateLimitError,
35
+ ServerError,
36
+ ConflictError,
37
+ TimeoutError,
38
+ ConnectionError,
39
+ translate_exception,
40
+ )
41
+
42
+ # Webhook verification
43
+ from .webhooks import verify_webhook_signature, WebhookSignatureError, verify_signature
44
+
45
+ # Pagination helpers
46
+ from .pagination import (
47
+ paginate,
48
+ paginate_geofences,
49
+ paginate_workflows,
50
+ paginate_webhooks,
51
+ paginate_users,
52
+ paginate_files,
53
+ AsyncPaginator,
54
+ PaginatedResponse,
55
+ )
56
+
57
+ # Job polling helpers
58
+ from .jobs import poll_job, JobResult, JobTimeoutError, JobFailedError
59
+
60
+ # File upload helpers
61
+ from .uploads import upload_geofences
62
+
63
+ # Workflow builders
64
+ from .builders import (
65
+ build_geofence_webhook_workflow,
66
+ build_geofence_integration_workflow,
67
+ TriggerType,
68
+ )
69
+
70
+ # Resource classes (for type hints and advanced usage)
71
+ from .resources import (
72
+ AccountResource,
73
+ GeofencesResource,
74
+ WorkflowsResource,
75
+ WebhooksResource,
76
+ DevicesResource,
77
+ StorageResource,
78
+ LocationsResource,
79
+ IntegrationsResource,
80
+ WorkspacesResource,
81
+ )
82
+
83
+ # Re-export generated client and models for advanced usage
84
+ from ._generated.spatialflow_generated.api_client import ApiClient
85
+ from ._generated.spatialflow_generated.configuration import Configuration
86
+ from ._generated.spatialflow_generated import models
87
+
88
+ __all__ = [
89
+ # Version
90
+ "__version__",
91
+ "DEFAULT_BASE_URL",
92
+ # Main client
93
+ "SpatialFlow",
94
+ # Exceptions
95
+ "SpatialFlowError",
96
+ "AuthenticationError",
97
+ "PermissionError",
98
+ "NotFoundError",
99
+ "ValidationError",
100
+ "RateLimitError",
101
+ "ServerError",
102
+ "ConflictError",
103
+ "TimeoutError",
104
+ "ConnectionError",
105
+ "translate_exception",
106
+ # Webhooks
107
+ "verify_webhook_signature",
108
+ "verify_signature",
109
+ "WebhookSignatureError",
110
+ # Pagination
111
+ "paginate",
112
+ "paginate_geofences",
113
+ "paginate_workflows",
114
+ "paginate_webhooks",
115
+ "paginate_users",
116
+ "paginate_files",
117
+ "AsyncPaginator",
118
+ "PaginatedResponse",
119
+ # Job polling
120
+ "poll_job",
121
+ "JobResult",
122
+ "JobTimeoutError",
123
+ "JobFailedError",
124
+ # File uploads
125
+ "upload_geofences",
126
+ # Workflow builders
127
+ "build_geofence_webhook_workflow",
128
+ "build_geofence_integration_workflow",
129
+ "TriggerType",
130
+ # Resource classes
131
+ "AccountResource",
132
+ "GeofencesResource",
133
+ "WorkflowsResource",
134
+ "WebhooksResource",
135
+ "DevicesResource",
136
+ "StorageResource",
137
+ "LocationsResource",
138
+ "IntegrationsResource",
139
+ "WorkspacesResource",
140
+ # Generated (advanced)
141
+ "ApiClient",
142
+ "Configuration",
143
+ "models",
144
+ ]