axhub-sdk 0.5.0 → 0.6.0

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: '053963821b948473882e41080e081b709c301d2e46936f241e2943c11efda494'
4
- data.tar.gz: ae6eadcc57dc330271655820bb2112dd90bcd332a726cec8831bd9d3b05c5ba2
3
+ metadata.gz: 86b1b04e5aef262ab07bdb552bb11e590488b9c1377e3f94f5bc76f736426fa5
4
+ data.tar.gz: 5ceef20e46b9480a9787347cd329e2cfd85410f30795ba6cb3f975d60b49c288
5
5
  SHA512:
6
- metadata.gz: d1969fb1cd767f65117ab6cc35b76614ccf316d151a9366306ba7ca35f92f4afd7282a2712e3dc816ca0ea6b18c5585c7fcb88ca96e2aa68ca5b6bfab4f62c9c
7
- data.tar.gz: a7f088cf9979edbb888661dda47ecb0fe85ccd04189cacf80179ea8a54f1eda083bd58c3fbe662339224a6a3acf75c1cd698e01fd2ea372db50b0db6e35ec4ac
6
+ metadata.gz: 5225e19be9f9a0204e1a3368180a2df7bfced437ac4538799aad4fcbee3e282e268e40086ad3fcfbd937d540c3b17f7086c8c34cd330d87d7d8d3f71602df1a2
7
+ data.tar.gz: 906db2bde2bc9d6a652aefa9a0b62e70161989705e47056e3a50aa28768be079e7083ce183b65e127eece32d9b684af2f924f08ebc2cf0edf9fd83c22be36116
data/README.md CHANGED
@@ -71,19 +71,14 @@ client.request(
71
71
  }
72
72
  )
73
73
 
