@deepraxis/sdk 0.1.1-dev.daf3004 → 0.1.1-dev.dc553d7

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.
package/METHODS.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # SDK methods
2
2
 
3
- Generated by `bun run generate`. 548 HTTP operations, plus product aliases. Version segments and path parameters are omitted from resource names. Inputs use typed `{ path, query, body, headers }` options. Collections form nested resource objects; POST actions retain their verb. Naming rules are documented in `scripts/resources.ts`; semantic exceptions and aliases with reasons are in `scripts/naming-overrides.ts`.
3
+ Generated by `bun run generate`. 676 HTTP operations, plus product aliases. Version segments and path parameters are omitted from resource names. Inputs use typed `{ path, query, body, headers }` options. Collections form nested resource objects; POST actions retain their verb. Naming rules are documented in `scripts/resources.ts`; semantic exceptions and aliases with reasons are in `scripts/naming-overrides.ts`.
4
4
 
5
5
  `always` returns an AsyncIterable; `optional` streams with `{ stream: true }`; `yes` pagination returns a Page. Only `{ data, next_cursor }` + `cursor` query contracts are automatically paginated.
6
6
 
@@ -576,12 +576,20 @@ Multipart request bodies expand plain objects into bracketed fields (for example
576
576
  | Method | HTTP | Path | Streaming | Pagination |
577
577
  |---|---|---|---|---|
578
578
  | create | POST | `/browser/v1/sessions` | no | no |
579
+ | frames | GET | `/browser/v1/sessions/{sessionId}/frames` | always | no |
579
580
  | list | GET | `/browser/v1/sessions` | no | no |
580
581
  | retrieve | GET | `/browser/v1/sessions/{sessionId}` | no | no |
581
582
  | retrieveDebug | GET | `/browser/v1/sessions/{sessionId}/debug` | no | no |
583
+ | retrieveFrame | GET | `/browser/v1/sessions/{sessionId}/frame` | no | no |
582
584
  | stream | GET | `/browser/v1/sessions/{sessionId}/stream` | always | no |
583
585
  | update | POST | `/browser/v1/sessions/{sessionId}` | no | no |
584
586
 
587
+ ### browser.sessions.actions
588
+
589
+ | Method | HTTP | Path | Streaming | Pagination |
590
+ |---|---|---|---|---|
591
+ | create | POST | `/browser/v1/sessions/{sessionId}/actions` | no | no |
592
+
585
593
  ### browser.sessions.events
586
594
 
587
595
  | Method | HTTP | Path | Streaming | Pagination |
@@ -870,6 +878,178 @@ Multipart request bodies expand plain objects into bracketed fields (for example
870
878
  | delete | DELETE | `/database/v1/databases/{database_id}/tables/{table}/fields/{field}` | no | no |
871
879
  | update | PATCH | `/database/v1/databases/{database_id}/tables/{table}/fields/{field}` | no | no |
872
880
 
881
+ ## devops
882
+
883
+ ### devops.environments.checkpoints
884
+
885
+ | Method | HTTP | Path | Streaming | Pagination |
886
+ |---|---|---|---|---|
887
+ | list | GET | `/devops/v1/environments/{id}/checkpoints` | no | no |
888
+
889
+ ### devops.flags
890
+
891
+ | Method | HTTP | Path | Streaming | Pagination |
892
+ |---|---|---|---|---|
893
+ | archive | POST | `/devops/v1/flags/{id}:archive` | no | no |
894
+ | conclude | POST | `/devops/v1/flags/{id}:conclude` | no | no |
895
+ | retrieve | GET | `/devops/v1/flags/{id}` | no | no |
896
+ | update | PATCH | `/devops/v1/flags/{id}` | no | no |
897
+
898
+ ### devops.flags.environments
899
+
900
+ | Method | HTTP | Path | Streaming | Pagination |
901
+ |---|---|---|---|---|
902
+ | update | PATCH | `/devops/v1/flags/{id}/environments/{environment}` | no | no |
903
+
904
+ ### devops.progressiveRollouts
905
+
906
+ | Method | HTTP | Path | Streaming | Pagination |
907
+ |---|---|---|---|---|
908
+ | create | POST | `/devops/v1/progressive-rollouts` | no | no |
909
+ | pause | POST | `/devops/v1/progressive-rollouts/{id}:pause` | no | no |
910
+ | resume | POST | `/devops/v1/progressive-rollouts/{id}:resume` | no | no |
911
+ | retrieve | GET | `/devops/v1/progressive-rollouts/{id}` | no | no |
912
+ | rollback | POST | `/devops/v1/progressive-rollouts/{id}:rollback` | no | no |
913
+
914
+ ### devops.projects
915
+
916
+ | Method | HTTP | Path | Streaming | Pagination |
917
+ |---|---|---|---|---|
918
+ | list | GET | `/devops/v1/projects` | no | no |
919
+ | retrieve | GET | `/devops/v1/projects/{id}` | no | no |
920
+ | retrieveTestCatalog | GET | `/devops/v1/projects/{project}/test-catalog` | no | no |
921
+
922
+ ### devops.projects.environments
923
+
924
+ | Method | HTTP | Path | Streaming | Pagination |
925
+ |---|---|---|---|---|
926
+ | list | GET | `/devops/v1/projects/{project}/environments` | no | no |
927
+
928
+ ### devops.projects.flags
929
+
930
+ | Method | HTTP | Path | Streaming | Pagination |
931
+ |---|---|---|---|---|
932
+ | create | POST | `/devops/v1/projects/{project}/flags` | no | no |
933
+ | list | GET | `/devops/v1/projects/{project}/flags` | no | no |
934
+
935
+ ### devops.projects.promotions
936
+
937
+ | Method | HTTP | Path | Streaming | Pagination |
938
+ |---|---|---|---|---|
939
+ | list | GET | `/devops/v1/projects/{project}/promotions` | no | no |
940
+
941
+ ### devops.projects.releases
942
+
943
+ | Method | HTTP | Path | Streaming | Pagination |
944
+ |---|---|---|---|---|
945
+ | create | POST | `/devops/v1/projects/{project}/releases` | no | no |
946
+ | list | GET | `/devops/v1/projects/{project}/releases` | no | no |
947
+
948
+ ### devops.projects.targets
949
+
950
+ | Method | HTTP | Path | Streaming | Pagination |
951
+ |---|---|---|---|---|
952
+ | list | GET | `/devops/v1/projects/{project}/targets` | no | no |
953
+ | refresh | POST | `/devops/v1/projects/{project}/targets:refresh` | no | no |
954
+
955
+ ### devops.projects.testCases
956
+
957
+ | Method | HTTP | Path | Streaming | Pagination |
958
+ |---|---|---|---|---|
959
+ | list | GET | `/devops/v1/projects/{project}/test-cases` | no | no |
960
+
961
+ ### devops.projects.testPlans
962
+
963
+ | Method | HTTP | Path | Streaming | Pagination |
964
+ |---|---|---|---|---|
965
+ | create | POST | `/devops/v1/projects/{project}/test-plans` | no | no |
966
+ | list | GET | `/devops/v1/projects/{project}/test-plans` | no | no |
967
+
968
+ ### devops.projects.testReports
969
+
970
+ | Method | HTTP | Path | Streaming | Pagination |
971
+ |---|---|---|---|---|
972
+ | create | POST | `/devops/v1/projects/{project}/test-reports` | no | no |
973
+
974
+ ### devops.projects.testRuns
975
+
976
+ | Method | HTTP | Path | Streaming | Pagination |
977
+ |---|---|---|---|---|
978
+ | create | POST | `/devops/v1/projects/{project}/test-runs` | no | no |
979
+ | list | GET | `/devops/v1/projects/{project}/test-runs` | no | no |
980
+
981
+ ### devops.projects.testSuites
982
+
983
+ | Method | HTTP | Path | Streaming | Pagination |
984
+ |---|---|---|---|---|
985
+ | list | GET | `/devops/v1/projects/{project}/test-suites` | no | no |
986
+
987
+ ### devops.promotions
988
+
989
+ | Method | HTTP | Path | Streaming | Pagination |
990
+ |---|---|---|---|---|
991
+ | approve | POST | `/devops/v1/promotions/{id}:approve` | no | no |
992
+ | cancel | POST | `/devops/v1/promotions/{id}:cancel` | no | no |
993
+ | conclude | POST | `/devops/v1/promotions/{id}:conclude` | no | no |
994
+ | create | POST | `/devops/v1/promotions` | no | no |
995
+ | retrieve | GET | `/devops/v1/promotions/{id}` | no | no |
996
+ | retry | POST | `/devops/v1/promotions/{id}:retry` | no | no |
997
+
998
+ ### devops.promotions.rollouts
999
+
1000
+ | Method | HTTP | Path | Streaming | Pagination |
1001
+ |---|---|---|---|---|
1002
+ | list | GET | `/devops/v1/promotions/{promotion}/rollouts` | no | no |
1003
+
1004
+ ### devops.releases
1005
+
1006
+ | Method | HTTP | Path | Streaming | Pagination |
1007
+ |---|---|---|---|---|
1008
+ | abandon | POST | `/devops/v1/releases/{id}:abandon` | no | no |
1009
+ | retrieve | GET | `/devops/v1/releases/{id}` | no | no |
1010
+
1011
+ ### devops.rollouts
1012
+
1013
+ | Method | HTTP | Path | Streaming | Pagination |
1014
+ |---|---|---|---|---|
1015
+ | retrieve | GET | `/devops/v1/rollouts/{id}` | no | no |
1016
+
1017
+ ### devops.testCases
1018
+
1019
+ | Method | HTTP | Path | Streaming | Pagination |
1020
+ |---|---|---|---|---|
1021
+ | retrieve | GET | `/devops/v1/test-cases/{id}` | no | no |
1022
+
1023
+ ### devops.testPlans
1024
+
1025
+ | Method | HTTP | Path | Streaming | Pagination |
1026
+ |---|---|---|---|---|
1027
+ | delete | DELETE | `/devops/v1/test-plans/{id}` | no | no |
1028
+ | pause | POST | `/devops/v1/test-plans/{id}:pause` | no | no |
1029
+ | resume | POST | `/devops/v1/test-plans/{id}:resume` | no | no |
1030
+ | retrieve | GET | `/devops/v1/test-plans/{id}` | no | no |
1031
+ | update | PATCH | `/devops/v1/test-plans/{id}` | no | no |
1032
+
1033
+ ### devops.testRuns
1034
+
1035
+ | Method | HTTP | Path | Streaming | Pagination |
1036
+ |---|---|---|---|---|
1037
+ | cancel | POST | `/devops/v1/test-runs/{id}:cancel` | no | no |
1038
+ | retrieve | GET | `/devops/v1/test-runs/{id}` | no | no |
1039
+
1040
+ ### devops.testRuns.executions
1041
+
1042
+ | Method | HTTP | Path | Streaming | Pagination |
1043
+ |---|---|---|---|---|
1044
+ | list | GET | `/devops/v1/test-runs/{run}/executions` | no | no |
1045
+ | retrieve | GET | `/devops/v1/test-runs/{run}/executions/{case}` | no | no |
1046
+
1047
+ ### devops.testSuites
1048
+
1049
+ | Method | HTTP | Path | Streaming | Pagination |
1050
+ |---|---|---|---|---|
1051
+ | retrieve | GET | `/devops/v1/test-suites/{id}` | no | no |
1052
+
873
1053
  ## file
874
1054
 
875
1055
  ### file.files
@@ -986,12 +1166,25 @@ Multipart request bodies expand plain objects into bracketed fields (for example
986
1166
 
987
1167
  ## media
988
1168
 
1169
+ ### media.assets
1170
+
1171
+ | Method | HTTP | Path | Streaming | Pagination |
1172
+ |---|---|---|---|---|
1173
+ | edit | POST | `/media/v1/libraries/{library_id}/assets/{asset_id}/edits` | no | no |
1174
+ | lineage | GET | `/media/v1/libraries/{library_id}/assets/{asset_id}/lineage` | no | no |
1175
+
989
1176
  ### media.generation.capabilities
990
1177
 
991
1178
  | Method | HTTP | Path | Streaming | Pagination |
992
1179
  |---|---|---|---|---|
993
1180
  | list | GET | `/media/v1/generation/capabilities` | no | no |
994
1181
 
1182
+ ### media.images
1183
+
1184
+ | Method | HTTP | Path | Streaming | Pagination |
1185
+ |---|---|---|---|---|
1186
+ | generate | POST | `/media/v1/libraries/{library_id}/images/generations` | no | no |
1187
+
995
1188
  ### media.libraries
996
1189
 
997
1190
  | Method | HTTP | Path | Streaming | Pagination |
@@ -1001,6 +1194,8 @@ Multipart request bodies expand plain objects into bracketed fields (for example
1001
1194
  | list | GET | `/media/v1/libraries` | no | yes |
1002
1195
  | restore | POST | `/media/v1/libraries/{library_id}/restore` | no | no |
1003
1196
  | retrieve | GET | `/media/v1/libraries/{library_id}` | no | no |
1197
+ | retrieveDefault | GET | `/media/v1/libraries/default` | no | no |
1198
+ | setDefault | PUT | `/media/v1/libraries/default` | no | no |
1004
1199
  | update | PATCH | `/media/v1/libraries/{library_id}` | no | no |
1005
1200
 
1006
1201
  ### media.libraries.assets
@@ -1063,12 +1258,6 @@ Multipart request bodies expand plain objects into bracketed fields (for example
1063
1258
  |---|---|---|---|---|
1064
1259
  | list | GET | `/media/v1/libraries/{library_id}/folders` | no | no |
1065
1260
 
1066
- ### media.libraries.generations
1067
-
1068
- | Method | HTTP | Path | Streaming | Pagination |
1069
- |---|---|---|---|---|
1070
- | create | POST | `/media/v1/libraries/{library_id}/generations` | no | no |
1071
-
1072
1261
  ### media.libraries.jobs
1073
1262
 
1074
1263
  | Method | HTTP | Path | Streaming | Pagination |
@@ -1077,12 +1266,6 @@ Multipart request bodies expand plain objects into bracketed fields (for example
1077
1266
  | list | GET | `/media/v1/libraries/{library_id}/jobs` | no | yes |
1078
1267
  | retrieve | GET | `/media/v1/libraries/{library_id}/jobs/{job_id}` | no | no |
1079
1268
 
1080
- ### media.libraries.jobs.outputs.save
1081
-
1082
- | Method | HTTP | Path | Streaming | Pagination |
1083
- |---|---|---|---|---|
1084
- | create | POST | `/media/v1/libraries/{library_id}/jobs/{job_id}/outputs/{index}/save` | no | no |
1085
-
1086
1269
  ### media.libraries.purge
1087
1270
 
1088
1271
  | Method | HTTP | Path | Streaming | Pagination |
@@ -1120,6 +1303,18 @@ Multipart request bodies expand plain objects into bracketed fields (for example
1120
1303
  | list | GET | `/media/v1/libraries/{library_id}/understandings` | no | yes |
1121
1304
  | retrieveFailureSummary | GET | `/media/v1/libraries/{library_id}/understandings/failure_summary` | no | no |
1122
1305
 
1306
+ ### media.speech
1307
+
1308
+ | Method | HTTP | Path | Streaming | Pagination |
1309
+ |---|---|---|---|---|
1310
+ | create | POST | `/media/v1/libraries/{library_id}/audio/speech` | no | no |
1311
+
1312
+ ### media.videos
1313
+
1314
+ | Method | HTTP | Path | Streaming | Pagination |
1315
+ |---|---|---|---|---|
1316
+ | generate | POST | `/media/v1/libraries/{library_id}/videos/generations` | no | no |
1317
+
1123
1318
  ## meta
1124
1319
 
1125
1320
  ### meta.docs
@@ -1284,6 +1479,7 @@ Multipart request bodies expand plain objects into bracketed fields (for example
1284
1479
  | create | POST | `/ontology/v1/nodes` | no | no |
1285
1480
  | list | GET | `/ontology/v1/nodes` | no | yes |
1286
1481
  | retrieve | GET | `/ontology/v1/nodes/{node_id}` | no | no |
1482
+ | retrieveNeighborhood | GET | `/ontology/v1/nodes/{node_id}/neighborhood` | no | no |
1287
1483
  | update | PATCH | `/ontology/v1/nodes/{node_id}` | no | no |
1288
1484
 
1289
1485
  ### ontology.nodes.merge
@@ -1516,6 +1712,166 @@ Multipart request bodies expand plain objects into bracketed fields (for example
1516
1712
  |---|---|---|---|---|
1517
1713
  | create | POST | `/search/v1/search` | no | no |
1518
1714
 
1715
+ ## studio
1716
+
1717
+ ### studio.codexes
1718
+
1719
+ | Method | HTTP | Path | Streaming | Pagination |
1720
+ |---|---|---|---|---|
1721
+ | create | POST | `/studio/v1/codexes` | no | no |
1722
+ | delete | DELETE | `/studio/v1/codexes/{codex}` | no | no |
1723
+ | list | GET | `/studio/v1/codexes` | no | no |
1724
+ | retrieve | GET | `/studio/v1/codexes/{codex}` | no | no |
1725
+ | update | PATCH | `/studio/v1/codexes/{codex}` | no | no |
1726
+
1727
+ ### studio.codexes.entries
1728
+
1729
+ | Method | HTTP | Path | Streaming | Pagination |
1730
+ |---|---|---|---|---|
1731
+ | create | POST | `/studio/v1/codexes/{codex}/entries` | no | no |
1732
+ | delete | DELETE | `/studio/v1/codexes/{codex}/entries/{entry}` | no | no |
1733
+ | list | GET | `/studio/v1/codexes/{codex}/entries` | no | no |
1734
+ | retrieve | GET | `/studio/v1/codexes/{codex}/entries/{entry}` | no | no |
1735
+ | update | PATCH | `/studio/v1/codexes/{codex}/entries/{entry}` | no | no |
1736
+
1737
+ ### studio.genres
1738
+
1739
+ | Method | HTTP | Path | Streaming | Pagination |
1740
+ |---|---|---|---|---|
1741
+ | list | GET | `/studio/v1/genres` | no | no |
1742
+ | retrieve | GET | `/studio/v1/genres/{genre}` | no | no |
1743
+
1744
+ ### studio.platforms
1745
+
1746
+ | Method | HTTP | Path | Streaming | Pagination |
1747
+ |---|---|---|---|---|
1748
+ | list | GET | `/studio/v1/platforms` | no | no |
1749
+ | retrieve | GET | `/studio/v1/platforms/{platform}` | no | no |
1750
+
1751
+ ### studio.reviewers
1752
+
1753
+ | Method | HTTP | Path | Streaming | Pagination |
1754
+ |---|---|---|---|---|
1755
+ | list | GET | `/studio/v1/reviewers` | no | no |
1756
+ | update | PATCH | `/studio/v1/reviewers/{agent}` | no | no |
1757
+
1758
+ ### studio.styles
1759
+
1760
+ | Method | HTTP | Path | Streaming | Pagination |
1761
+ |---|---|---|---|---|
1762
+ | create | POST | `/studio/v1/styles` | no | no |
1763
+ | delete | DELETE | `/studio/v1/styles/{style}` | no | no |
1764
+ | list | GET | `/studio/v1/styles` | no | no |
1765
+ | retrieve | GET | `/studio/v1/styles/{style}` | no | no |
1766
+ | update | PATCH | `/studio/v1/styles/{style}` | no | no |
1767
+
1768
+ ### studio.templates
1769
+
1770
+ | Method | HTTP | Path | Streaming | Pagination |
1771
+ |---|---|---|---|---|
1772
+ | create | POST | `/studio/v1/templates` | no | no |
1773
+ | delete | DELETE | `/studio/v1/templates/{template}` | no | no |
1774
+ | list | GET | `/studio/v1/templates` | no | no |
1775
+ | retrieve | GET | `/studio/v1/templates/{template}` | no | no |
1776
+
1777
+ ### studio.themes
1778
+
1779
+ | Method | HTTP | Path | Streaming | Pagination |
1780
+ |---|---|---|---|---|
1781
+ | create | POST | `/studio/v1/themes` | no | no |
1782
+ | delete | DELETE | `/studio/v1/themes/{theme}` | no | no |
1783
+ | list | GET | `/studio/v1/themes` | no | no |
1784
+ | retrieve | GET | `/studio/v1/themes/{theme}` | no | no |
1785
+ | update | PATCH | `/studio/v1/themes/{theme}` | no | no |
1786
+
1787
+ ### studio.works
1788
+
1789
+ | Method | HTTP | Path | Streaming | Pagination |
1790
+ |---|---|---|---|---|
1791
+ | create | POST | `/studio/v1/works` | no | no |
1792
+ | list | GET | `/studio/v1/works` | no | no |
1793
+ | resolve | GET | `/studio/v1/works:resolve` | no | no |
1794
+ | retrieve | GET | `/studio/v1/works/{work}` | no | no |
1795
+ | update | PATCH | `/studio/v1/works/{work}` | no | no |
1796
+ | updateBrief | PATCH | `/studio/v1/works/{work}/brief` | no | no |
1797
+
1798
+ ### studio.works.drafts
1799
+
1800
+ | Method | HTTP | Path | Streaming | Pagination |
1801
+ |---|---|---|---|---|
1802
+ | create | POST | `/studio/v1/works/{work}/drafts` | no | no |
1803
+ | list | GET | `/studio/v1/works/{work}/drafts` | no | no |
1804
+ | rebase | POST | `/studio/v1/works/{work}/drafts/{draft}:rebase` | no | no |
1805
+ | retrieve | GET | `/studio/v1/works/{work}/drafts/{draft}` | no | no |
1806
+ | retrieveExport | GET | `/studio/v1/works/{work}/drafts/{draft}/export` | no | no |
1807
+ | retrieveOutline | GET | `/studio/v1/works/{work}/drafts/{draft}/outline` | no | no |
1808
+ | retrieveReview | GET | `/studio/v1/works/{work}/drafts/{draft}/review` | no | no |
1809
+ | update | PATCH | `/studio/v1/works/{work}/drafts/{draft}` | no | no |
1810
+
1811
+ ### studio.works.drafts.renditions
1812
+
1813
+ | Method | HTTP | Path | Streaming | Pagination |
1814
+ |---|---|---|---|---|
1815
+ | create | POST | `/studio/v1/works/{work}/drafts/{draft}/renditions` | no | no |
1816
+
1817
+ ### studio.works.drafts.status
1818
+
1819
+ | Method | HTTP | Path | Streaming | Pagination |
1820
+ |---|---|---|---|---|
1821
+ | list | GET | `/studio/v1/works/{work}/drafts/{draft}/status` | no | no |
1822
+
1823
+ ### studio.works.drafts.units
1824
+
1825
+ | Method | HTTP | Path | Streaming | Pagination |
1826
+ |---|---|---|---|---|
1827
+ | batchCreate | POST | `/studio/v1/works/{work}/drafts/{draft}/units:batchCreate` | no | no |
1828
+ | batchUpdate | POST | `/studio/v1/works/{work}/drafts/{draft}/units:batchUpdate` | no | no |
1829
+ | create | POST | `/studio/v1/works/{work}/drafts/{draft}/units` | no | no |
1830
+
1831
+ ### studio.works.renditions
1832
+
1833
+ | Method | HTTP | Path | Streaming | Pagination |
1834
+ |---|---|---|---|---|
1835
+ | delete | DELETE | `/studio/v1/works/{work}/renditions/{rendition}` | no | no |
1836
+ | list | GET | `/studio/v1/works/{work}/renditions` | no | no |
1837
+ | publish | POST | `/studio/v1/works/{work}/renditions/{rendition}:publish` | no | no |
1838
+ | render | POST | `/studio/v1/works/{work}/renditions/{rendition}:render` | no | no |
1839
+ | retrieve | GET | `/studio/v1/works/{work}/renditions/{rendition}` | no | no |
1840
+ | retrieveContent | GET | `/studio/v1/works/{work}/renditions/{rendition}/content` | no | no |
1841
+ | update | PATCH | `/studio/v1/works/{work}/renditions/{rendition}` | no | no |
1842
+
1843
+ ### studio.works.reviewSettings
1844
+
1845
+ | Method | HTTP | Path | Streaming | Pagination |
1846
+ |---|---|---|---|---|
1847
+ | retrieve | GET | `/studio/v1/works/{work}/review-settings` | no | no |
1848
+ | update | PATCH | `/studio/v1/works/{work}/review-settings` | no | no |
1849
+
1850
+ ### studio.works.reviews
1851
+
1852
+ | Method | HTTP | Path | Streaming | Pagination |
1853
+ |---|---|---|---|---|
1854
+ | appeal | POST | `/studio/v1/works/{work}/reviews/{review}:appeal` | no | no |
1855
+ | cancel | POST | `/studio/v1/works/{work}/reviews/{review}:cancel` | no | no |
1856
+ | create | POST | `/studio/v1/works/{work}/reviews` | no | no |
1857
+ | list | GET | `/studio/v1/works/{work}/reviews` | no | no |
1858
+ | retrieve | GET | `/studio/v1/works/{work}/reviews/{review}` | no | no |
1859
+
1860
+ ### studio.works.units
1861
+
1862
+ | Method | HTTP | Path | Streaming | Pagination |
1863
+ |---|---|---|---|---|
1864
+ | move | POST | `/studio/v1/works/{work}/units/{unit}:move` | no | no |
1865
+ | retrieve | GET | `/studio/v1/works/{work}/units/{unit}` | no | no |
1866
+ | retrieveContext | GET | `/studio/v1/works/{work}/units/{unit}/context` | no | no |
1867
+ | update | PATCH | `/studio/v1/works/{work}/units/{unit}` | no | no |
1868
+
1869
+ ### studio.works.units.blocks
1870
+
1871
+ | Method | HTTP | Path | Streaming | Pagination |
1872
+ |---|---|---|---|---|
1873
+ | patch | POST | `/studio/v1/works/{work}/units/{unit}/blocks:patch` | no | no |
1874
+
1519
1875
  ## ticket
1520
1876
 
1521
1877
  ### ticket.activity
@@ -1564,6 +1920,7 @@ Multipart request bodies expand plain objects into bracketed fields (for example
1564
1920
  | Method | HTTP | Path | Streaming | Pagination |
1565
1921
  |---|---|---|---|---|
1566
1922
  | list | GET | `/ticket/v1/repositories` | no | no |
1923
+ | update | PATCH | `/ticket/v1/repositories/{id}` | no | no |
1567
1924
 
1568
1925
  ### ticket.tickets
1569
1926
 
@@ -1755,11 +2112,19 @@ Multipart request bodies expand plain objects into bracketed fields (for example
1755
2112
  | crm.properties.archive | CRM DELETE archives the resource rather than permanently deleting it; expose the archive product verb. |
1756
2113
  | database.databases.rest.create | The final parameter identifies a table collection; POST inserts rows rather than updating the table. |
1757
2114
  | file.uploads.createSigned | Signed upload creation returns a one-time local PUT URL; ADR-039 names this operation uploads.createSigned. |
2115
+ | media.libraries.retrieveDefault | ADR-094 §9 names the default-library read libraries.retrieveDefault; the URL names a reference rather than an id, so the path-derived name would otherwise read as retrieving a library called default. |
2116
+ | media.libraries.setDefault | ADR-094 §9 names the default-library write libraries.setDefault; the URL has no library id because the organization owns one default library, so the path alone cannot say which. |
2117
+ | media.assets.edit | ADR-094 §9 names the edit write assets.edit; an edit acts on the addressed asset and returns a Job, so the URL nesting under a library is a mount rather than an SDK resource level. |
2118
+ | media.assets.lineage | ADR-094 §9 names the edit-tree read assets.lineage; lineage is the product verb and the URL nesting under a library is a mount, not an SDK resource level. |
2119
+ | media.speech.create | ADR-094 §1/§9 names speech synthesis speech.create; the URL says audio/speech because that is the artifact the caller gets back, and the path alone would derive a speech collection create under an audio level that is not an SDK resource. |
2120
+ | media.images.generate | ADR-094 §9 names image generation images.generate; the URL mounts it under a library, but generation is an operation on images and the path alone would derive a generations collection create. |
2121
+ | media.videos.generate | ADR-094 §2/§9 names video generation videos.generate beside images.generate; the URL mounts it under a library, but generation is an operation on videos and the path alone would derive a generations collection create. The unqualified videos resource is the video lane, distinct from the batch and legacy job resources. |
1758
2122
  | meta.docs.search | Documentation keyword search is an operation on docs, not a nested collection. |
1759
2123
  | sandbox.sandboxes.commands.run | Sandbox data operations use the E2B SDK verb while preserving URL resource nesting. |
1760
2124
  | sandbox.sandboxes.files.remove | Sandbox data operations use the E2B SDK verb while preserving URL resource nesting. |
1761
2125
  | sandbox.sandboxes.files.read | Sandbox data operations use the E2B SDK verb while preserving URL resource nesting. |
1762
2126
  | sandbox.sandboxes.files.write | Sandbox data operations use the E2B SDK verb while preserving URL resource nesting. |
2127
+ | studio.works.reviewSettings.retrieve | A work has one review-settings singleton; the segment ends in s only because English writes it that way, so the collection rule would derive reviewSettings.list for a read that returns the settings object itself. |
1763
2128
  | vault.oauth.retrieveClientMetadata | The literal .json filename otherwise introduces a dot inside a method identifier. |
1764
2129
 
1765
2130
  ## SDK parameter aliases
package/README.md CHANGED
@@ -33,7 +33,7 @@ console.log(completion.choices[0]?.message.content);
33
33
  ## Why this SDK
34
34
 
35
35
  - **The whole platform, one client.** About 350 operations across models, agents, sandboxes,
36
- cloud browsers, web search, databases, knowledge bases, files, media, automation and hosted
36
+ browsers, web search, databases, knowledge bases, files, media, automation and hosted
37
37
  applications, generated from the same contract as the API.
38
38
  - **Types from the contract.** Every path, query, body and response is typed, including the
39
39
  events of each stream, so your editor knows what comes back.
@@ -122,7 +122,7 @@ conversation with it, on its own machine.
122
122
  ```ts
123
123
  const { sandboxes } = praxis.sandbox;
124
124
  const sandbox = await sandboxes.create({
125
- body: { templateID: 'base' },
125
+ body: { templateID: 'base', autoPause: false }, // ends at its timeout; autoPause: true keeps a long-lived computer
126
126
  });
127
127
  const result = await sandboxes.commands.run({
128
128
  path: { sandbox_id: sandbox.sandboxID },
@@ -1,7 +1,9 @@
1
1
  /**
2
- * Default credential chain for code running on a Praxis computer (ticket-5367):
3
- * PRAXIS_API_TOKEN environment variable, then ~/.praxis/credentials. Resolved at call time so a
4
- * token the platform renewed in the file is picked up by an already-running process.
2
+ * Default credential chain for code running on a Praxis computer (ticket-5367, ADR-098 §2):
3
+ * the PRAXIS_API_TOKEN environment variable, then the login file of the environment,
4
+ * `~/.praxis/cli/<env>.json` — the one file `praxis login` writes for a person and the platform writes
5
+ * for a managed login. Resolved at call time so a token the platform renewed in the file is picked up
6
+ * by an already-running process.
5
7
  */
6
8
  export interface ResolvedCredentials {
7
9
  token?: string;
@@ -9,6 +11,13 @@ export interface ResolvedCredentials {
9
11
  }
10
12
  type Env = Record<string, string | undefined>;
11
13
  type ReadFile = (path: string) => string | null;
14
+ /**
15
+ * Which environment's login file applies: PRAXIS_ENV when it names one, otherwise a `-develop.` host in
16
+ * PRAXIS_API_URL means develop and any other host production — the rule apps/cli/src/config/env.ts
17
+ * applies. A PRAXIS_ENV that is not a plain name is no environment at all and is ignored. Pure.
18
+ */
19
+ export declare function credentialsEnv(env: Env): string;
20
+ /** The one login file, the same path the CLI reads for this environment. Null without a home directory. Pure. */
12
21
  export declare function credentialsPath(env: Env): string | null;
13
22
  export declare function resolveDefaultCredentials(env?: Env, readFile?: ReadFile): ResolvedCredentials;
14
23
  export {};
@@ -8,9 +8,29 @@ function defaultReadFile(path) {
8
8
  return null;
9
9
  }
10
10
  }
11
+ /**
12
+ * Which environment's login file applies: PRAXIS_ENV when it names one, otherwise a `-develop.` host in
13
+ * PRAXIS_API_URL means develop and any other host production — the rule apps/cli/src/config/env.ts
14
+ * applies. A PRAXIS_ENV that is not a plain name is no environment at all and is ignored. Pure.
15
+ */
16
+ export function credentialsEnv(env) {
17
+ const declared = nonEmpty(env.PRAXIS_ENV);
18
+ if (declared && /^[A-Za-z0-9_-]+$/.test(declared))
19
+ return declared;
20
+ const apiUrl = nonEmpty(env.PRAXIS_API_URL);
21
+ if (apiUrl) {
22
+ try {
23
+ if (new URL(apiUrl).hostname.includes('-develop.'))
24
+ return 'develop';
25
+ }
26
+ catch { /* a malformed URL is not evidence of develop */ }
27
+ }
28
+ return 'production';
29
+ }
30
+ /** The one login file, the same path the CLI reads for this environment. Null without a home directory. Pure. */
11
31
  export function credentialsPath(env) {
12
32
  const home = nonEmpty(env.HOME) ?? nonEmpty(env.USERPROFILE);
13
- return home ? `${home.replace(/\/$/, '')}/.praxis/credentials` : null;
33
+ return home ? `${home.replace(/[/\\]+$/, '')}/.praxis/cli/${credentialsEnv(env)}.json` : null;
14
34
  }
15
35
  export function resolveDefaultCredentials(env = globalThis.process?.env ?? {}, readFile = defaultReadFile) {
16
36
  const envToken = nonEmpty(env.PRAXIS_API_TOKEN);
@@ -23,7 +43,7 @@ export function resolveDefaultCredentials(env = globalThis.process?.env ?? {}, r
23
43
  return envUrl ? { apiUrl: envUrl } : {};
24
44
  try {
25
45
  const file = JSON.parse(text);
26
- const token = nonEmpty(file.token);
46
+ const token = nonEmpty(file.access_token);
27
47
  const apiUrl = envUrl ?? nonEmpty(file.api_url);
28
48
  return { ...(token ? { token } : {}), ...(apiUrl ? { apiUrl } : {}) };
29
49
  }
@@ -1,6 +1,6 @@
1
1
  import { type SSEEvent } from './sse.js';
2
2
  export interface PraxisOptions {
3
- /** Explicit key. Omitted on a Praxis computer: PRAXIS_API_TOKEN, then ~/.praxis/credentials, are used. */
3
+ /** Explicit key. Omitted on a Praxis computer: PRAXIS_API_TOKEN, then the login file `~/.praxis/cli/<env>.json`, are used. */
4
4
  apiKey?: string;
5
5
  baseUrl?: string;
6
6
  timeoutMs?: number;