@deepraxis/sdk 0.1.1-dev.f78d12d → 0.1.1-dev.faa3b25
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 +403 -13
- package/README.md +2 -2
- package/dist/core/credentials.d.ts +12 -3
- package/dist/core/credentials.js +22 -2
- package/dist/core/errors.d.ts +6 -0
- package/dist/core/errors.js +8 -0
- package/dist/core/transport.d.ts +1 -1
- package/dist/generated/index.d.ts +2 -2
- package/dist/generated/index.js +1 -1
- package/dist/generated/sdk.gen.d.ts +976 -157
- package/dist/generated/sdk.gen.js +3734 -1324
- package/dist/generated/types.gen.d.ts +52400 -37965
- package/dist/helpers/browser-actions.d.ts +84 -0
- package/dist/helpers/browser-actions.js +141 -0
- package/dist/helpers/browser-connect.d.ts +26 -2
- package/dist/helpers/browser-connect.js +263 -25
- package/dist/helpers/browser-decisions.d.ts +44 -0
- package/dist/helpers/browser-decisions.js +53 -0
- package/dist/helpers/browser-documentation.d.ts +1 -1
- package/dist/helpers/browser-documentation.js +20 -11
- package/dist/operations.generated.d.ts +35 -17198
- package/dist/operations.generated.js +10598 -5435
- package/dist/resources.generated.d.ts +292 -10
- package/dist/resources.generated.js +251 -8
- package/package.json +1 -1
package/METHODS.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# SDK methods
|
|
2
2
|
|
|
3
|
-
Generated by `bun run generate`.
|
|
3
|
+
Generated by `bun run generate`. 678 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
|
|
|
@@ -103,6 +103,12 @@ Multipart request bodies expand plain objects into bracketed fields (for example
|
|
|
103
103
|
| list | GET | `/agent/v1/computers/{computer_id}/files` | no | no |
|
|
104
104
|
| retrieveContent | GET | `/agent/v1/computers/{computer_id}/files/content` | no | no |
|
|
105
105
|
|
|
106
|
+
### agent.computers.files.convert
|
|
107
|
+
|
|
108
|
+
| Method | HTTP | Path | Streaming | Pagination |
|
|
109
|
+
|---|---|---|---|---|
|
|
110
|
+
| create | POST | `/agent/v1/computers/{computer_id}/files/convert` | no | no |
|
|
111
|
+
|
|
106
112
|
### agent.computers.leases
|
|
107
113
|
|
|
108
114
|
| Method | HTTP | Path | Streaming | Pagination |
|
|
@@ -570,12 +576,20 @@ Multipart request bodies expand plain objects into bracketed fields (for example
|
|
|
570
576
|
| Method | HTTP | Path | Streaming | Pagination |
|
|
571
577
|
|---|---|---|---|---|
|
|
572
578
|
| create | POST | `/browser/v1/sessions` | no | no |
|
|
579
|
+
| frames | GET | `/browser/v1/sessions/{sessionId}/frames` | always | no |
|
|
573
580
|
| list | GET | `/browser/v1/sessions` | no | no |
|
|
574
581
|
| retrieve | GET | `/browser/v1/sessions/{sessionId}` | no | no |
|
|
575
582
|
| retrieveDebug | GET | `/browser/v1/sessions/{sessionId}/debug` | no | no |
|
|
583
|
+
| retrieveFrame | GET | `/browser/v1/sessions/{sessionId}/frame` | no | no |
|
|
576
584
|
| stream | GET | `/browser/v1/sessions/{sessionId}/stream` | always | no |
|
|
577
585
|
| update | POST | `/browser/v1/sessions/{sessionId}` | no | no |
|
|
578
586
|
|
|
587
|
+
### browser.sessions.actions
|
|
588
|
+
|
|
589
|
+
| Method | HTTP | Path | Streaming | Pagination |
|
|
590
|
+
|---|---|---|---|---|
|
|
591
|
+
| create | POST | `/browser/v1/sessions/{sessionId}/actions` | no | no |
|
|
592
|
+
|
|
579
593
|
### browser.sessions.events
|
|
580
594
|
|
|
581
595
|
| Method | HTTP | Path | Streaming | Pagination |
|
|
@@ -786,6 +800,12 @@ Multipart request bodies expand plain objects into bracketed fields (for example
|
|
|
786
800
|
|---|---|---|---|---|
|
|
787
801
|
| import | POST | `/cut/v1/projects/{project_id}/media:import` | no | no |
|
|
788
802
|
|
|
803
|
+
### cut.projects.renders
|
|
804
|
+
|
|
805
|
+
| Method | HTTP | Path | Streaming | Pagination |
|
|
806
|
+
|---|---|---|---|---|
|
|
807
|
+
| create | POST | `/cut/v1/projects/{project_id}/renders` | no | no |
|
|
808
|
+
|
|
789
809
|
### cut.projects.versions
|
|
790
810
|
|
|
791
811
|
| Method | HTTP | Path | Streaming | Pagination |
|
|
@@ -793,6 +813,12 @@ Multipart request bodies expand plain objects into bracketed fields (for example
|
|
|
793
813
|
| create | POST | `/cut/v1/projects/{project_id}/versions` | no | no |
|
|
794
814
|
| list | GET | `/cut/v1/projects/{project_id}/versions` | no | no |
|
|
795
815
|
|
|
816
|
+
### cut.renders
|
|
817
|
+
|
|
818
|
+
| Method | HTTP | Path | Streaming | Pagination |
|
|
819
|
+
|---|---|---|---|---|
|
|
820
|
+
| retrieve | GET | `/cut/v1/renders/{render_id}` | no | no |
|
|
821
|
+
|
|
796
822
|
### cut.versions
|
|
797
823
|
|
|
798
824
|
| Method | HTTP | Path | Streaming | Pagination |
|
|
@@ -852,6 +878,178 @@ Multipart request bodies expand plain objects into bracketed fields (for example
|
|
|
852
878
|
| delete | DELETE | `/database/v1/databases/{database_id}/tables/{table}/fields/{field}` | no | no |
|
|
853
879
|
| update | PATCH | `/database/v1/databases/{database_id}/tables/{table}/fields/{field}` | no | no |
|
|
854
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
|
+
|
|
855
1053
|
## file
|
|
856
1054
|
|
|
857
1055
|
### file.files
|
|
@@ -968,12 +1166,25 @@ Multipart request bodies expand plain objects into bracketed fields (for example
|
|
|
968
1166
|
|
|
969
1167
|
## media
|
|
970
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
|
+
|
|
971
1176
|
### media.generation.capabilities
|
|
972
1177
|
|
|
973
1178
|
| Method | HTTP | Path | Streaming | Pagination |
|
|
974
1179
|
|---|---|---|---|---|
|
|
975
1180
|
| list | GET | `/media/v1/generation/capabilities` | no | no |
|
|
976
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
|
+
|
|
977
1188
|
### media.libraries
|
|
978
1189
|
|
|
979
1190
|
| Method | HTTP | Path | Streaming | Pagination |
|
|
@@ -983,6 +1194,8 @@ Multipart request bodies expand plain objects into bracketed fields (for example
|
|
|
983
1194
|
| list | GET | `/media/v1/libraries` | no | yes |
|
|
984
1195
|
| restore | POST | `/media/v1/libraries/{library_id}/restore` | no | no |
|
|
985
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 |
|
|
986
1199
|
| update | PATCH | `/media/v1/libraries/{library_id}` | no | no |
|
|
987
1200
|
|
|
988
1201
|
### media.libraries.assets
|
|
@@ -1045,12 +1258,6 @@ Multipart request bodies expand plain objects into bracketed fields (for example
|
|
|
1045
1258
|
|---|---|---|---|---|
|
|
1046
1259
|
| list | GET | `/media/v1/libraries/{library_id}/folders` | no | no |
|
|
1047
1260
|
|
|
1048
|
-
### media.libraries.generations
|
|
1049
|
-
|
|
1050
|
-
| Method | HTTP | Path | Streaming | Pagination |
|
|
1051
|
-
|---|---|---|---|---|
|
|
1052
|
-
| create | POST | `/media/v1/libraries/{library_id}/generations` | no | no |
|
|
1053
|
-
|
|
1054
1261
|
### media.libraries.jobs
|
|
1055
1262
|
|
|
1056
1263
|
| Method | HTTP | Path | Streaming | Pagination |
|
|
@@ -1059,12 +1266,6 @@ Multipart request bodies expand plain objects into bracketed fields (for example
|
|
|
1059
1266
|
| list | GET | `/media/v1/libraries/{library_id}/jobs` | no | yes |
|
|
1060
1267
|
| retrieve | GET | `/media/v1/libraries/{library_id}/jobs/{job_id}` | no | no |
|
|
1061
1268
|
|
|
1062
|
-
### media.libraries.jobs.outputs.save
|
|
1063
|
-
|
|
1064
|
-
| Method | HTTP | Path | Streaming | Pagination |
|
|
1065
|
-
|---|---|---|---|---|
|
|
1066
|
-
| create | POST | `/media/v1/libraries/{library_id}/jobs/{job_id}/outputs/{index}/save` | no | no |
|
|
1067
|
-
|
|
1068
1269
|
### media.libraries.purge
|
|
1069
1270
|
|
|
1070
1271
|
| Method | HTTP | Path | Streaming | Pagination |
|
|
@@ -1102,6 +1303,18 @@ Multipart request bodies expand plain objects into bracketed fields (for example
|
|
|
1102
1303
|
| list | GET | `/media/v1/libraries/{library_id}/understandings` | no | yes |
|
|
1103
1304
|
| retrieveFailureSummary | GET | `/media/v1/libraries/{library_id}/understandings/failure_summary` | no | no |
|
|
1104
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
|
+
|
|
1105
1318
|
## meta
|
|
1106
1319
|
|
|
1107
1320
|
### meta.docs
|
|
@@ -1266,6 +1479,7 @@ Multipart request bodies expand plain objects into bracketed fields (for example
|
|
|
1266
1479
|
| create | POST | `/ontology/v1/nodes` | no | no |
|
|
1267
1480
|
| list | GET | `/ontology/v1/nodes` | no | yes |
|
|
1268
1481
|
| retrieve | GET | `/ontology/v1/nodes/{node_id}` | no | no |
|
|
1482
|
+
| retrieveNeighborhood | GET | `/ontology/v1/nodes/{node_id}/neighborhood` | no | no |
|
|
1269
1483
|
| update | PATCH | `/ontology/v1/nodes/{node_id}` | no | no |
|
|
1270
1484
|
|
|
1271
1485
|
### ontology.nodes.merge
|
|
@@ -1358,6 +1572,12 @@ Multipart request bodies expand plain objects into bracketed fields (for example
|
|
|
1358
1572
|
|
|
1359
1573
|
## sandbox
|
|
1360
1574
|
|
|
1575
|
+
### sandbox.events.sandboxes
|
|
1576
|
+
|
|
1577
|
+
| Method | HTTP | Path | Streaming | Pagination |
|
|
1578
|
+
|---|---|---|---|---|
|
|
1579
|
+
| retrieve | GET | `/sandbox/v1/events/sandboxes/{sandboxID}` | no | no |
|
|
1580
|
+
|
|
1361
1581
|
### sandbox.sandboxes
|
|
1362
1582
|
|
|
1363
1583
|
| Method | HTTP | Path | Streaming | Pagination |
|
|
@@ -1498,6 +1718,167 @@ Multipart request bodies expand plain objects into bracketed fields (for example
|
|
|
1498
1718
|
|---|---|---|---|---|
|
|
1499
1719
|
| create | POST | `/search/v1/search` | no | no |
|
|
1500
1720
|
|
|
1721
|
+
## studio
|
|
1722
|
+
|
|
1723
|
+
### studio.codexes
|
|
1724
|
+
|
|
1725
|
+
| Method | HTTP | Path | Streaming | Pagination |
|
|
1726
|
+
|---|---|---|---|---|
|
|
1727
|
+
| create | POST | `/studio/v1/codexes` | no | no |
|
|
1728
|
+
| delete | DELETE | `/studio/v1/codexes/{codex}` | no | no |
|
|
1729
|
+
| list | GET | `/studio/v1/codexes` | no | no |
|
|
1730
|
+
| retrieve | GET | `/studio/v1/codexes/{codex}` | no | no |
|
|
1731
|
+
| update | PATCH | `/studio/v1/codexes/{codex}` | no | no |
|
|
1732
|
+
|
|
1733
|
+
### studio.codexes.entries
|
|
1734
|
+
|
|
1735
|
+
| Method | HTTP | Path | Streaming | Pagination |
|
|
1736
|
+
|---|---|---|---|---|
|
|
1737
|
+
| create | POST | `/studio/v1/codexes/{codex}/entries` | no | no |
|
|
1738
|
+
| delete | DELETE | `/studio/v1/codexes/{codex}/entries/{entry}` | no | no |
|
|
1739
|
+
| list | GET | `/studio/v1/codexes/{codex}/entries` | no | no |
|
|
1740
|
+
| retrieve | GET | `/studio/v1/codexes/{codex}/entries/{entry}` | no | no |
|
|
1741
|
+
| update | PATCH | `/studio/v1/codexes/{codex}/entries/{entry}` | no | no |
|
|
1742
|
+
|
|
1743
|
+
### studio.genres
|
|
1744
|
+
|
|
1745
|
+
| Method | HTTP | Path | Streaming | Pagination |
|
|
1746
|
+
|---|---|---|---|---|
|
|
1747
|
+
| list | GET | `/studio/v1/genres` | no | no |
|
|
1748
|
+
| retrieve | GET | `/studio/v1/genres/{genre}` | no | no |
|
|
1749
|
+
|
|
1750
|
+
### studio.platforms
|
|
1751
|
+
|
|
1752
|
+
| Method | HTTP | Path | Streaming | Pagination |
|
|
1753
|
+
|---|---|---|---|---|
|
|
1754
|
+
| list | GET | `/studio/v1/platforms` | no | no |
|
|
1755
|
+
| retrieve | GET | `/studio/v1/platforms/{platform}` | no | no |
|
|
1756
|
+
|
|
1757
|
+
### studio.styles
|
|
1758
|
+
|
|
1759
|
+
| Method | HTTP | Path | Streaming | Pagination |
|
|
1760
|
+
|---|---|---|---|---|
|
|
1761
|
+
| create | POST | `/studio/v1/styles` | no | no |
|
|
1762
|
+
| delete | DELETE | `/studio/v1/styles/{style}` | no | no |
|
|
1763
|
+
| list | GET | `/studio/v1/styles` | no | no |
|
|
1764
|
+
| retrieve | GET | `/studio/v1/styles/{style}` | no | no |
|
|
1765
|
+
| update | PATCH | `/studio/v1/styles/{style}` | no | no |
|
|
1766
|
+
|
|
1767
|
+
### studio.templates
|
|
1768
|
+
|
|
1769
|
+
| Method | HTTP | Path | Streaming | Pagination |
|
|
1770
|
+
|---|---|---|---|---|
|
|
1771
|
+
| create | POST | `/studio/v1/templates` | no | no |
|
|
1772
|
+
| delete | DELETE | `/studio/v1/templates/{template}` | no | no |
|
|
1773
|
+
| list | GET | `/studio/v1/templates` | no | no |
|
|
1774
|
+
| retrieve | GET | `/studio/v1/templates/{template}` | no | no |
|
|
1775
|
+
|
|
1776
|
+
### studio.themes
|
|
1777
|
+
|
|
1778
|
+
| Method | HTTP | Path | Streaming | Pagination |
|
|
1779
|
+
|---|---|---|---|---|
|
|
1780
|
+
| create | POST | `/studio/v1/themes` | no | no |
|
|
1781
|
+
| delete | DELETE | `/studio/v1/themes/{theme}` | no | no |
|
|
1782
|
+
| list | GET | `/studio/v1/themes` | no | no |
|
|
1783
|
+
| retrieve | GET | `/studio/v1/themes/{theme}` | no | no |
|
|
1784
|
+
| update | PATCH | `/studio/v1/themes/{theme}` | no | no |
|
|
1785
|
+
|
|
1786
|
+
### studio.works
|
|
1787
|
+
|
|
1788
|
+
| Method | HTTP | Path | Streaming | Pagination |
|
|
1789
|
+
|---|---|---|---|---|
|
|
1790
|
+
| create | POST | `/studio/v1/works` | no | no |
|
|
1791
|
+
| list | GET | `/studio/v1/works` | no | no |
|
|
1792
|
+
| resolve | GET | `/studio/v1/works:resolve` | no | no |
|
|
1793
|
+
| retrieve | GET | `/studio/v1/works/{work}` | no | no |
|
|
1794
|
+
| update | PATCH | `/studio/v1/works/{work}` | no | no |
|
|
1795
|
+
| updateBrief | PATCH | `/studio/v1/works/{work}/brief` | no | no |
|
|
1796
|
+
|
|
1797
|
+
### studio.works.drafts
|
|
1798
|
+
|
|
1799
|
+
| Method | HTTP | Path | Streaming | Pagination |
|
|
1800
|
+
|---|---|---|---|---|
|
|
1801
|
+
| create | POST | `/studio/v1/works/{work}/drafts` | no | no |
|
|
1802
|
+
| list | GET | `/studio/v1/works/{work}/drafts` | no | no |
|
|
1803
|
+
| rebase | POST | `/studio/v1/works/{work}/drafts/{draft}:rebase` | no | no |
|
|
1804
|
+
| retrieve | GET | `/studio/v1/works/{work}/drafts/{draft}` | no | no |
|
|
1805
|
+
| retrieveExport | GET | `/studio/v1/works/{work}/drafts/{draft}/export` | no | no |
|
|
1806
|
+
| retrieveOutline | GET | `/studio/v1/works/{work}/drafts/{draft}/outline` | no | no |
|
|
1807
|
+
| retrieveReview | GET | `/studio/v1/works/{work}/drafts/{draft}/review` | no | no |
|
|
1808
|
+
| update | PATCH | `/studio/v1/works/{work}/drafts/{draft}` | no | no |
|
|
1809
|
+
|
|
1810
|
+
### studio.works.drafts.renditions
|
|
1811
|
+
|
|
1812
|
+
| Method | HTTP | Path | Streaming | Pagination |
|
|
1813
|
+
|---|---|---|---|---|
|
|
1814
|
+
| create | POST | `/studio/v1/works/{work}/drafts/{draft}/renditions` | no | no |
|
|
1815
|
+
|
|
1816
|
+
### studio.works.drafts.status
|
|
1817
|
+
|
|
1818
|
+
| Method | HTTP | Path | Streaming | Pagination |
|
|
1819
|
+
|---|---|---|---|---|
|
|
1820
|
+
| list | GET | `/studio/v1/works/{work}/drafts/{draft}/status` | no | no |
|
|
1821
|
+
|
|
1822
|
+
### studio.works.drafts.units
|
|
1823
|
+
|
|
1824
|
+
| Method | HTTP | Path | Streaming | Pagination |
|
|
1825
|
+
|---|---|---|---|---|
|
|
1826
|
+
| batchCreate | POST | `/studio/v1/works/{work}/drafts/{draft}/units:batchCreate` | no | no |
|
|
1827
|
+
| batchUpdate | POST | `/studio/v1/works/{work}/drafts/{draft}/units:batchUpdate` | no | no |
|
|
1828
|
+
| create | POST | `/studio/v1/works/{work}/drafts/{draft}/units` | no | no |
|
|
1829
|
+
|
|
1830
|
+
### studio.works.renditions
|
|
1831
|
+
|
|
1832
|
+
| Method | HTTP | Path | Streaming | Pagination |
|
|
1833
|
+
|---|---|---|---|---|
|
|
1834
|
+
| delete | DELETE | `/studio/v1/works/{work}/renditions/{rendition}` | no | no |
|
|
1835
|
+
| list | GET | `/studio/v1/works/{work}/renditions` | no | no |
|
|
1836
|
+
| publish | POST | `/studio/v1/works/{work}/renditions/{rendition}:publish` | no | no |
|
|
1837
|
+
| render | POST | `/studio/v1/works/{work}/renditions/{rendition}:render` | no | no |
|
|
1838
|
+
| retrieve | GET | `/studio/v1/works/{work}/renditions/{rendition}` | no | no |
|
|
1839
|
+
| retrieveContent | GET | `/studio/v1/works/{work}/renditions/{rendition}/content` | no | no |
|
|
1840
|
+
| update | PATCH | `/studio/v1/works/{work}/renditions/{rendition}` | no | no |
|
|
1841
|
+
|
|
1842
|
+
### studio.works.reviewSettings
|
|
1843
|
+
|
|
1844
|
+
| Method | HTTP | Path | Streaming | Pagination |
|
|
1845
|
+
|---|---|---|---|---|
|
|
1846
|
+
| retrieve | GET | `/studio/v1/works/{work}/review-settings` | no | no |
|
|
1847
|
+
| update | PATCH | `/studio/v1/works/{work}/review-settings` | no | no |
|
|
1848
|
+
|
|
1849
|
+
### studio.works.reviewers
|
|
1850
|
+
|
|
1851
|
+
| Method | HTTP | Path | Streaming | Pagination |
|
|
1852
|
+
|---|---|---|---|---|
|
|
1853
|
+
| create | POST | `/studio/v1/works/{work}/reviewers` | no | no |
|
|
1854
|
+
| delete | DELETE | `/studio/v1/works/{work}/reviewers/{agent}` | no | no |
|
|
1855
|
+
| list | GET | `/studio/v1/works/{work}/reviewers` | no | no |
|
|
1856
|
+
| update | PATCH | `/studio/v1/works/{work}/reviewers/{agent}` | no | no |
|
|
1857
|
+
|
|
1858
|
+
### studio.works.reviews
|
|
1859
|
+
|
|
1860
|
+
| Method | HTTP | Path | Streaming | Pagination |
|
|
1861
|
+
|---|---|---|---|---|
|
|
1862
|
+
| cancel | POST | `/studio/v1/works/{work}/reviews/{review}:cancel` | no | no |
|
|
1863
|
+
| create | POST | `/studio/v1/works/{work}/reviews` | no | no |
|
|
1864
|
+
| list | GET | `/studio/v1/works/{work}/reviews` | no | no |
|
|
1865
|
+
| retrieve | GET | `/studio/v1/works/{work}/reviews/{review}` | no | no |
|
|
1866
|
+
|
|
1867
|
+
### studio.works.units
|
|
1868
|
+
|
|
1869
|
+
| Method | HTTP | Path | Streaming | Pagination |
|
|
1870
|
+
|---|---|---|---|---|
|
|
1871
|
+
| move | POST | `/studio/v1/works/{work}/units/{unit}:move` | no | no |
|
|
1872
|
+
| retrieve | GET | `/studio/v1/works/{work}/units/{unit}` | no | no |
|
|
1873
|
+
| retrieveContext | GET | `/studio/v1/works/{work}/units/{unit}/context` | no | no |
|
|
1874
|
+
| update | PATCH | `/studio/v1/works/{work}/units/{unit}` | no | no |
|
|
1875
|
+
|
|
1876
|
+
### studio.works.units.blocks
|
|
1877
|
+
|
|
1878
|
+
| Method | HTTP | Path | Streaming | Pagination |
|
|
1879
|
+
|---|---|---|---|---|
|
|
1880
|
+
| patch | POST | `/studio/v1/works/{work}/units/{unit}/blocks:patch` | no | no |
|
|
1881
|
+
|
|
1501
1882
|
## ticket
|
|
1502
1883
|
|
|
1503
1884
|
### ticket.activity
|
|
@@ -1546,6 +1927,7 @@ Multipart request bodies expand plain objects into bracketed fields (for example
|
|
|
1546
1927
|
| Method | HTTP | Path | Streaming | Pagination |
|
|
1547
1928
|
|---|---|---|---|---|
|
|
1548
1929
|
| list | GET | `/ticket/v1/repositories` | no | no |
|
|
1930
|
+
| update | PATCH | `/ticket/v1/repositories/{id}` | no | no |
|
|
1549
1931
|
|
|
1550
1932
|
### ticket.tickets
|
|
1551
1933
|
|
|
@@ -1737,11 +2119,19 @@ Multipart request bodies expand plain objects into bracketed fields (for example
|
|
|
1737
2119
|
| crm.properties.archive | CRM DELETE archives the resource rather than permanently deleting it; expose the archive product verb. |
|
|
1738
2120
|
| database.databases.rest.create | The final parameter identifies a table collection; POST inserts rows rather than updating the table. |
|
|
1739
2121
|
| file.uploads.createSigned | Signed upload creation returns a one-time local PUT URL; ADR-039 names this operation uploads.createSigned. |
|
|
2122
|
+
| 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. |
|
|
2123
|
+
| 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. |
|
|
2124
|
+
| 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. |
|
|
2125
|
+
| 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. |
|
|
2126
|
+
| 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. |
|
|
2127
|
+
| 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. |
|
|
2128
|
+
| 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. |
|
|
1740
2129
|
| meta.docs.search | Documentation keyword search is an operation on docs, not a nested collection. |
|
|
1741
2130
|
| sandbox.sandboxes.commands.run | Sandbox data operations use the E2B SDK verb while preserving URL resource nesting. |
|
|
1742
2131
|
| sandbox.sandboxes.files.remove | Sandbox data operations use the E2B SDK verb while preserving URL resource nesting. |
|
|
1743
2132
|
| sandbox.sandboxes.files.read | Sandbox data operations use the E2B SDK verb while preserving URL resource nesting. |
|
|
1744
2133
|
| sandbox.sandboxes.files.write | Sandbox data operations use the E2B SDK verb while preserving URL resource nesting. |
|
|
2134
|
+
| 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. |
|
|
1745
2135
|
| vault.oauth.retrieveClientMetadata | The literal .json filename otherwise introduces a dot inside a method identifier. |
|
|
1746
2136
|
|
|
1747
2137
|
## 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
|
-
|
|
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
|
|
4
|
-
*
|
|
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 {};
|
package/dist/core/credentials.js
CHANGED
|
@@ -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(
|
|
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.
|
|
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
|
}
|
package/dist/core/errors.d.ts
CHANGED
|
@@ -9,6 +9,9 @@ export interface ProblemDetails {
|
|
|
9
9
|
requestId?: string;
|
|
10
10
|
message?: string;
|
|
11
11
|
param?: string | null;
|
|
12
|
+
/** ticket-681 — the documentation page the failure points at, and the exact section to read. */
|
|
13
|
+
docUrl?: string;
|
|
14
|
+
describe?: string;
|
|
12
15
|
raw?: unknown;
|
|
13
16
|
}
|
|
14
17
|
/** Pure normalization shared by HTTP clients and the automation call ledger.
|
|
@@ -26,6 +29,9 @@ export declare class PraxisError extends Error {
|
|
|
26
29
|
readonly errors: unknown[];
|
|
27
30
|
readonly requestId?: string;
|
|
28
31
|
readonly param?: string | null;
|
|
32
|
+
/** ticket-681 — the documented page and the exact section an agent should read to fix the call. */
|
|
33
|
+
readonly docUrl?: string;
|
|
34
|
+
readonly describe?: string;
|
|
29
35
|
readonly raw?: unknown;
|
|
30
36
|
constructor(problem?: ProblemDetails, options?: ErrorOptions);
|
|
31
37
|
static fromResponse(response: Response, body: unknown): PraxisError;
|
package/dist/core/errors.js
CHANGED
|
@@ -16,6 +16,9 @@ export function problemFrom(status, headers, body, statusText) {
|
|
|
16
16
|
param: typeof param === 'string' ? param : param === null || nested.param === null ? null : undefined,
|
|
17
17
|
errors: Array.isArray(value.errors) ? value.errors : [],
|
|
18
18
|
requestId: headers.get('x-request-id') ?? string(value.requestId) ?? string(value.request_id),
|
|
19
|
+
// Both spellings reach here: the own face writes snake_case, an in-process problem keeps docUrl.
|
|
20
|
+
docUrl: string(nested.doc_url) ?? string(value.doc_url) ?? string(nested.docUrl) ?? string(value.docUrl),
|
|
21
|
+
describe: string(nested.describe) ?? string(value.describe),
|
|
19
22
|
raw: body,
|
|
20
23
|
};
|
|
21
24
|
}
|
|
@@ -28,6 +31,9 @@ export class PraxisError extends Error {
|
|
|
28
31
|
errors;
|
|
29
32
|
requestId;
|
|
30
33
|
param;
|
|
34
|
+
/** ticket-681 — the documented page and the exact section an agent should read to fix the call. */
|
|
35
|
+
docUrl;
|
|
36
|
+
describe;
|
|
31
37
|
raw;
|
|
32
38
|
constructor(problem = {}, options) {
|
|
33
39
|
super(problem.message ?? problem.detail ?? problem.title ?? `Praxis request failed${problem.status ? ` (${problem.status})` : ''}`, options);
|
|
@@ -40,6 +46,8 @@ export class PraxisError extends Error {
|
|
|
40
46
|
this.errors = problem.errors ?? [];
|
|
41
47
|
this.requestId = problem.requestId;
|
|
42
48
|
this.param = problem.param;
|
|
49
|
+
this.docUrl = problem.docUrl;
|
|
50
|
+
this.describe = problem.describe;
|
|
43
51
|
this.raw = problem.raw;
|
|
44
52
|
}
|
|
45
53
|
static fromResponse(response, body) {
|