@amerged/ohmyhost-sdk 0.1.14 → 0.1.17

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.
@@ -22,9 +22,11 @@ export {
22
22
  createProjectExport,
23
23
  createUserApiKey,
24
24
  deleteEnvironmentSecret,
25
+ deleteManagedMailDomain,
25
26
  deletePaidProjectDomain,
26
27
  deleteProject,
27
28
  disableManagedMailReceiving,
29
+ ensureProjectDevShareLink,
28
30
  getAccountProfile,
29
31
  getBillingCheckout,
30
32
  getBillingRecharge,
@@ -77,9 +79,12 @@ export {
77
79
  retryManagedMailMessage,
78
80
  revokeCurrentSession,
79
81
  revokeProjectDatabaseAccess,
82
+ revokeProjectDevShareLink,
80
83
  revokeUserApiKey,
81
84
  rollbackDeployment,
85
+ rotateProjectDevShareLink,
82
86
  setProjectCreditBudget,
87
+ setProjectDevAccessMode,
83
88
  setProjectNotes,
84
89
  streamDeploymentLogs,
85
90
  streamOperationEvents,
@@ -220,6 +225,11 @@ export type {
220
225
  DeleteEnvironmentSecretResponse,
221
226
  DeleteEnvironmentSecretResponses,
222
227
  DeleteEnvironmentSecretResult,
228
+ DeleteManagedMailDomainData,
229
+ DeleteManagedMailDomainError,
230
+ DeleteManagedMailDomainErrors,
231
+ DeleteManagedMailDomainResponse,
232
+ DeleteManagedMailDomainResponses,
223
233
  DeletePaidProjectDomainData,
224
234
  DeletePaidProjectDomainError,
225
235
  DeletePaidProjectDomainErrors,
@@ -239,12 +249,18 @@ export type {
239
249
  DeploymentPage,
240
250
  DeploymentPlan,
241
251
  DeploymentPlanWritable,
252
+ DevAccessState,
242
253
  DevAccessTicket,
243
254
  DisableManagedMailReceivingData,
244
255
  DisableManagedMailReceivingError,
245
256
  DisableManagedMailReceivingErrors,
246
257
  DisableManagedMailReceivingResponse,
247
258
  DisableManagedMailReceivingResponses,
259
+ EnsureProjectDevShareLinkData,
260
+ EnsureProjectDevShareLinkError,
261
+ EnsureProjectDevShareLinkErrors,
262
+ EnsureProjectDevShareLinkResponse,
263
+ EnsureProjectDevShareLinkResponses,
248
264
  EnvironmentId,
249
265
  EnvironmentSecret,
250
266
  EnvironmentSecretPage,
@@ -450,6 +466,7 @@ export type {
450
466
  ManagedMailDisabled,
451
467
  ManagedMailDnsRecord,
452
468
  ManagedMailDomain,
469
+ ManagedMailDomainDeleted,
453
470
  ManagedMailDomainRequest,
454
471
  ManagedMailExpired,
455
472
  ManagedMailMessagePage,
@@ -575,6 +592,11 @@ export type {
575
592
  RevokeProjectDatabaseAccessErrors,
576
593
  RevokeProjectDatabaseAccessResponse,
577
594
  RevokeProjectDatabaseAccessResponses,
595
+ RevokeProjectDevShareLinkData,
596
+ RevokeProjectDevShareLinkError,
597
+ RevokeProjectDevShareLinkErrors,
598
+ RevokeProjectDevShareLinkResponse,
599
+ RevokeProjectDevShareLinkResponses,
578
600
  RevokeUserApiKeyData,
579
601
  RevokeUserApiKeyError,
580
602
  RevokeUserApiKeyErrors,
@@ -585,13 +607,24 @@ export type {
585
607
  RollbackDeploymentErrors,
586
608
  RollbackDeploymentResponse,
587
609
  RollbackDeploymentResponses,
610
+ RotateProjectDevShareLinkData,
611
+ RotateProjectDevShareLinkError,
612
+ RotateProjectDevShareLinkErrors,
613
+ RotateProjectDevShareLinkResponse,
614
+ RotateProjectDevShareLinkResponses,
588
615
  SecretName,
616
+ SetDevAccessModeRequest,
589
617
  SetProjectCreditBudgetData,
590
618
  SetProjectCreditBudgetError,
591
619
  SetProjectCreditBudgetErrors,
592
620
  SetProjectCreditBudgetRequest,
593
621
  SetProjectCreditBudgetResponse,
594
622
  SetProjectCreditBudgetResponses,
623
+ SetProjectDevAccessModeData,
624
+ SetProjectDevAccessModeError,
625
+ SetProjectDevAccessModeErrors,
626
+ SetProjectDevAccessModeResponse,
627
+ SetProjectDevAccessModeResponses,
595
628
  SetProjectNotesData,
596
629
  SetProjectNotesError,
597
630
  SetProjectNotesErrors,
@@ -59,12 +59,16 @@ import type {
59
59
  CreateUserApiKeyResponses,
60
60
  DeleteEnvironmentSecretErrors,
61
61
  DeleteEnvironmentSecretResponses,
62
+ DeleteManagedMailDomainErrors,
63
+ DeleteManagedMailDomainResponses,
62
64
  DeletePaidProjectDomainErrors,
63
65
  DeletePaidProjectDomainResponses,
64
66
  DeleteProjectErrors,
65
67
  DeleteProjectResponses,
66
68
  DisableManagedMailReceivingErrors,
67
69
  DisableManagedMailReceivingResponses,
70
+ EnsureProjectDevShareLinkErrors,
71
+ EnsureProjectDevShareLinkResponses,
68
72
  FeedbackSubmission,
69
73
  GetAccountProfileErrors,
70
74
  GetAccountProfileResponses,
@@ -177,13 +181,20 @@ import type {
177
181
  RevokeCurrentSessionResponses,
178
182
  RevokeProjectDatabaseAccessErrors,
179
183
  RevokeProjectDatabaseAccessResponses,
184
+ RevokeProjectDevShareLinkErrors,
185
+ RevokeProjectDevShareLinkResponses,
180
186
  RevokeUserApiKeyErrors,
181
187
  RevokeUserApiKeyResponses,
182
188
  RollbackDeploymentErrors,
183
189
  RollbackDeploymentResponses,
190
+ RotateProjectDevShareLinkErrors,
191
+ RotateProjectDevShareLinkResponses,
192
+ SetDevAccessModeRequest,
184
193
  SetProjectCreditBudgetErrors,
185
194
  SetProjectCreditBudgetRequest,
186
195
  SetProjectCreditBudgetResponses,
196
+ SetProjectDevAccessModeErrors,
197
+ SetProjectDevAccessModeResponses,
187
198
  SetProjectNotesErrors,
188
199
  SetProjectNotesResponses,
189
200
  StreamDeploymentLogsErrors,
@@ -1743,10 +1754,189 @@ export const getProjectHandleAvailability = <ThrowOnError extends boolean = true
1743
1754
  });
1744
1755
  };
1745
1756
 
1757
+ /**
1758
+ * Revoke the Dev share link and active sessions
1759
+ */
1760
+ export const revokeProjectDevShareLink = <ThrowOnError extends boolean = true>(
1761
+ parameters: {
1762
+ "X-Request-Id"?: string;
1763
+ "Idempotency-Key": string;
1764
+ project_id: Ulid;
1765
+ },
1766
+ options?: Options<never, ThrowOnError>,
1767
+ ): RequestResult<
1768
+ RevokeProjectDevShareLinkResponses,
1769
+ RevokeProjectDevShareLinkErrors,
1770
+ ThrowOnError,
1771
+ "data"
1772
+ > => {
1773
+ const params = buildClientParams(
1774
+ [parameters],
1775
+ [
1776
+ {
1777
+ args: [
1778
+ { in: "headers", key: "X-Request-Id" },
1779
+ { in: "headers", key: "Idempotency-Key" },
1780
+ { in: "path", key: "project_id" },
1781
+ ],
1782
+ },
1783
+ ],
1784
+ );
1785
+ return (options?.client ?? client).delete<
1786
+ RevokeProjectDevShareLinkResponses,
1787
+ RevokeProjectDevShareLinkErrors,
1788
+ ThrowOnError,
1789
+ "data"
1790
+ >({
1791
+ responseStyle: "data",
1792
+ security: [{ scheme: "bearer", type: "http" }],
1793
+ url: "/v1/projects/{project_id}/dev-share-link",
1794
+ ...options,
1795
+ ...params,
1796
+ });
1797
+ };
1798
+
1799
+ /**
1800
+ * Get or create the persistent Dev share link
1801
+ *
1802
+ * Owner-only. Repeated calls return the same protected Dev link until it is rotated or revoked. The link is a bearer credential without automatic expiry.
1803
+ */
1804
+ export const ensureProjectDevShareLink = <ThrowOnError extends boolean = true>(
1805
+ parameters: {
1806
+ "X-Request-Id"?: string;
1807
+ project_id: Ulid;
1808
+ },
1809
+ options?: Options<never, ThrowOnError>,
1810
+ ): RequestResult<
1811
+ EnsureProjectDevShareLinkResponses,
1812
+ EnsureProjectDevShareLinkErrors,
1813
+ ThrowOnError,
1814
+ "data"
1815
+ > => {
1816
+ const params = buildClientParams(
1817
+ [parameters],
1818
+ [
1819
+ {
1820
+ args: [
1821
+ { in: "headers", key: "X-Request-Id" },
1822
+ { in: "path", key: "project_id" },
1823
+ ],
1824
+ },
1825
+ ],
1826
+ );
1827
+ return (options?.client ?? client).post<
1828
+ EnsureProjectDevShareLinkResponses,
1829
+ EnsureProjectDevShareLinkErrors,
1830
+ ThrowOnError,
1831
+ "data"
1832
+ >({
1833
+ responseStyle: "data",
1834
+ security: [{ scheme: "bearer", type: "http" }],
1835
+ url: "/v1/projects/{project_id}/dev-share-link",
1836
+ ...options,
1837
+ ...params,
1838
+ });
1839
+ };
1840
+
1841
+ /**
1842
+ * Rotate the persistent Dev share link
1843
+ *
1844
+ * Owner-only. Reusing the same idempotency key returns the current rotated link; rotating invalidates previous links and sessions immediately.
1845
+ */
1846
+ export const rotateProjectDevShareLink = <ThrowOnError extends boolean = true>(
1847
+ parameters: {
1848
+ "X-Request-Id"?: string;
1849
+ "Idempotency-Key": string;
1850
+ project_id: Ulid;
1851
+ },
1852
+ options?: Options<never, ThrowOnError>,
1853
+ ): RequestResult<
1854
+ RotateProjectDevShareLinkResponses,
1855
+ RotateProjectDevShareLinkErrors,
1856
+ ThrowOnError,
1857
+ "data"
1858
+ > => {
1859
+ const params = buildClientParams(
1860
+ [parameters],
1861
+ [
1862
+ {
1863
+ args: [
1864
+ { in: "headers", key: "X-Request-Id" },
1865
+ { in: "headers", key: "Idempotency-Key" },
1866
+ { in: "path", key: "project_id" },
1867
+ ],
1868
+ },
1869
+ ],
1870
+ );
1871
+ return (options?.client ?? client).post<
1872
+ RotateProjectDevShareLinkResponses,
1873
+ RotateProjectDevShareLinkErrors,
1874
+ ThrowOnError,
1875
+ "data"
1876
+ >({
1877
+ responseStyle: "data",
1878
+ security: [{ scheme: "bearer", type: "http" }],
1879
+ url: "/v1/projects/{project_id}/dev-share-link:rotate",
1880
+ ...options,
1881
+ ...params,
1882
+ });
1883
+ };
1884
+
1885
+ /**
1886
+ * Select public or protected Dev access
1887
+ *
1888
+ * Owner-only. Public Dev needs no platform access link; switching back to protected creates a fresh link and invalidates earlier sessions.
1889
+ */
1890
+ export const setProjectDevAccessMode = <ThrowOnError extends boolean = true>(
1891
+ parameters: {
1892
+ "X-Request-Id"?: string;
1893
+ "Idempotency-Key": string;
1894
+ project_id: Ulid;
1895
+ setDevAccessModeRequest: SetDevAccessModeRequest;
1896
+ },
1897
+ options?: Options<never, ThrowOnError>,
1898
+ ): RequestResult<
1899
+ SetProjectDevAccessModeResponses,
1900
+ SetProjectDevAccessModeErrors,
1901
+ ThrowOnError,
1902
+ "data"
1903
+ > => {
1904
+ const params = buildClientParams(
1905
+ [parameters],
1906
+ [
1907
+ {
1908
+ args: [
1909
+ { in: "headers", key: "X-Request-Id" },
1910
+ { in: "headers", key: "Idempotency-Key" },
1911
+ { in: "path", key: "project_id" },
1912
+ { key: "setDevAccessModeRequest", map: "body" },
1913
+ ],
1914
+ },
1915
+ ],
1916
+ );
1917
+ return (options?.client ?? client).put<
1918
+ SetProjectDevAccessModeResponses,
1919
+ SetProjectDevAccessModeErrors,
1920
+ ThrowOnError,
1921
+ "data"
1922
+ >({
1923
+ responseStyle: "data",
1924
+ security: [{ scheme: "bearer", type: "http" }],
1925
+ url: "/v1/projects/{project_id}/dev-access-mode",
1926
+ ...options,
1927
+ ...params,
1928
+ headers: {
1929
+ "Content-Type": "application/json",
1930
+ ...options?.headers,
1931
+ ...params.headers,
1932
+ },
1933
+ });
1934
+ };
1935
+
1746
1936
  /**
1747
1937
  * Create a single-use dev access ticket
1748
1938
  *
1749
- * Owner-only issuance of a ten-minute single-use ticket for the immutable dev project origin. A new ticket revokes unused tickets previously issued to the same principal.
1939
+ * Owner-only issuance of a one-hour single-use ticket for the immutable dev project origin. A new ticket revokes unused tickets previously issued to the same principal.
1750
1940
  */
1751
1941
  export const createProjectDevAccessTicket = <ThrowOnError extends boolean = true>(
1752
1942
  parameters: {
@@ -2181,6 +2371,8 @@ export const configureProjectDomains = <ThrowOnError extends boolean = true>(
2181
2371
 
2182
2372
  /**
2183
2373
  * Plan one Paid customer-owned hostname
2374
+ *
2375
+ * The hostname routes to the project's current Prod deployment. A project whose Prod environment has no active deployment returns production_deployment_required (409); deploy to Prod or promote the current Dev deployment, then plan again.
2184
2376
  */
2185
2377
  export const planPaidProjectDomain = <ThrowOnError extends boolean = true>(
2186
2378
  parameters: {
@@ -2318,7 +2510,7 @@ export const getPaidProjectDomain = <ThrowOnError extends boolean = true>(
2318
2510
  /**
2319
2511
  * Apply one Paid customer-owned hostname
2320
2512
  *
2321
- * Requires a confirmed current Paid service period and no expired credit-exhaustion grace. Returns paid_plan_required without a Paid period, or insufficient_organization_credits after seven days with no available credits, without provider mutation. Top-ups restore exhausted Paid access but do not create or extend a Paid service period.
2513
+ * Requires a confirmed current Paid service period and no expired credit-exhaustion grace. Returns paid_plan_required without a Paid period, or insufficient_organization_credits after seven days with no available credits, without provider mutation. Top-ups restore exhausted Paid access but do not create or extend a Paid service period. After the Paid check, a project whose Prod environment has no active deployment returns production_deployment_required (409) without claiming the hostname or any provider mutation; a changed request under a used key returns idempotency_key_reused (409).
2322
2514
  */
2323
2515
  export const applyPaidProjectDomain = <ThrowOnError extends boolean = true>(
2324
2516
  parameters: {
@@ -2369,7 +2561,7 @@ export const applyPaidProjectDomain = <ThrowOnError extends boolean = true>(
2369
2561
  /**
2370
2562
  * Plan a deployment
2371
2563
  *
2372
- * Resolves immutable inputs and estimates effects without provider mutation or billable work. Mail and the currently supported mail-backed Better Auth contract require a confirmed Paid service period; it is checked again before build reservation. An old sender configuration is not Paid authority.
2564
+ * Resolves immutable inputs and estimates effects without provider mutation or billable work. The plan targets Dev unless `environment` is `prod`; a Prod plan builds straight into Prod, except that a project with shared data and a database only reaches Prod through promotion. Mail and the currently supported mail-backed Better Auth contract require a confirmed Paid service period; it is checked again before build reservation. An old sender configuration is not Paid authority.
2373
2565
  */
2374
2566
  export const planDeployment = <ThrowOnError extends boolean = true>(
2375
2567
  parameters: {
@@ -3457,6 +3649,52 @@ export const listAuditEvents = <ThrowOnError extends boolean = true>(
3457
3649
  });
3458
3650
  };
3459
3651
 
3652
+ /**
3653
+ * Retire the project's mail domain while the project stays active
3654
+ *
3655
+ * Ends sending and receiving at once, removes the webhook, then removes the domain and its sending key from the mail provider and confirms their absence. DNS is not changed; dns_records lists the records to remove from the domain's DNS, including any that Cloudflare authorization added. Repeat the same idempotency key after an uncertain response. A later mail setup starts a new domain registration.
3656
+ */
3657
+ export const deleteManagedMailDomain = <ThrowOnError extends boolean = true>(
3658
+ parameters: {
3659
+ "X-Request-Id"?: string;
3660
+ "Idempotency-Key": string;
3661
+ project_id: Ulid;
3662
+ environment_id: Ulid;
3663
+ },
3664
+ options?: Options<never, ThrowOnError>,
3665
+ ): RequestResult<
3666
+ DeleteManagedMailDomainResponses,
3667
+ DeleteManagedMailDomainErrors,
3668
+ ThrowOnError,
3669
+ "data"
3670
+ > => {
3671
+ const params = buildClientParams(
3672
+ [parameters],
3673
+ [
3674
+ {
3675
+ args: [
3676
+ { in: "headers", key: "X-Request-Id" },
3677
+ { in: "headers", key: "Idempotency-Key" },
3678
+ { in: "path", key: "project_id" },
3679
+ { in: "path", key: "environment_id" },
3680
+ ],
3681
+ },
3682
+ ],
3683
+ );
3684
+ return (options?.client ?? client).delete<
3685
+ DeleteManagedMailDomainResponses,
3686
+ DeleteManagedMailDomainErrors,
3687
+ ThrowOnError,
3688
+ "data"
3689
+ >({
3690
+ responseStyle: "data",
3691
+ security: [{ scheme: "bearer", type: "http" }],
3692
+ url: "/v1/projects/{project_id}/environments/{environment_id}/mail-domain",
3693
+ ...options,
3694
+ ...params,
3695
+ });
3696
+ };
3697
+
3460
3698
  /**
3461
3699
  * Read independent sending and receiving readiness
3462
3700
  *