74
- row = client.request(
75
- 'schemaPostDataByTenantSlugByAppSlugByTable',
76
- path_params: { tenantSlug: 'test', appSlug: slug, table: table },
77
- body: { owner_id: user_id, title: 'hello', status: 'new' }
78
- )
79
- puts "created #{app_id} #{table} #{row['id']}"
74
+ puts "created #{app_id} #{table}"
80
75
  ```
81
76
 
82
77
  ## How to call the full API surface
83
78
 
84
79
  - High-level app create: `client.apps.create(**body)` uses `default_tenant_id`.
85
80
  - Any route by operation id: `client.request(operation_id, path_params: {}, query: {}, body: nil)`.
86
- - Generated facade: `client.data.schema_post_data_by_tenant_slug_by_app_slug_by_table(path_params: {}, body: {...})`.
81
+ - Generated facade: `client.data.schema_post_api_v1_apps_by_app_id_tables(path_params: {}, body: {...})`.
87
82
  - Route inventory: `AxHub::ROUTES`, `AxHub::CONTEXT_ROUTES`, `AxHub::ERROR_CODES`, and `AxHub::OPERATION_METHODS`.
88
83
  - Errors: catch `AxHub::Error` and branch on `code`, `category`, `status`, and `retryable`.
89
84
 
@@ -102,19 +97,12 @@ Use the high-level `apps.create` helper for the first app, then use generated op
102
97
  | Add table grant | `schemaPostApiV1AppsByAppIDTablesByTableNameGrants` | `appID`, `tableName` | response has grant `id` |
103
98
  | List grants | `schemaGetApiV1AppsByAppIDTablesByTableNameGrants` | `appID`, `tableName` | list contains grant `id` |
104
99
  | Revoke/delete grant | `schemaDeleteApiV1AppsByAppIDTablesByTableNameGrantsByGrantID` | `appID`, `tableName`, `grantID` | list still contains grant with `revokedAt` set |
105
- | Insert row | `schemaPostDataByTenantSlugByAppSlugByTable` | `tenantSlug`, `appSlug`, `table` | response has row `id` and submitted fields |
106
- | Get row | `schemaGetDataByTenantSlugByAppSlugByTableById` | `tenantSlug`, `appSlug`, `table`, `id` | response row `id` matches |
107
- | Update row | `schemaPatchDataByTenantSlugByAppSlugByTableById` | `tenantSlug`, `appSlug`, `table`, `id` | response contains patched fields |
108
- | List rows | `schemaGetDataByTenantSlugByAppSlugByTable` | `tenantSlug`, `appSlug`, `table` | `items` contains row `id` |
109
- | Count rows | `schemaGetDataByTenantSlugByAppSlugByTableCount` | `tenantSlug`, `appSlug`, `table` | `count` matches expected fixture count |
110
100
  | Browse admin rows | `schemaGetApiV1AppsByAppIDTablesByTableNameRows` | `appID`, `tableName` | response has `rows` and `columns` arrays |
111
- | Delete row | `schemaDeleteDataByTenantSlugByAppSlugByTableById` | `tenantSlug`, `appSlug`, `table`, `id` | follow-up get returns `404` or `410` |
112
101
  | Delete table | `schemaDeleteApiV1AppsByAppIDTablesByTableName` | `appID`, `tableName` | follow-up inspect returns `404` or `410` |
113
102
  | Delete app | `appsDeleteApiV1AppsByAppID`, then `appsDeleteApiV1AppsByAppIDPermanent` | `appID` | app is soft-deleted, then permanently deleted |
114
103
 
115
104
  Important semantics from live QA:
116
105
 
117
- - Row delete is hard enough for client assertions: a follow-up row get returns `404 not_found` or `410`.
118
106
  - Table delete is hard enough for client assertions: a follow-up table inspect returns `404 not_found` or `410`.
119
107
  - Table grant delete is a soft revoke: the grant can remain in `listGrants`, but the same grant id must have `revokedAt` set. Do not assert disappearance.
120
108
  - Deployment creation without a connected git/bootstrap source can return a precondition-style 4xx. That verifies SDK error handling, not a deploy bug.
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module AxHub
4
- VERSION = '0.5.0'
4
+ VERSION = '0.6.0'
5
5
  end
data/lib/axhub_sdk.rb CHANGED
@@ -30,20 +30,26 @@ module AxHub
30
30
  { 'method' => "DELETE", 'path' => "/api/v1/apps/{appID}/access", 'tag' => "Apps", 'operationId' => "appsDeleteApiV1AppsByAppIDAccess" },
31
31
  { 'method' => "POST", 'path' => "/api/v1/apps/{appID}/access", 'tag' => "Apps", 'operationId' => "appsPostApiV1AppsByAppIDAccess" },
32
32
  { 'method' => "GET", 'path' => "/api/v1/apps/{appID}/access/me", 'tag' => "Apps", 'operationId' => "appsGetApiV1AppsByAppIDAccessMe" },
33
+ { 'method' => "POST", 'path' => "/api/v1/apps/{appID}/archive", 'tag' => "Apps", 'operationId' => "appsPostApiV1AppsByAppIDArchive" },
33
34
  { 'method' => "GET", 'path' => "/api/v1/apps/{appID}/comments", 'tag' => "Apps", 'operationId' => "appsGetApiV1AppsByAppIDComments" },
34
35
  { 'method' => "POST", 'path' => "/api/v1/apps/{appID}/comments", 'tag' => "Apps", 'operationId' => "appsPostApiV1AppsByAppIDComments" },
36
+ { 'method' => "GET", 'path' => "/api/v1/apps/{appID}/db/tables", 'tag' => "Schema", 'operationId' => "schemaGetApiV1AppsByAppIDDbTables" },
37
+ { 'method' => "GET", 'path' => "/api/v1/apps/{appID}/db/tables/{table}/rows", 'tag' => "Schema", 'operationId' => "schemaGetApiV1AppsByAppIDDbTablesByTableRows" },
35
38
  { 'method' => "GET", 'path' => "/api/v1/apps/{appID}/deployments", 'tag' => "Deploy", 'operationId' => "deployGetApiV1AppsByAppIDDeployments" },
36
39
  { 'method' => "POST", 'path' => "/api/v1/apps/{appID}/deployments", 'tag' => "Deploy", 'operationId' => "deployPostApiV1AppsByAppIDDeployments" },
37
40
  { 'method' => "GET", 'path' => "/api/v1/apps/{appID}/deployments/{did}", 'tag' => "Deploy", 'operationId' => "deployGetApiV1AppsByAppIDDeploymentsByDid" },
38
41
  { 'method' => "POST", 'path' => "/api/v1/apps/{appID}/deployments/{did}/cancel", 'tag' => "Deploy", 'operationId' => "deployPostApiV1AppsByAppIDDeploymentsByDidCancel" },
39
42
  { 'method' => "POST", 'path' => "/api/v1/apps/{appID}/deployments/{did}/rollback", 'tag' => "Deploy", 'operationId' => "deployPostApiV1AppsByAppIDDeploymentsByDidRollback" },
43
+ { 'method' => "GET", 'path' => "/api/v1/apps/{appID}/diagnosis", 'tag' => "Deploy", 'operationId' => "deployGetApiV1AppsByAppIDDiagnosis" },
40
44
  { 'method' => "GET", 'path' => "/api/v1/apps/{appID}/env-vars", 'tag' => "Apps", 'operationId' => "appsGetApiV1AppsByAppIDEnvVars" },
41
45
  { 'method' => "POST", 'path' => "/api/v1/apps/{appID}/env-vars", 'tag' => "Apps", 'operationId' => "appsPostApiV1AppsByAppIDEnvVars" },
42
46
  { 'method' => "DELETE", 'path' => "/api/v1/apps/{appID}/env-vars/{key}", 'tag' => "Apps", 'operationId' => "appsDeleteApiV1AppsByAppIDEnvVarsByKey" },
47
+ { 'method' => "PUT", 'path' => "/api/v1/apps/{appID}/env-vars/{key}/staging-value", 'tag' => "Apps", 'operationId' => "appsPutApiV1AppsByAppIDEnvVarsByKeyStagingValue" },
43
48
  { 'method' => "DELETE", 'path' => "/api/v1/apps/{appID}/git-connection", 'tag' => "Deploy", 'operationId' => "deployDeleteApiV1AppsByAppIDGitConnection" },
44
49
  { 'method' => "GET", 'path' => "/api/v1/apps/{appID}/git-connection", 'tag' => "Deploy", 'operationId' => "deployGetApiV1AppsByAppIDGitConnection" },
45
50
  { 'method' => "PATCH", 'path' => "/api/v1/apps/{appID}/git-connection", 'tag' => "Deploy", 'operationId' => "deployPatchApiV1AppsByAppIDGitConnection" },
46
51
  { 'method' => "POST", 'path' => "/api/v1/apps/{appID}/git-connection", 'tag' => "Deploy", 'operationId' => "deployPostApiV1AppsByAppIDGitConnection" },
52
+ { 'method' => "POST", 'path' => "/api/v1/apps/{appID}/git/github/connect", 'tag' => "Deploy", 'operationId' => "deployPostApiV1AppsByAppIDGitGithubConnect" },
47
53
  { 'method' => "GET", 'path' => "/api/v1/apps/{appID}/git/github/install/start", 'tag' => "Deploy", 'operationId' => "deployGetApiV1AppsByAppIDGitGithubInstallStart" },
48
54
  { 'method' => "POST", 'path' => "/api/v1/apps/{appID}/icon-dark/upload-url", 'tag' => "Apps", 'operationId' => "appsPostApiV1AppsByAppIDIconDarkUploadUrl" },
49
55
  { 'method' => "POST", 'path' => "/api/v1/apps/{appID}/icon/upload-url", 'tag' => "Apps", 'operationId' => "appsPostApiV1AppsByAppIDIconUploadUrl" },
@@ -56,9 +62,17 @@ module AxHub
56
62
  { 'method' => "GET", 'path' => "/api/v1/apps/{appID}/members", 'tag' => "Apps", 'operationId' => "appsGetApiV1AppsByAppIDMembers" },
57
63
  { 'method' => "POST", 'path' => "/api/v1/apps/{appID}/oauth-clients", 'tag' => "Auth", 'operationId' => "authPostApiV1AppsByAppIDOauthClients" },
58
64
  { 'method' => "DELETE", 'path' => "/api/v1/apps/{appID}/permanent", 'tag' => "Apps", 'operationId' => "appsDeleteApiV1AppsByAppIDPermanent" },
65
+ { 'method' => "POST", 'path' => "/api/v1/apps/{appID}/promotions/{requestID}/retry", 'tag' => "Deploy", 'operationId' => "deployPostApiV1AppsByAppIDPromotionsByRequestIDRetry" },
66
+ { 'method' => "DELETE", 'path' => "/api/v1/apps/{appID}/raw-db", 'tag' => "Apps", 'operationId' => "appsDeleteApiV1AppsByAppIDRawDb" },
67
+ { 'method' => "POST", 'path' => "/api/v1/apps/{appID}/raw-db", 'tag' => "Apps", 'operationId' => "appsPostApiV1AppsByAppIDRawDb" },
68
+ { 'method' => "POST", 'path' => "/api/v1/apps/{appID}/reactivate", 'tag' => "Apps", 'operationId' => "appsPostApiV1AppsByAppIDReactivate" },
69
+ { 'method' => "GET", 'path' => "/api/v1/apps/{appID}/releases", 'tag' => "Deploy", 'operationId' => "deployGetApiV1AppsByAppIDReleases" },
70
+ { 'method' => "GET", 'path' => "/api/v1/apps/{appID}/releases/promote-preflight", 'tag' => "Deploy", 'operationId' => "deployGetApiV1AppsByAppIDReleasesPromotePreflight" },
59
71
  { 'method' => "POST", 'path' => "/api/v1/apps/{appID}/resume", 'tag' => "Apps", 'operationId' => "appsPostApiV1AppsByAppIDResume" },
60
72
  { 'method' => "GET", 'path' => "/api/v1/apps/{appID}/review-requests", 'tag' => "Apps", 'operationId' => "appsGetApiV1AppsByAppIDReviewRequests" },
61
73
  { 'method' => "POST", 'path' => "/api/v1/apps/{appID}/review-requests", 'tag' => "Apps", 'operationId' => "appsPostApiV1AppsByAppIDReviewRequests" },
74
+ { 'method' => "DELETE", 'path' => "/api/v1/apps/{appID}/staging", 'tag' => "Deploy", 'operationId' => "deployDeleteApiV1AppsByAppIDStaging" },
75
+ { 'method' => "PUT", 'path' => "/api/v1/apps/{appID}/staging", 'tag' => "Deploy", 'operationId' => "deployPutApiV1AppsByAppIDStaging" },
62
76
  { 'method' => "POST", 'path' => "/api/v1/apps/{appID}/suspend", 'tag' => "Apps", 'operationId' => "appsPostApiV1AppsByAppIDSuspend" },
63
77
  { 'method' => "GET", 'path' => "/api/v1/apps/{appID}/tables", 'tag' => "Schema", 'operationId' => "schemaGetApiV1AppsByAppIDTables" },
64
78
  { 'method' => "POST", 'path' => "/api/v1/apps/{appID}/tables", 'tag' => "Schema", 'operationId' => "schemaPostApiV1AppsByAppIDTables" },
@@ -70,11 +84,15 @@ module AxHub
70
84
  { 'method' => "POST", 'path' => "/api/v1/apps/{appID}/tables/{tableName}/grants", 'tag' => "Schema", 'operationId' => "schemaPostApiV1AppsByAppIDTablesByTableNameGrants" },
71
85
  { 'method' => "DELETE", 'path' => "/api/v1/apps/{appID}/tables/{tableName}/grants/{grantID}", 'tag' => "Schema", 'operationId' => "schemaDeleteApiV1AppsByAppIDTablesByTableNameGrantsByGrantID" },
72
86
  { 'method' => "GET", 'path' => "/api/v1/apps/{appID}/tables/{tableName}/rows", 'tag' => "Schema", 'operationId' => "schemaGetApiV1AppsByAppIDTablesByTableNameRows" },
87
+ { 'method' => "POST", 'path' => "/api/v1/apps/{appID}/tables/{tableName}/rows", 'tag' => "Schema", 'operationId' => "schemaPostApiV1AppsByAppIDTablesByTableNameRows" },
88
+ { 'method' => "DELETE", 'path' => "/api/v1/apps/{appID}/tables/{tableName}/rows/{id}", 'tag' => "Schema", 'operationId' => "schemaDeleteApiV1AppsByAppIDTablesByTableNameRowsById" },
89
+ { 'method' => "PATCH", 'path' => "/api/v1/apps/{appID}/tables/{tableName}/rows/{id}", 'tag' => "Schema", 'operationId' => "schemaPatchApiV1AppsByAppIDTablesByTableNameRowsById" },
73
90
  { 'method' => "GET", 'path' => "/api/v1/apps/{appID}/tables/check-availability", 'tag' => "Schema", 'operationId' => "schemaGetApiV1AppsByAppIDTablesCheckAvailability" },
74
91
  { 'method' => "GET", 'path' => "/api/v1/apps/{appID}/tables/column-types", 'tag' => "Schema", 'operationId' => "schemaGetApiV1AppsByAppIDTablesColumnTypes" },
75
92
  { 'method' => "GET", 'path' => "/api/v1/apps/discover", 'tag' => "Apps", 'operationId' => "appsGetApiV1AppsDiscover" },
76
93
  { 'method' => "GET", 'path' => "/api/v1/apps/search", 'tag' => "Apps", 'operationId' => "appsGetApiV1AppsSearch" },
77
94
  { 'method' => "DELETE", 'path' => "/api/v1/comments/{commentID}", 'tag' => "Apps", 'operationId' => "appsDeleteApiV1CommentsByCommentID" },
95
+ { 'method' => "POST", 'path' => "/api/v1/git/github/complete", 'tag' => "Deploy", 'operationId' => "deployPostApiV1GitGithubComplete" },
78
96
  { 'method' => "GET", 'path' => "/api/v1/github/accounts", 'tag' => "deploy", 'operationId' => "deployGetApiV1GithubAccounts" },
79
97
  { 'method' => "GET", 'path' => "/api/v1/github/installations/{installationID}/repositories", 'tag' => "deploy", 'operationId' => "deployGetApiV1GithubInstallationsByInstallationIDRepositories" },
80
98
  { 'method' => "GET", 'path' => "/api/v1/invite-links/{token}", 'tag' => "Tenants", 'operationId' => "tenantsGetApiV1InviteLinksByToken" },
@@ -95,6 +113,7 @@ module AxHub
95
113
  { 'method' => "POST", 'path' => "/api/v1/review-requests/{rrID}/reject", 'tag' => "Apps", 'operationId' => "appsPostApiV1ReviewRequestsByRrIDReject" },
96
114
  { 'method' => "GET", 'path' => "/api/v1/review-requests/history", 'tag' => "Apps", 'operationId' => "appsGetApiV1ReviewRequestsHistory" },
97
115
  { 'method' => "GET", 'path' => "/api/v1/review-requests/pending", 'tag' => "Apps", 'operationId' => "appsGetApiV1ReviewRequestsPending" },
116
+ { 'method' => "GET", 'path' => "/api/v1/static-auth/start", 'tag' => "Apps", 'operationId' => "appsGetApiV1StaticAuthStart" },
98
117
  { 'method' => "GET", 'path' => "/api/v1/templates", 'tag' => "Apps", 'operationId' => "appsGetApiV1Templates" },
99
118
  { 'method' => "GET", 'path' => "/api/v1/tenants", 'tag' => "Tenants", 'operationId' => "tenantsGetApiV1Tenants" },
100
119
  { 'method' => "POST", 'path' => "/api/v1/tenants", 'tag' => "Tenants", 'operationId' => "tenantsPostApiV1Tenants" },
@@ -105,6 +124,21 @@ module AxHub
105
124
  { 'method' => "GET", 'path' => "/api/v1/tenants/{tenantID}/app-bootstraps/{bootstrapID}", 'tag' => "Deploy", 'operationId' => "deployGetApiV1TenantsByTenantIDAppBootstrapsByBootstrapID" },
106
125
  { 'method' => "GET", 'path' => "/api/v1/tenants/{tenantID}/apps", 'tag' => "Apps", 'operationId' => "appsGetApiV1TenantsByTenantIDApps" },
107
126
  { 'method' => "POST", 'path' => "/api/v1/tenants/{tenantID}/apps", 'tag' => "Apps", 'operationId' => "appsPostApiV1TenantsByTenantIDApps" },
127
+ { 'method' => "GET", 'path' => "/api/v1/tenants/{tenantID}/apps/{appID}/static/releases", 'tag' => "Apps", 'operationId' => "appsGetApiV1TenantsByTenantIDAppsByAppIDStaticReleases" },
128
+ { 'method' => "POST", 'path' => "/api/v1/tenants/{tenantID}/apps/{appID}/static/releases", 'tag' => "Apps", 'operationId' => "appsPostApiV1TenantsByTenantIDAppsByAppIDStaticReleases" },
129
+ { 'method' => "DELETE", 'path' => "/api/v1/tenants/{tenantID}/apps/{appID}/static/releases/{releaseID}", 'tag' => "Apps", 'operationId' => "appsDeleteApiV1TenantsByTenantIDAppsByAppIDStaticReleasesByReleaseID" },
130
+ { 'method' => "POST", 'path' => "/api/v1/tenants/{tenantID}/apps/{appID}/static/releases/{releaseID}/activate", 'tag' => "Apps", 'operationId' => "appsPostApiV1TenantsByTenantIDAppsByAppIDStaticReleasesByReleaseIDActivate" },
131
+ { 'method' => "POST", 'path' => "/api/v1/tenants/{tenantID}/apps/{appID}/static/releases/{releaseID}/finalize", 'tag' => "Apps", 'operationId' => "appsPostApiV1TenantsByTenantIDAppsByAppIDStaticReleasesByReleaseIDFinalize" },
132
+ { 'method' => "POST", 'path' => "/api/v1/tenants/{tenantID}/apps/{appID}/static/releases/{releaseID}/promote-approve", 'tag' => "Apps", 'operationId' => "appsPostApiV1TenantsByTenantIDAppsByAppIDStaticReleasesByReleaseIDPromoteApprove" },
133
+ { 'method' => "POST", 'path' => "/api/v1/tenants/{tenantID}/apps/{appID}/static/releases/{releaseID}/promote-reject", 'tag' => "Apps", 'operationId' => "appsPostApiV1TenantsByTenantIDAppsByAppIDStaticReleasesByReleaseIDPromoteReject" },
134
+ { 'method' => "POST", 'path' => "/api/v1/tenants/{tenantID}/apps/{appID}/static/releases/{releaseID}/promote-request", 'tag' => "Apps", 'operationId' => "appsPostApiV1TenantsByTenantIDAppsByAppIDStaticReleasesByReleaseIDPromoteRequest" },
135
+ { 'method' => "POST", 'path' => "/api/v1/tenants/{tenantID}/apps/{appID}/static/releases/{releaseID}/rollback", 'tag' => "Apps", 'operationId' => "appsPostApiV1TenantsByTenantIDAppsByAppIDStaticReleasesByReleaseIDRollback" },
136
+ { 'method' => "POST", 'path' => "/api/v1/tenants/{tenantID}/apps/{appID}/static/releases/{releaseID}/stage", 'tag' => "Apps", 'operationId' => "appsPostApiV1TenantsByTenantIDAppsByAppIDStaticReleasesByReleaseIDStage" },
137
+ { 'method' => "GET", 'path' => "/api/v1/tenants/{tenantID}/apps/{appID}/static/site", 'tag' => "Apps", 'operationId' => "appsGetApiV1TenantsByTenantIDAppsByAppIDStaticSite" },
138
+ { 'method' => "PATCH", 'path' => "/api/v1/tenants/{tenantID}/apps/{appID}/static/site", 'tag' => "Apps", 'operationId' => "appsPatchApiV1TenantsByTenantIDAppsByAppIDStaticSite" },
139
+ { 'method' => "POST", 'path' => "/api/v1/tenants/{tenantID}/apps/{appID}/static/site/staging/disable", 'tag' => "Apps", 'operationId' => "appsPostApiV1TenantsByTenantIDAppsByAppIDStaticSiteStagingDisable" },
140
+ { 'method' => "POST", 'path' => "/api/v1/tenants/{tenantID}/apps/{appID}/static/site/staging/enable", 'tag' => "Apps", 'operationId' => "appsPostApiV1TenantsByTenantIDAppsByAppIDStaticSiteStagingEnable" },
141
+ { 'method' => "POST", 'path' => "/api/v1/tenants/{tenantID}/apps/{appID}/static/site/unpublish", 'tag' => "Apps", 'operationId' => "appsPostApiV1TenantsByTenantIDAppsByAppIDStaticSiteUnpublish" },
108
142
  { 'method' => "GET", 'path' => "/api/v1/tenants/{tenantID}/apps/check-availability", 'tag' => "Apps", 'operationId' => "appsGetApiV1TenantsByTenantIDAppsCheckAvailability" },
109
143
  { 'method' => "POST", 'path' => "/api/v1/tenants/{tenantID}/apps/icon/upload-url", 'tag' => "Apps", 'operationId' => "appsPostApiV1TenantsByTenantIDAppsIconUploadUrl" },
110
144
  { 'method' => "GET", 'path' => "/api/v1/tenants/{tenantID}/audit-events", 'tag' => "Audit", 'operationId' => "auditGetApiV1TenantsByTenantIDAuditEvents" },
@@ -121,7 +155,11 @@ module AxHub
121
155
  { 'method' => "DELETE", 'path' => "/api/v1/tenants/{tenantID}/connectors/{connectorID}", 'tag' => "Gateway", 'operationId' => "gatewayDeleteApiV1TenantsByTenantIDConnectorsByConnectorID" },
122
156
  { 'method' => "GET", 'path' => "/api/v1/tenants/{tenantID}/connectors/{connectorID}", 'tag' => "Gateway", 'operationId' => "gatewayGetApiV1TenantsByTenantIDConnectorsByConnectorID" },
123
157
  { 'method' => "PATCH", 'path' => "/api/v1/tenants/{tenantID}/connectors/{connectorID}", 'tag' => "Gateway", 'operationId' => "gatewayPatchApiV1TenantsByTenantIDConnectorsByConnectorID" },
158
+ { 'method' => "POST", 'path' => "/api/v1/tenants/{tenantID}/connectors/{connectorID}/discover", 'tag' => "Gateway", 'operationId' => "gatewayPostApiV1TenantsByTenantIDConnectorsByConnectorIDDiscover" },
159
+ { 'method' => "GET", 'path' => "/api/v1/tenants/{tenantID}/connectors/{connectorID}/resources", 'tag' => "Gateway", 'operationId' => "gatewayGetApiV1TenantsByTenantIDConnectorsByConnectorIDResources" },
124
160
  { 'method' => "POST", 'path' => "/api/v1/tenants/{tenantID}/connectors/{connectorID}/test-connection", 'tag' => "Gateway", 'operationId' => "gatewayPostApiV1TenantsByTenantIDConnectorsByConnectorIDTestConnection" },
161
+ { 'method' => "POST", 'path' => "/api/v1/tenants/{tenantID}/connectors/oauth/google/finalize", 'tag' => "Gateway", 'operationId' => "gatewayPostApiV1TenantsByTenantIDConnectorsOauthGoogleFinalize" },
162
+ { 'method' => "POST", 'path' => "/api/v1/tenants/{tenantID}/connectors/oauth/google/start", 'tag' => "Gateway", 'operationId' => "gatewayPostApiV1TenantsByTenantIDConnectorsOauthGoogleStart" },
125
163
  { 'method' => "GET", 'path' => "/api/v1/tenants/{tenantID}/cost/by-app", 'tag' => "Cost", 'operationId' => "costGetApiV1TenantsByTenantIDCostByApp" },
126
164
  { 'method' => "GET", 'path' => "/api/v1/tenants/{tenantID}/cost/by-cost-center", 'tag' => "Cost", 'operationId' => "costGetApiV1TenantsByTenantIDCostByCostCenter" },
127
165
  { 'method' => "GET", 'path' => "/api/v1/tenants/{tenantID}/cost/export", 'tag' => "Cost", 'operationId' => "costGetApiV1TenantsByTenantIDCostExport" },
@@ -133,6 +171,8 @@ module AxHub
133
171
  { 'method' => "GET", 'path' => "/api/v1/tenants/{tenantID}/email-domains", 'tag' => "Tenants", 'operationId' => "tenantsGetApiV1TenantsByTenantIDEmailDomains" },
134
172
  { 'method' => "POST", 'path' => "/api/v1/tenants/{tenantID}/email-domains", 'tag' => "Tenants", 'operationId' => "tenantsPostApiV1TenantsByTenantIDEmailDomains" },
135
173
  { 'method' => "DELETE", 'path' => "/api/v1/tenants/{tenantID}/email-domains/{domain}", 'tag' => "Tenants", 'operationId' => "tenantsDeleteApiV1TenantsByTenantIDEmailDomainsByDomain" },
174
+ { 'method' => "POST", 'path' => "/api/v1/tenants/{tenantID}/gateway/document-invoke", 'tag' => "Gateway", 'operationId' => "gatewayPostApiV1TenantsByTenantIDGatewayDocumentInvoke" },
175
+ { 'method' => "POST", 'path' => "/api/v1/tenants/{tenantID}/gateway/file-invoke", 'tag' => "Gateway", 'operationId' => "gatewayPostApiV1TenantsByTenantIDGatewayFileInvoke" },
136
176
  { 'method' => "POST", 'path' => "/api/v1/tenants/{tenantID}/gateway/invoke", 'tag' => "Gateway", 'operationId' => "gatewayPostApiV1TenantsByTenantIDGatewayInvoke" },
137
177
  { 'method' => "POST", 'path' => "/api/v1/tenants/{tenantID}/gateway/query", 'tag' => "Gateway", 'operationId' => "gatewayPostApiV1TenantsByTenantIDGatewayQuery" },
138
178
  { 'method' => "POST", 'path' => "/api/v1/tenants/{tenantID}/gateway/sessions", 'tag' => "Gateway", 'operationId' => "gatewayPostApiV1TenantsByTenantIDGatewaySessions" },
@@ -141,6 +181,10 @@ module AxHub
141
181
  { 'method' => "POST", 'path' => "/api/v1/tenants/{tenantID}/grants", 'tag' => "Authorization", 'operationId' => "authorizationPostApiV1TenantsByTenantIDGrants" },
142
182
  { 'method' => "DELETE", 'path' => "/api/v1/tenants/{tenantID}/grants/{grantID}", 'tag' => "Authorization", 'operationId' => "authorizationDeleteApiV1TenantsByTenantIDGrantsByGrantID" },
143
183
  { 'method' => "GET", 'path' => "/api/v1/tenants/{tenantID}/grants/{grantID}", 'tag' => "Authorization", 'operationId' => "authorizationGetApiV1TenantsByTenantIDGrantsByGrantID" },
184
+ { 'method' => "GET", 'path' => "/api/v1/tenants/{tenantID}/groups", 'tag' => "Tenants", 'operationId' => "tenantsGetApiV1TenantsByTenantIDGroups" },
185
+ { 'method' => "POST", 'path' => "/api/v1/tenants/{tenantID}/groups", 'tag' => "Tenants", 'operationId' => "tenantsPostApiV1TenantsByTenantIDGroups" },
186
+ { 'method' => "DELETE", 'path' => "/api/v1/tenants/{tenantID}/groups/{groupID}", 'tag' => "Tenants", 'operationId' => "tenantsDeleteApiV1TenantsByTenantIDGroupsByGroupID" },
187
+ { 'method' => "PATCH", 'path' => "/api/v1/tenants/{tenantID}/groups/{groupID}", 'tag' => "Tenants", 'operationId' => "tenantsPatchApiV1TenantsByTenantIDGroupsByGroupID" },
144
188
  { 'method' => "DELETE", 'path' => "/api/v1/tenants/{tenantID}/icon", 'tag' => "Tenants", 'operationId' => "tenantsDeleteApiV1TenantsByTenantIDIcon" },
145
189
  { 'method' => "POST", 'path' => "/api/v1/tenants/{tenantID}/icon/upload-url", 'tag' => "Tenants", 'operationId' => "tenantsPostApiV1TenantsByTenantIDIconUploadUrl" },
146
190
  { 'method' => "GET", 'path' => "/api/v1/tenants/{tenantID}/identity-providers", 'tag' => "Auth", 'operationId' => "authGetApiV1TenantsByTenantIDIdentityProviders" },
@@ -162,12 +206,20 @@ module AxHub
162
206
  { 'method' => "GET", 'path' => "/api/v1/tenants/{tenantID}/members", 'tag' => "Tenants", 'operationId' => "tenantsGetApiV1TenantsByTenantIDMembers" },
163
207
  { 'method' => "PATCH", 'path' => "/api/v1/tenants/{tenantID}/members/{membershipID}", 'tag' => "Tenants", 'operationId' => "tenantsPatchApiV1TenantsByTenantIDMembersByMembershipID" },
164
208
  { 'method' => "POST", 'path' => "/api/v1/tenants/{tenantID}/members/{membershipID}/deactivate", 'tag' => "Tenants", 'operationId' => "tenantsPostApiV1TenantsByTenantIDMembersByMembershipIDDeactivate" },
209
+ { 'method' => "PATCH", 'path' => "/api/v1/tenants/{tenantID}/members/{membershipID}/group", 'tag' => "Tenants", 'operationId' => "tenantsPatchApiV1TenantsByTenantIDMembersByMembershipIDGroup" },
165
210
  { 'method' => "POST", 'path' => "/api/v1/tenants/{tenantID}/members/{membershipID}/reactivate", 'tag' => "Tenants", 'operationId' => "tenantsPostApiV1TenantsByTenantIDMembersByMembershipIDReactivate" },
211
+ { 'method' => "POST", 'path' => "/api/v1/tenants/{tenantID}/members/{membershipID}/restore-scim", 'tag' => "Tenants", 'operationId' => "tenantsPostApiV1TenantsByTenantIDMembersByMembershipIDRestoreScim" },
212
+ { 'method' => "DELETE", 'path' => "/api/v1/tenants/{tenantID}/members/{userID}/seat", 'tag' => "Tenants", 'operationId' => "tenantsDeleteApiV1TenantsByTenantIDMembersByUserIDSeat" },
213
+ { 'method' => "POST", 'path' => "/api/v1/tenants/{tenantID}/members/{userID}/seat", 'tag' => "Tenants", 'operationId' => "tenantsPostApiV1TenantsByTenantIDMembersByUserIDSeat" },
214
+ { 'method' => "GET", 'path' => "/api/v1/tenants/{tenantID}/members/directory", 'tag' => "Tenants", 'operationId' => "tenantsGetApiV1TenantsByTenantIDMembersDirectory" },
166
215
  { 'method' => "GET", 'path' => "/api/v1/tenants/{tenantID}/presets", 'tag' => "Authorization", 'operationId' => "authorizationGetApiV1TenantsByTenantIDPresets" },
167
216
  { 'method' => "POST", 'path' => "/api/v1/tenants/{tenantID}/presets", 'tag' => "Authorization", 'operationId' => "authorizationPostApiV1TenantsByTenantIDPresets" },
168
217
  { 'method' => "DELETE", 'path' => "/api/v1/tenants/{tenantID}/presets/{presetID}", 'tag' => "Authorization", 'operationId' => "authorizationDeleteApiV1TenantsByTenantIDPresetsByPresetID" },
169
218
  { 'method' => "GET", 'path' => "/api/v1/tenants/{tenantID}/presets/{presetID}", 'tag' => "Authorization", 'operationId' => "authorizationGetApiV1TenantsByTenantIDPresetsByPresetID" },
170
219
  { 'method' => "PATCH", 'path' => "/api/v1/tenants/{tenantID}/presets/{presetID}", 'tag' => "Authorization", 'operationId' => "authorizationPatchApiV1TenantsByTenantIDPresetsByPresetID" },
220
+ { 'method' => "GET", 'path' => "/api/v1/tenants/{tenantID}/scim/connection", 'tag' => "Tenants", 'operationId' => "tenantsGetApiV1TenantsByTenantIDScimConnection" },
221
+ { 'method' => "DELETE", 'path' => "/api/v1/tenants/{tenantID}/scim/token", 'tag' => "Tenants", 'operationId' => "tenantsDeleteApiV1TenantsByTenantIDScimToken" },
222
+ { 'method' => "POST", 'path' => "/api/v1/tenants/{tenantID}/scim/token", 'tag' => "Tenants", 'operationId' => "tenantsPostApiV1TenantsByTenantIDScimToken" },
171
223
  { 'method' => "GET", 'path' => "/api/v1/tenants/{tenantID}/subjects", 'tag' => "Authorization", 'operationId' => "authorizationGetApiV1TenantsByTenantIDSubjects" },
172
224
  { 'method' => "POST", 'path' => "/api/v1/tenants/{tenantID}/subjects", 'tag' => "Authorization", 'operationId' => "authorizationPostApiV1TenantsByTenantIDSubjects" },
173
225
  { 'method' => "GET", 'path' => "/api/v1/tenants/{tenantID}/subjects/{subjectID}", 'tag' => "Authorization", 'operationId' => "authorizationGetApiV1TenantsByTenantIDSubjectsBySubjectID" },
@@ -184,18 +236,13 @@ module AxHub
184
236
  { 'method' => "GET", 'path' => "/auth/silent/callback", 'tag' => "Auth", 'operationId' => "authGetAuthSilentCallback" },
185
237
  { 'method' => "GET", 'path' => "/auth/silent/start", 'tag' => "Auth", 'operationId' => "authGetAuthSilentStart" },
186
238
  { 'method' => "GET", 'path' => "/config/public", 'tag' => "Config", 'operationId' => "configGetConfigPublic" },
187
- { 'method' => "GET", 'path' => "/data/{tenantSlug}/{appSlug}/{table}", 'tag' => "Schema", 'operationId' => "schemaGetDataByTenantSlugByAppSlugByTable" },
188
- { 'method' => "POST", 'path' => "/data/{tenantSlug}/{appSlug}/{table}", 'tag' => "Schema", 'operationId' => "schemaPostDataByTenantSlugByAppSlugByTable" },
189
- { 'method' => "GET", 'path' => "/data/{tenantSlug}/{appSlug}/{table}/_count", 'tag' => "Schema", 'operationId' => "schemaGetDataByTenantSlugByAppSlugByTableCount" },
190
- { 'method' => "DELETE", 'path' => "/data/{tenantSlug}/{appSlug}/{table}/{id}", 'tag' => "Schema", 'operationId' => "schemaDeleteDataByTenantSlugByAppSlugByTableById" },
191
- { 'method' => "GET", 'path' => "/data/{tenantSlug}/{appSlug}/{table}/{id}", 'tag' => "Schema", 'operationId' => "schemaGetDataByTenantSlugByAppSlugByTableById" },
192
- { 'method' => "PATCH", 'path' => "/data/{tenantSlug}/{appSlug}/{table}/{id}", 'tag' => "Schema", 'operationId' => "schemaPatchDataByTenantSlugByAppSlugByTableById" },
193
239
  { 'method' => "GET", 'path' => "/internal/app-access", 'tag' => "Apps", 'operationId' => "appsGetInternalAppAccess" },
194
240
  { 'method' => "GET", 'path' => "/oauth/authorize", 'tag' => "Auth", 'operationId' => "authGetOauthAuthorize" },
195
241
  { 'method' => "POST", 'path' => "/oauth/authorize/tenant", 'tag' => "Auth", 'operationId' => "authPostOauthAuthorizeTenant" },
196
242
  { 'method' => "POST", 'path' => "/oauth/device_authorization", 'tag' => "Auth", 'operationId' => "authPostOauthDeviceAuthorization" },
197
243
  { 'method' => "POST", 'path' => "/oauth/device/authorize", 'tag' => "Auth", 'operationId' => "authPostOauthDeviceAuthorize" },
198
244
  { 'method' => "GET", 'path' => "/oauth/device/lookup", 'tag' => "Auth", 'operationId' => "authGetOauthDeviceLookup" },
245
+ { 'method' => "GET", 'path' => "/oauth/google/callback", 'tag' => "Gateway", 'operationId' => "gatewayGetOauthGoogleCallback" },
199
246
  { 'method' => "POST", 'path' => "/oauth/register", 'tag' => "Auth", 'operationId' => "authPostOauthRegister" },
200
247
  { 'method' => "POST", 'path' => "/oauth/revoke", 'tag' => "Auth", 'operationId' => "authPostOauthRevoke" },
201
248
  { 'method' => "POST", 'path' => "/oauth/token", 'tag' => "Auth", 'operationId' => "authPostOauthToken" },
@@ -218,9 +265,11 @@ module AxHub
218
265
  "already_suspended" => ErrorInfo.new("conflict", 409, false),
219
266
  "already_terminal" => ErrorInfo.new("conflict", 409, false),
220
267
  "app_unavailable" => ErrorInfo.new("conflict", 409, false),
268
+ "auth_expired" => ErrorInfo.new("unavailable", 503, false),
221
269
  "bad_request" => ErrorInfo.new("validation", 400, false),
222
270
  "build_env_no_override" => ErrorInfo.new("validation", 400, false),
223
271
  "cannot_reactivate" => ErrorInfo.new("conflict", 409, false),
272
+ "charge_failed" => ErrorInfo.new("CategoryPaymentRequired", 402, false),
224
273
  "confirm_required" => ErrorInfo.new("precondition_failed", 412, false),
225
274
  "conflict" => ErrorInfo.new("conflict", 409, false),
226
275
  "connector_inactive" => ErrorInfo.new("permission_denied", 403, false),
@@ -229,7 +278,9 @@ module AxHub
229
278
  "domain_taken" => ErrorInfo.new("conflict", 409, false),
230
279
  "duplicate" => ErrorInfo.new("validation", 400, false),
231
280
  "empty" => ErrorInfo.new("validation", 400, false),
281
+ "exceeds_max" => ErrorInfo.new("conflict", 409, false),
232
282
  "expiry_in_past" => ErrorInfo.new("validation", 400, false),
283
+ "feature_not_in_plan" => ErrorInfo.new("permission_denied", 403, false),
233
284
  "final_visibility_too_wide" => ErrorInfo.new("validation", 400, false),
234
285
  "forbidden" => ErrorInfo.new("permission_denied", 403, false),
235
286
  "github_device_flow_disabled" => ErrorInfo.new("unavailable", 503, false),
@@ -238,32 +289,50 @@ module AxHub
238
289
  "grant_expired" => ErrorInfo.new("permission_denied", 403, false),
239
290
  "grant_revoked" => ErrorInfo.new("permission_denied", 403, false),
240
291
  "internal_error" => ErrorInfo.new("internal", 500, false),
292
+ "invalid_drive" => ErrorInfo.new("validation", 400, false),
293
+ "invalid_entitlement" => ErrorInfo.new("validation", 400, false),
241
294
  "invalid_expiry" => ErrorInfo.new("validation", 400, false),
242
295
  "invalid_format" => ErrorInfo.new("validation", 400, false),
296
+ "invalid_oauth_state" => ErrorInfo.new("validation", 400, false),
243
297
  "invalid_state_transition" => ErrorInfo.new("conflict", 409, false),
298
+ "invalid_target" => ErrorInfo.new("conflict", 409, false),
244
299
  "invalid_value" => ErrorInfo.new("validation", 400, false),
245
300
  "invitation_expired" => ErrorInfo.new("not_found", 410, false),
246
301
  "kind_engine_mismatch" => ErrorInfo.new("validation", 400, false),
247
302
  "last_admin" => ErrorInfo.new("conflict", 409, false),
248
303
  "link_invalid" => ErrorInfo.new("not_found", 404, false),
249
304
  "no_active_grant" => ErrorInfo.new("not_found", 404, false),
305
+ "no_available_seat" => ErrorInfo.new("conflict", 409, false),
306
+ "no_billing_key" => ErrorInfo.new("CategoryPaymentRequired", 402, false),
307
+ "no_payment_method" => ErrorInfo.new("CategoryPaymentRequired", 402, false),
250
308
  "not_admin" => ErrorInfo.new("permission_denied", 403, false),
251
309
  "not_allowed" => ErrorInfo.new("validation", 400, false),
252
310
  "not_deleted" => ErrorInfo.new("conflict", 409, false),
311
+ "not_deployed" => ErrorInfo.new("conflict", 409, false),
253
312
  "not_found" => ErrorInfo.new("not_found", 404, false),
254
313
  "not_member" => ErrorInfo.new("permission_denied", 403, false),
255
314
  "not_promotable" => ErrorInfo.new("precondition_failed", 412, false),
256
315
  "not_suspended" => ErrorInfo.new("conflict", 409, false),
316
+ "oauth_denied" => ErrorInfo.new("validation", 400, false),
317
+ "payment_failed" => ErrorInfo.new("CategoryPaymentRequired", 402, false),
318
+ "payment_required" => ErrorInfo.new("CategoryPaymentRequired", 402, false),
257
319
  "pending_exists" => ErrorInfo.new("conflict", 409, false),
258
320
  "pending_review_exists" => ErrorInfo.new("precondition_failed", 412, false),
259
321
  "permanently_deleted" => ErrorInfo.new("not_found", 410, false),
322
+ "plan_version_exists" => ErrorInfo.new("conflict", 409, false),
260
323
  "precondition_failed" => ErrorInfo.new("precondition_failed", 412, false),
261
324
  "preset_in_use" => ErrorInfo.new("conflict", 409, false),
262
325
  "preset_mismatch" => ErrorInfo.new("validation", 400, false),
326
+ "preset_not_in_plan" => ErrorInfo.new("CategoryPaymentRequired", 402, false),
263
327
  "prod_deploy_required" => ErrorInfo.new("precondition_failed", 412, false),
264
328
  "promote_in_progress" => ErrorInfo.new("precondition_failed", 412, true),
329
+ "quota_exceeded" => ErrorInfo.new("CategoryPaymentRequired", 402, false),
265
330
  "required" => ErrorInfo.new("validation", 400, false),
331
+ "resource_quota_exceeded" => ErrorInfo.new("CategoryPaymentRequired", 402, false),
266
332
  "schema_name_taken" => ErrorInfo.new("conflict", 409, false),
333
+ "seat_in_use" => ErrorInfo.new("conflict", 409, false),
334
+ "seat_unassigned" => ErrorInfo.new("CategoryPaymentRequired", 402, false),
335
+ "seats_not_supported" => ErrorInfo.new("conflict", 409, false),
267
336
  "session_ended" => ErrorInfo.new("unauthenticated", 401, true),
268
337
  "session_expired" => ErrorInfo.new("unauthenticated", 401, true),
269
338
  "slug_taken" => ErrorInfo.new("conflict", 409, false),
@@ -271,11 +340,16 @@ module AxHub
271
340
  "staging_mismatch" => ErrorInfo.new("precondition_failed", 412, false),
272
341
  "staging_not_enabled" => ErrorInfo.new("precondition_failed", 412, false),
273
342
  "staging_required" => ErrorInfo.new("precondition_failed", 412, false),
274
- "temporarily_unavailable" => ErrorInfo.new("unavailable", 503, true),
343
+ "static_release_in_use" => ErrorInfo.new("conflict", 409, false),
344
+ "static_release_not_ready" => ErrorInfo.new("precondition_failed", 412, false),
345
+ "temporarily_unavailable" => ErrorInfo.new("unavailable", 429, true),
275
346
  "token_expired" => ErrorInfo.new("unauthenticated", 401, true),
276
347
  "token_invalid" => ErrorInfo.new("unauthenticated", 401, true),
277
348
  "token_missing" => ErrorInfo.new("unauthenticated", 401, true),
278
349
  "too_long" => ErrorInfo.new("validation", 400, false),
350
+ "unknown_plan" => ErrorInfo.new("not_found", 404, false),
351
+ "unpaid_balance" => ErrorInfo.new("CategoryPaymentRequired", 402, false),
352
+ "unsupported_for_static_app" => ErrorInfo.new("conflict", 409, false),
279
353
  "version_not_approved" => ErrorInfo.new("permission_denied", 403, false),
280
354
  "visibility_widen_not_allowed" => ErrorInfo.new("conflict", 409, false),
281
355
  }.freeze
@@ -320,21 +394,6 @@ module AxHub
320
394
  _send(req, uri, camelize: true)
321
395
  end
322
396
 
323
- # Raw-path transport for endpoints with no generated operation-id facade
324
- # (the ergonomic data ring: dynamic CRUD + runtime schema discover). `path`
325
- # is already fully substituted; `query` keys may be array-valued so repeated
326
- # filter params (e.g. `tag=eq.a&tag=eq.b`) serialize via URI.encode_www_form.
327
- # Defaults to `camelize: false` to mirror the node data transport: row bodies
328
- # and list envelopes (`has_more`/`per_page`) are returned verbatim.
329
- def request_raw(method, path, query: {}, body: nil, camelize: false)
330
- uri = URI(@base_url + path); uri.query = URI.encode_www_form(query) unless query.nil? || query.empty?
331
- req_class = Net::HTTP.const_get(method.to_s.capitalize); req = req_class.new(uri); req['X-Request-ID'] = request_id
332
- unless body.nil?
333
- req['Content-Type'] = 'application/json'; req.body = JSON.generate(body)
334
- end
335
- _send(req, uri, camelize: camelize)
336
- end
337
-
338
397
  private
339
398
 
340
399
  # Shared auth + send + redirect policy + response/error normalization tail.
@@ -403,4 +462,3 @@ module AxHub
403
462
  end
404
463
 
405
464
  require_relative 'axhub_sdk/operations'
406
- require_relative 'axhub_sdk/data'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: axhub-sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jocoding AX Partners
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-06-17 00:00:00.000000000 Z
11
+ date: 2026-07-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: minitest
@@ -50,17 +50,6 @@ files:
50
50
  - README.md
51
51
  - axhub-sdk.gemspec
52
52
  - lib/axhub_sdk.rb
53
- - lib/axhub_sdk/data.rb
54
- - lib/axhub_sdk/data/client.rb
55
- - lib/axhub_sdk/data/discover.rb
56
- - lib/axhub_sdk/data/dsl/ops.rb
57
- - lib/axhub_sdk/data/dsl/schema.rb
58
- - lib/axhub_sdk/data/dsl/validation.rb
59
- - lib/axhub_sdk/data/errors.rb
60
- - lib/axhub_sdk/data/pagination.rb
61
- - lib/axhub_sdk/data/projection.rb
62
- - lib/axhub_sdk/data/schema_cache.rb
63
- - lib/axhub_sdk/data/where_serializer.rb
64
53
  - lib/axhub_sdk/operations.rb
65
54
  - lib/axhub_sdk/version.rb
66
55
  homepage: https://github.com/jocoding-ax-partners/axhub-sdk-ruby