@deepraxis/sdk 0.1.1-dev.f0ef747 → 0.1.1-dev.fcdebee

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`. 421 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`. 530 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
 
@@ -374,6 +374,16 @@ Multipart request bodies expand plain objects into bracketed fields (for example
374
374
  |---|---|---|---|---|
375
375
  | send | POST | `/automation/v1/hooks/{trigger_id}/{token}` | no | no |
376
376
 
377
+ ### automation.humanTasks
378
+
379
+ | Method | HTTP | Path | Streaming | Pagination |
380
+ |---|---|---|---|---|
381
+ | cancel | POST | `/automation/v1/human-tasks/{id}/cancel` | no | no |
382
+ | delegate | POST | `/automation/v1/human-tasks/{id}/delegate` | no | no |
383
+ | list | GET | `/automation/v1/human-tasks` | no | yes |
384
+ | respond | POST | `/automation/v1/human-tasks/{id}/respond` | no | no |
385
+ | retrieve | GET | `/automation/v1/human-tasks/{id}` | no | no |
386
+
377
387
  ### automation.resolve
378
388
 
379
389
  | Method | HTTP | Path | Streaming | Pagination |
@@ -439,6 +449,14 @@ Multipart request bodies expand plain objects into bracketed fields (for example
439
449
  | list | GET | `/automation/v1/scripts/{ns}/{name}/dist-tags` | no | no |
440
450
  | set | PUT | `/automation/v1/scripts/{ns}/{name}/dist-tags/{tag}` | no | no |
441
451
 
452
+ ### automation.scripts.vaults
453
+
454
+ | Method | HTTP | Path | Streaming | Pagination |
455
+ |---|---|---|---|---|
456
+ | delete | DELETE | `/automation/v1/scripts/{ns}/{name}/vaults/{alias}` | no | no |
457
+ | list | GET | `/automation/v1/scripts/{ns}/{name}/vaults` | no | no |
458
+ | set | PUT | `/automation/v1/scripts/{ns}/{name}/vaults/{alias}` | no | no |
459
+
442
460
  ### automation.scripts.versions
443
461
 
444
462
  | Method | HTTP | Path | Streaming | Pagination |
@@ -500,6 +518,14 @@ Multipart request bodies expand plain objects into bracketed fields (for example
500
518
  | list | GET | `/automation/v1/workflows/{ns}/{name}/dist-tags` | no | no |
501
519
  | set | PUT | `/automation/v1/workflows/{ns}/{name}/dist-tags/{tag}` | no | no |
502
520
 
521
+ ### automation.workflows.vaults
522
+
523
+ | Method | HTTP | Path | Streaming | Pagination |
524
+ |---|---|---|---|---|
525
+ | delete | DELETE | `/automation/v1/workflows/{ns}/{name}/vaults/{alias}` | no | no |
526
+ | list | GET | `/automation/v1/workflows/{ns}/{name}/vaults` | no | no |
527
+ | set | PUT | `/automation/v1/workflows/{ns}/{name}/vaults/{alias}` | no | no |
528
+
503
529
  ### automation.workflows.versions
504
530
 
505
531
  | Method | HTTP | Path | Streaming | Pagination |
@@ -569,6 +595,210 @@ Multipart request bodies expand plain objects into bracketed fields (for example
569
595
  |---|---|---|---|---|
570
596
  | create | POST | `/browser/v1/sessions/{sessionId}/viewer` | no | no |
571
597
 
598
+ ## canvas
599
+
600
+ ### canvas.canvases
601
+
602
+ | Method | HTTP | Path | Streaming | Pagination |
603
+ |---|---|---|---|---|
604
+ | create | POST | `/canvas/v1/canvases` | no | no |
605
+ | delete | DELETE | `/canvas/v1/canvases/{canvas_id}` | no | no |
606
+ | execute | POST | `/canvas/v1/canvases/{canvas_id}:execute` | no | no |
607
+ | list | GET | `/canvas/v1/canvases` | no | yes |
608
+ | restore | POST | `/canvas/v1/canvases/{canvas_id}:restore` | no | no |
609
+ | retrieve | GET | `/canvas/v1/canvases/{canvas_id}` | no | no |
610
+ | update | PATCH | `/canvas/v1/canvases/{canvas_id}` | no | no |
611
+
612
+ ### canvas.canvases.images
613
+
614
+ | Method | HTTP | Path | Streaming | Pagination |
615
+ |---|---|---|---|---|
616
+ | list | GET | `/canvas/v1/canvases/{canvas_id}/images` | no | no |
617
+
618
+ ### canvas.canvases.nodes
619
+
620
+ | Method | HTTP | Path | Streaming | Pagination |
621
+ |---|---|---|---|---|
622
+ | list | GET | `/canvas/v1/canvases/{canvas_id}/nodes` | no | no |
623
+
624
+ ### canvas.canvases.versions
625
+
626
+ | Method | HTTP | Path | Streaming | Pagination |
627
+ |---|---|---|---|---|
628
+ | list | GET | `/canvas/v1/canvases/{canvas_id}/versions` | no | no |
629
+
630
+ ### canvas.collections
631
+
632
+ | Method | HTTP | Path | Streaming | Pagination |
633
+ |---|---|---|---|---|
634
+ | create | POST | `/canvas/v1/collections` | no | no |
635
+ | delete | DELETE | `/canvas/v1/collections/{collection_id}` | no | no |
636
+ | list | GET | `/canvas/v1/collections` | no | no |
637
+ | retrieve | GET | `/canvas/v1/collections/{collection_id}` | no | no |
638
+ | update | PATCH | `/canvas/v1/collections/{collection_id}` | no | no |
639
+
640
+ ## crm
641
+
642
+ ### crm.associations
643
+
644
+ | Method | HTTP | Path | Streaming | Pagination |
645
+ |---|---|---|---|---|
646
+ | create | PUT | `/crm/v1/objects/{objectType}/{objectId}/associations/{toObjectType}/{toObjectId}` | no | no |
647
+ | createDefault | PUT | `/crm/v1/objects/{objectType}/{objectId}/associations/default/{toObjectType}/{toObjectId}` | no | no |
648
+ | list | GET | `/crm/v1/objects/{objectType}/{objectId}/associations/{toObjectType}` | no | no |
649
+ | remove | DELETE | `/crm/v1/objects/{objectType}/{objectId}/associations/{toObjectType}/{toObjectId}` | no | no |
650
+
651
+ ### crm.changes
652
+
653
+ | Method | HTTP | Path | Streaming | Pagination |
654
+ |---|---|---|---|---|
655
+ | revert | POST | `/crm/v1/changes/{changeSetId}:revert` | no | no |
656
+
657
+ ### crm.layouts
658
+
659
+ | Method | HTTP | Path | Streaming | Pagination |
660
+ |---|---|---|---|---|
661
+ | retrieve | GET | `/crm/v1/layouts/{objectType}` | no | no |
662
+ | update | PUT | `/crm/v1/layouts/{objectType}` | no | no |
663
+
664
+ ### crm.leads
665
+
666
+ | Method | HTTP | Path | Streaming | Pagination |
667
+ |---|---|---|---|---|
668
+ | qualify | POST | `/crm/v1/leads/{leadId}:qualify` | no | no |
669
+
670
+ ### crm.objects
671
+
672
+ | Method | HTTP | Path | Streaming | Pagination |
673
+ |---|---|---|---|---|
674
+ | archive | DELETE | `/crm/v1/objects/{objectType}/{objectId}` | no | no |
675
+ | create | POST | `/crm/v1/objects/{objectType}` | no | no |
676
+ | list | GET | `/crm/v1/objects/{objectType}` | no | no |
677
+ | retrieve | GET | `/crm/v1/objects/{objectType}/{objectId}` | no | no |
678
+ | search | POST | `/crm/v1/objects/{objectType}/search` | no | no |
679
+ | update | PATCH | `/crm/v1/objects/{objectType}/{objectId}` | no | no |
680
+
681
+ ### crm.objects.batch
682
+
683
+ | Method | HTTP | Path | Streaming | Pagination |
684
+ |---|---|---|---|---|
685
+ | archive | POST | `/crm/v1/objects/{objectType}/batch/archive` | no | no |
686
+ | create | POST | `/crm/v1/objects/{objectType}/batch/create` | no | no |
687
+ | read | POST | `/crm/v1/objects/{objectType}/batch/read` | no | no |
688
+ | update | POST | `/crm/v1/objects/{objectType}/batch/update` | no | no |
689
+ | upsert | POST | `/crm/v1/objects/{objectType}/batch/upsert` | no | no |
690
+
691
+ ### crm.pipelines
692
+
693
+ | Method | HTTP | Path | Streaming | Pagination |
694
+ |---|---|---|---|---|
695
+ | archive | DELETE | `/crm/v1/pipelines/{objectType}/{pipelineId}` | no | no |
696
+ | create | POST | `/crm/v1/pipelines/{objectType}` | no | no |
697
+ | list | GET | `/crm/v1/pipelines/{objectType}` | no | no |
698
+ | retrieve | GET | `/crm/v1/pipelines/{objectType}/{pipelineId}` | no | no |
699
+ | update | PATCH | `/crm/v1/pipelines/{objectType}/{pipelineId}` | no | no |
700
+
701
+ ### crm.pipelines.stages
702
+
703
+ | Method | HTTP | Path | Streaming | Pagination |
704
+ |---|---|---|---|---|
705
+ | archive | DELETE | `/crm/v1/pipelines/{objectType}/{pipelineId}/stages/{stageId}` | no | no |
706
+ | create | POST | `/crm/v1/pipelines/{objectType}/{pipelineId}/stages` | no | no |
707
+ | update | PATCH | `/crm/v1/pipelines/{objectType}/{pipelineId}/stages/{stageId}` | no | no |
708
+
709
+ ### crm.properties
710
+
711
+ | Method | HTTP | Path | Streaming | Pagination |
712
+ |---|---|---|---|---|
713
+ | archive | DELETE | `/crm/v1/properties/{objectType}/{propertyName}` | no | no |
714
+ | create | POST | `/crm/v1/properties/{objectType}` | no | no |
715
+ | list | GET | `/crm/v1/properties/{objectType}` | no | no |
716
+ | retrieve | GET | `/crm/v1/properties/{objectType}/{propertyName}` | no | no |
717
+ | update | PATCH | `/crm/v1/properties/{objectType}/{propertyName}` | no | no |
718
+
719
+ ### crm.properties.groups
720
+
721
+ | Method | HTTP | Path | Streaming | Pagination |
722
+ |---|---|---|---|---|
723
+ | create | POST | `/crm/v1/properties/{objectType}/groups` | no | no |
724
+ | list | GET | `/crm/v1/properties/{objectType}/groups` | no | no |
725
+
726
+ ### crm.schemas
727
+
728
+ | Method | HTTP | Path | Streaming | Pagination |
729
+ |---|---|---|---|---|
730
+ | create | POST | `/crm/v1/schemas` | no | no |
731
+ | list | GET | `/crm/v1/schemas` | no | no |
732
+
733
+ ## cut
734
+
735
+ ### cut.exports
736
+
737
+ | Method | HTTP | Path | Streaming | Pagination |
738
+ |---|---|---|---|---|
739
+ | cancel | POST | `/cut/v1/exports/{export_id}:cancel` | no | no |
740
+ | retrieve | GET | `/cut/v1/exports/{export_id}` | no | no |
741
+
742
+ ### cut.projects
743
+
744
+ | Method | HTTP | Path | Streaming | Pagination |
745
+ |---|---|---|---|---|
746
+ | create | POST | `/cut/v1/projects` | no | no |
747
+ | delete | DELETE | `/cut/v1/projects/{project_id}` | no | no |
748
+ | execute | POST | `/cut/v1/projects/{project_id}:execute` | no | no |
749
+ | list | GET | `/cut/v1/projects` | no | no |
750
+ | retrieve | GET | `/cut/v1/projects/{project_id}` | no | no |
751
+ | retrieveState | GET | `/cut/v1/projects/{project_id}/state` | no | no |
752
+ | retrieveTimeline | GET | `/cut/v1/projects/{project_id}/timeline` | no | no |
753
+ | undelete | POST | `/cut/v1/projects/{project_id}:undelete` | no | no |
754
+ | update | PATCH | `/cut/v1/projects/{project_id}` | no | no |
755
+
756
+ ### cut.projects.analysis
757
+
758
+ | Method | HTTP | Path | Streaming | Pagination |
759
+ |---|---|---|---|---|
760
+ | create | POST | `/cut/v1/projects/{project_id}/analysis` | no | no |
761
+
762
+ ### cut.projects.bindings
763
+
764
+ | Method | HTTP | Path | Streaming | Pagination |
765
+ |---|---|---|---|---|
766
+ | create | POST | `/cut/v1/projects/{project_id}/bindings` | no | no |
767
+ | delete | DELETE | `/cut/v1/projects/{project_id}/bindings/{name}` | no | no |
768
+ | list | GET | `/cut/v1/projects/{project_id}/bindings` | no | no |
769
+
770
+ ### cut.projects.exports
771
+
772
+ | Method | HTTP | Path | Streaming | Pagination |
773
+ |---|---|---|---|---|
774
+ | create | POST | `/cut/v1/projects/{project_id}/exports` | no | no |
775
+ | list | GET | `/cut/v1/projects/{project_id}/exports` | no | no |
776
+
777
+ ### cut.projects.frames
778
+
779
+ | Method | HTTP | Path | Streaming | Pagination |
780
+ |---|---|---|---|---|
781
+ | list | GET | `/cut/v1/projects/{project_id}/frames` | no | no |
782
+
783
+ ### cut.projects.media
784
+
785
+ | Method | HTTP | Path | Streaming | Pagination |
786
+ |---|---|---|---|---|
787
+ | import | POST | `/cut/v1/projects/{project_id}/media:import` | no | no |
788
+
789
+ ### cut.projects.versions
790
+
791
+ | Method | HTTP | Path | Streaming | Pagination |
792
+ |---|---|---|---|---|
793
+ | create | POST | `/cut/v1/projects/{project_id}/versions` | no | no |
794
+ | list | GET | `/cut/v1/projects/{project_id}/versions` | no | no |
795
+
796
+ ### cut.versions
797
+
798
+ | Method | HTTP | Path | Streaming | Pagination |
799
+ |---|---|---|---|---|
800
+ | restore | POST | `/cut/v1/versions/{version_id}:restore` | no | no |
801
+
572
802
  ## database
573
803
 
574
804
  ### database.databases
@@ -634,6 +864,18 @@ Multipart request bodies expand plain objects into bracketed fields (for example
634
864
  | retrieve | GET | `/file/v1/files/{file_id}` | no | no |
635
865
  | retrieveContent | GET | `/file/v1/files/{file_id}/content` | no | no |
636
866
 
867
+ ### file.files.contentLinks
868
+
869
+ | Method | HTTP | Path | Streaming | Pagination |
870
+ |---|---|---|---|---|
871
+ | revoke | POST | `/file/v1/files/{file_id}/content_links:revoke` | no | no |
872
+
873
+ ### file.files.contentUrl
874
+
875
+ | Method | HTTP | Path | Streaming | Pagination |
876
+ |---|---|---|---|---|
877
+ | create | POST | `/file/v1/files/{file_id}/content_url` | no | no |
878
+
637
879
  ### file.uploads
638
880
 
639
881
  | Method | HTTP | Path | Streaming | Pagination |
@@ -641,6 +883,7 @@ Multipart request bodies expand plain objects into bracketed fields (for example
641
883
  | cancel | POST | `/file/v1/uploads/{upload_id}/cancel` | no | no |
642
884
  | complete | POST | `/file/v1/uploads/{upload_id}/complete` | no | no |
643
885
  | create | POST | `/file/v1/uploads` | no | no |
886
+ | createSigned | POST | `/file/v1/uploads/signed` | no | no |
644
887
 
645
888
  ### file.uploads.parts
646
889
 
@@ -724,6 +967,12 @@ Multipart request bodies expand plain objects into bracketed fields (for example
724
967
 
725
968
  ## media
726
969
 
970
+ ### media.generation.capabilities
971
+
972
+ | Method | HTTP | Path | Streaming | Pagination |
973
+ |---|---|---|---|---|
974
+ | list | GET | `/media/v1/generation/capabilities` | no | no |
975
+
727
976
  ### media.libraries
728
977
 
729
978
  | Method | HTTP | Path | Streaming | Pagination |
@@ -746,6 +995,12 @@ Multipart request bodies expand plain objects into bracketed fields (for example
746
995
  | retrieve | GET | `/media/v1/libraries/{library_id}/assets/{asset_id}` | no | no |
747
996
  | update | PATCH | `/media/v1/libraries/{library_id}/assets/{asset_id}` | no | no |
748
997
 
998
+ ### media.libraries.assets.frames
999
+
1000
+ | Method | HTTP | Path | Streaming | Pagination |
1001
+ |---|---|---|---|---|
1002
+ | create | POST | `/media/v1/libraries/{library_id}/assets/{asset_id}/frames` | no | no |
1003
+
749
1004
  ### media.libraries.assets.import
750
1005
 
751
1006
  | Method | HTTP | Path | Streaming | Pagination |
@@ -771,6 +1026,12 @@ Multipart request bodies expand plain objects into bracketed fields (for example
771
1026
  | create | POST | `/media/v1/libraries/{library_id}/batches` | no | no |
772
1027
  | retrieve | GET | `/media/v1/libraries/{library_id}/batches/{job_id}` | no | no |
773
1028
 
1029
+ ### media.libraries.deliveryTokens
1030
+
1031
+ | Method | HTTP | Path | Streaming | Pagination |
1032
+ |---|---|---|---|---|
1033
+ | create | POST | `/media/v1/libraries/{library_id}/delivery_tokens` | no | no |
1034
+
774
1035
  ### media.libraries.events
775
1036
 
776
1037
  | Method | HTTP | Path | Streaming | Pagination |
@@ -783,12 +1044,26 @@ Multipart request bodies expand plain objects into bracketed fields (for example
783
1044
  |---|---|---|---|---|
784
1045
  | list | GET | `/media/v1/libraries/{library_id}/folders` | no | no |
785
1046
 
1047
+ ### media.libraries.generations
1048
+
1049
+ | Method | HTTP | Path | Streaming | Pagination |
1050
+ |---|---|---|---|---|
1051
+ | create | POST | `/media/v1/libraries/{library_id}/generations` | no | no |
1052
+
786
1053
  ### media.libraries.jobs
787
1054
 
788
1055
  | Method | HTTP | Path | Streaming | Pagination |
789
1056
  |---|---|---|---|---|
1057
+ | cancel | POST | `/media/v1/libraries/{library_id}/jobs/{job_id}/cancel` | no | no |
1058
+ | list | GET | `/media/v1/libraries/{library_id}/jobs` | no | yes |
790
1059
  | retrieve | GET | `/media/v1/libraries/{library_id}/jobs/{job_id}` | no | no |
791
1060
 
1061
+ ### media.libraries.jobs.outputs.save
1062
+
1063
+ | Method | HTTP | Path | Streaming | Pagination |
1064
+ |---|---|---|---|---|
1065
+ | create | POST | `/media/v1/libraries/{library_id}/jobs/{job_id}/outputs/{index}/save` | no | no |
1066
+
792
1067
  ### media.libraries.purge
793
1068
 
794
1069
  | Method | HTTP | Path | Streaming | Pagination |
@@ -819,8 +1094,22 @@ Multipart request bodies expand plain objects into bracketed fields (for example
819
1094
  |---|---|---|---|---|
820
1095
  | create | POST | `/media/v1/libraries/{library_id}/search/visual` | no | no |
821
1096
 
1097
+ ### media.libraries.understandings
1098
+
1099
+ | Method | HTTP | Path | Streaming | Pagination |
1100
+ |---|---|---|---|---|
1101
+ | list | GET | `/media/v1/libraries/{library_id}/understandings` | no | yes |
1102
+ | retrieveFailureSummary | GET | `/media/v1/libraries/{library_id}/understandings/failure_summary` | no | no |
1103
+
822
1104
  ## meta
823
1105
 
1106
+ ### meta.docs
1107
+
1108
+ | Method | HTTP | Path | Streaming | Pagination |
1109
+ |---|---|---|---|---|
1110
+ | retrieve | GET | `/meta/v1/docs/{path}` | no | no |
1111
+ | search | GET | `/meta/v1/docs/search` | no | no |
1112
+
824
1113
  ### meta.health
825
1114
 
826
1115
  | Method | HTTP | Path | Streaming | Pagination |
@@ -944,6 +1233,12 @@ Multipart request bodies expand plain objects into bracketed fields (for example
944
1233
  |---|---|---|---|---|
945
1234
  | create | POST | `/model/v1/responses/input_tokens` | no | no |
946
1235
 
1236
+ ### model.systemone
1237
+
1238
+ | Method | HTTP | Path | Streaming | Pagination |
1239
+ |---|---|---|---|---|
1240
+ | create | POST | `/model/v1/systemone` | no | no |
1241
+
947
1242
  ### model.videos
948
1243
 
949
1244
  | Method | HTTP | Path | Streaming | Pagination |
@@ -997,6 +1292,12 @@ Multipart request bodies expand plain objects into bracketed fields (for example
997
1292
  | create | POST | `/organization/v1/feedback/{id}/messages` | no | no |
998
1293
  | list | GET | `/organization/v1/feedback/{id}/messages` | no | no |
999
1294
 
1295
+ ### organization.members
1296
+
1297
+ | Method | HTTP | Path | Streaming | Pagination |
1298
+ |---|---|---|---|---|
1299
+ | list | GET | `/organization/v1/members` | no | no |
1300
+
1000
1301
  ### organization.usage
1001
1302
 
1002
1303
  | Method | HTTP | Path | Streaming | Pagination |
@@ -1079,7 +1380,36 @@ Multipart request bodies expand plain objects into bracketed fields (for example
1079
1380
 
1080
1381
  | Method | HTTP | Path | Streaming | Pagination |
1081
1382
  |---|---|---|---|---|
1383
+ | create | POST | `/sandbox/v1/templates` | no | no |
1384
+ | delete | DELETE | `/sandbox/v1/templates/{templateID}` | no | no |
1082
1385
  | list | GET | `/sandbox/v1/templates` | no | no |
1386
+ | retrieve | GET | `/sandbox/v1/templates/{templateID}` | no | no |
1387
+
1388
+ ### sandbox.templates.aliases
1389
+
1390
+ | Method | HTTP | Path | Streaming | Pagination |
1391
+ |---|---|---|---|---|
1392
+ | retrieve | GET | `/sandbox/v1/templates/aliases/{alias}` | no | no |
1393
+
1394
+ ### sandbox.templates.builds
1395
+
1396
+ | Method | HTTP | Path | Streaming | Pagination |
1397
+ |---|---|---|---|---|
1398
+ | update | POST | `/sandbox/v1/templates/{templateID}/builds/{buildID}` | no | no |
1399
+
1400
+ ### sandbox.templates.builds.status
1401
+
1402
+ | Method | HTTP | Path | Streaming | Pagination |
1403
+ |---|---|---|---|---|
1404
+ | list | GET | `/sandbox/v1/templates/{templateID}/builds/{buildID}/status` | no | no |
1405
+
1406
+ ### sandbox.templates.tags
1407
+
1408
+ | Method | HTTP | Path | Streaming | Pagination |
1409
+ |---|---|---|---|---|
1410
+ | create | POST | `/sandbox/v1/templates/tags` | no | no |
1411
+ | delete | DELETE | `/sandbox/v1/templates/tags` | no | no |
1412
+ | list | GET | `/sandbox/v1/templates/{templateID}/tags` | no | no |
1083
1413
 
1084
1414
  ### sandbox.volumes
1085
1415
 
@@ -1329,10 +1659,33 @@ Multipart request bodies expand plain objects into bracketed fields (for example
1329
1659
  | agent.sessions.events.send | Events submit session input; the product verb is send rather than create. |
1330
1660
  | automation.hooks.send | Delivers a payload to a trigger's secret webhook URL; it sends an event rather than updating a hook resource. |
1331
1661
  | automation.scripts.distTags.set | A dist-tag assigns a version to a name; use npm vocabulary set rather than update. |
1662
+ | automation.scripts.vaults.set | Assign a whole vault to a definition alias, independently of published versions. |
1332
1663
  | automation.scripts.versions.create / publish | Creating a script version publishes it; publish is a product alias of versions.create. |
1333
1664
  | automation.workflows.distTags.set | Workflow dist-tags use the same npm-style assignment vocabulary as script dist-tags. |
1665
+ | automation.workflows.vaults.set | Assign a whole vault to a definition alias, independently of published versions. |
1334
1666
  | automation.workflows.versions.create / publish | Creating a workflow version publishes it; publish is a product alias of versions.create. |
1667
+ | crm.objects.list | CRM objectType selects a collection, not an entity; preserve list/create separately from retrieve/update on an identified resource. |
1668
+ | crm.objects.create | CRM objectType selects a collection, not an entity; preserve list/create separately from retrieve/update on an identified resource. |
1669
+ | crm.objects.batch.create | The terminal batch segment is the requested operation, not another collection; retain its read/create/update/upsert/archive verb. |
1670
+ | crm.objects.batch.read | The terminal batch segment is the requested operation, not another collection; retain its read/create/update/upsert/archive verb. |
1671
+ | crm.objects.batch.update | The terminal batch segment is the requested operation, not another collection; retain its read/create/update/upsert/archive verb. |
1672
+ | crm.objects.batch.upsert | The terminal batch segment is the requested operation, not another collection; retain its read/create/update/upsert/archive verb. |
1673
+ | crm.objects.search | The terminal search segment queries records without creating a nested search resource. |
1674
+ | crm.objects.archive | CRM DELETE archives the resource rather than permanently deleting it; expose the archive product verb. |
1675
+ | crm.associations.createDefault | CRM relationships live below objects in the URL but form the associations SDK resource; distinguish labelled and default creation from record updates. |
1676
+ | crm.associations.list | CRM relationships live below objects in the URL but form the associations SDK resource; distinguish labelled and default creation from record updates. |
1677
+ | crm.associations.remove | CRM relationships live below objects in the URL but form the associations SDK resource; distinguish labelled and default creation from record updates. |
1678
+ | crm.associations.create | CRM relationships live below objects in the URL but form the associations SDK resource; distinguish labelled and default creation from record updates. |
1679
+ | crm.pipelines.list | CRM objectType selects a collection, not an entity; preserve list/create separately from retrieve/update on an identified resource. |
1680
+ | crm.pipelines.create | CRM objectType selects a collection, not an entity; preserve list/create separately from retrieve/update on an identified resource. |
1681
+ | crm.pipelines.archive | CRM DELETE archives the resource rather than permanently deleting it; expose the archive product verb. |
1682
+ | crm.pipelines.stages.archive | CRM DELETE archives the resource rather than permanently deleting it; expose the archive product verb. |
1683
+ | crm.properties.list | CRM objectType selects a collection, not an entity; preserve list/create separately from retrieve/update on an identified resource. |
1684
+ | crm.properties.create | CRM objectType selects a collection, not an entity; preserve list/create separately from retrieve/update on an identified resource. |
1685
+ | crm.properties.archive | CRM DELETE archives the resource rather than permanently deleting it; expose the archive product verb. |
1335
1686
  | database.databases.rest.create | The final parameter identifies a table collection; POST inserts rows rather than updating the table. |
1687
+ | file.uploads.createSigned | Signed upload creation returns a one-time local PUT URL; ADR-039 names this operation uploads.createSigned. |
1688
+ | meta.docs.search | Documentation keyword search is an operation on docs, not a nested collection. |
1336
1689
  | sandbox.sandboxes.commands.run | Sandbox data operations use the E2B SDK verb while preserving URL resource nesting. |
1337
1690
  | sandbox.sandboxes.files.remove | Sandbox data operations use the E2B SDK verb while preserving URL resource nesting. |
1338
1691
  | sandbox.sandboxes.files.read | Sandbox data operations use the E2B SDK verb while preserving URL resource nesting. |
package/README.md CHANGED
@@ -55,7 +55,7 @@ server. You need a Praxis account; sign up at [deepraxis.com](https://deepraxis.
55
55
  const praxis = new Praxis({
56
56
  apiKey: process.env.PRAXIS_API_KEY!,
57
57
  baseUrl: 'https://api.deepraxis.com', // default
58
- timeoutMs: 60_000, // default; the whole call, body included
58
+ timeoutMs: 600_000, // default (10 minutes, as the OpenAI and Anthropic SDKs); the whole call, body included
59
59
  maxRetries: 2, // default
60
60
  // fetch: customFetch, // bring your own fetch
61
61
  });
@@ -23,6 +23,13 @@ export declare function createAutomationClient(options: PraxisOptions): {
23
23
  hooks: {
24
24
  send: (options: import("./core/transport.js").CallOptions<import("./generated/types.gen.js").AutomationHooksReceiveData>) => Promise<import("./generated/types.gen.js").AutomationFiring>;
25
25
  };
26
+ humanTasks: {
27
+ cancel: (options: import("./core/transport.js").CallOptions<import("./generated/types.gen.js").AutomationHumanTasksCancelData>) => Promise<import("./generated/types.gen.js").AutomationHumanTask>;
28
+ delegate: (options: import("./core/transport.js").CallOptions<import("./generated/types.gen.js").AutomationHumanTasksDelegateData>) => Promise<import("./generated/types.gen.js").AutomationHumanTask>;
29
+ list: (options?: import("./core/transport.js").CallOptions<import("./generated/types.gen.js").AutomationHumanTasksListData> | undefined) => Promise<import("./automation.js").Page<import("./generated/types.gen.js").AutomationHumanTask>>;
30
+ respond: (options: import("./core/transport.js").CallOptions<import("./generated/types.gen.js").AutomationHumanTasksRespondData>) => Promise<import("./generated/types.gen.js").AutomationHumanTask>;
31
+ retrieve: (options: import("./core/transport.js").CallOptions<import("./generated/types.gen.js").AutomationHumanTasksGetData>) => Promise<import("./generated/types.gen.js").AutomationHumanTask>;
32
+ };
26
33
  resolve: {
27
34
  retrieve: (options: import("./core/transport.js").CallOptions<import("./generated/types.gen.js").AutomationResolveResolveData>) => Promise<import("./generated/types.gen.js").AutomationResolveResult>;
28
35
  };
@@ -89,6 +96,33 @@ export declare function createAutomationClient(options: PraxisOptions): {
89
96
  restore: (options: import("./core/transport.js").CallOptions<import("./generated/types.gen.js").AutomationScriptsRestoreData>) => Promise<import("./generated/types.gen.js").AutomationDefinition>;
90
97
  retrieve: (options: import("./core/transport.js").CallOptions<import("./generated/types.gen.js").AutomationScriptsGetData>) => Promise<import("./generated/types.gen.js").AutomationDefinitionDetail>;
91
98
  update: (options: import("./core/transport.js").CallOptions<import("./generated/types.gen.js").AutomationScriptsPatchData>) => Promise<import("./generated/types.gen.js").AutomationDefinitionDetail>;
99
+ vaults: {
100
+ delete: (options: import("./core/transport.js").CallOptions<import("./generated/types.gen.js").AutomationScriptsVaultsDeleteData>) => Promise<void>;
101
+ list: (options: import("./core/transport.js").CallOptions<import("./generated/types.gen.js").AutomationScriptsVaultsListData>) => Promise<{
102
+ data: Array<{
103
+ alias: string;
104
+ vault: {
105
+ id: string;
106
+ name: string;
107
+ };
108
+ secrets: Array<{
109
+ name: string;
110
+ }>;
111
+ secrets_unavailable?: true;
112
+ }>;
113
+ }>;
114
+ set: (options: import("./core/transport.js").CallOptions<import("./generated/types.gen.js").AutomationScriptsVaultsSetData>) => Promise<{
115
+ alias: string;
116
+ vault: {
117
+ id: string;
118
+ name: string;
119
+ };
120
+ secrets: Array<{
121
+ name: string;
122
+ }>;
123
+ secrets_unavailable?: true;
124
+ }>;
125
+ };
92
126
  versions: {
93
127
  create: (options: import("./core/transport.js").CallOptions<import("./generated/types.gen.js").AutomationScriptsPublishData>) => Promise<import("./generated/types.gen.js").AutomationVersion>;
94
128
  deprecate: (options: import("./core/transport.js").CallOptions<import("./generated/types.gen.js").AutomationScriptsDeprecateData>) => Promise<import("./generated/types.gen.js").AutomationVersion>;
@@ -136,6 +170,33 @@ export declare function createAutomationClient(options: PraxisOptions): {
136
170
  restore: (options: import("./core/transport.js").CallOptions<import("./generated/types.gen.js").AutomationWorkflowsRestoreData>) => Promise<import("./generated/types.gen.js").AutomationDefinition>;
137
171
  retrieve: (options: import("./core/transport.js").CallOptions<import("./generated/types.gen.js").AutomationWorkflowsGetData>) => Promise<import("./generated/types.gen.js").AutomationDefinitionDetail>;
138
172
  update: (options: import("./core/transport.js").CallOptions<import("./generated/types.gen.js").AutomationWorkflowsPatchData>) => Promise<import("./generated/types.gen.js").AutomationDefinitionDetail>;
173
+ vaults: {
174
+ delete: (options: import("./core/transport.js").CallOptions<import("./generated/types.gen.js").AutomationWorkflowsVaultsDeleteData>) => Promise<void>;
175
+ list: (options: import("./core/transport.js").CallOptions<import("./generated/types.gen.js").AutomationWorkflowsVaultsListData>) => Promise<{
176
+ data: Array<{
177
+ alias: string;
178
+ vault: {
179
+ id: string;
180
+ name: string;
181
+ };
182
+ secrets: Array<{
183
+ name: string;
184
+ }>;
185
+ secrets_unavailable?: true;
186
+ }>;
187
+ }>;
188
+ set: (options: import("./core/transport.js").CallOptions<import("./generated/types.gen.js").AutomationWorkflowsVaultsSetData>) => Promise<{
189
+ alias: string;
190
+ vault: {
191
+ id: string;
192
+ name: string;
193
+ };
194
+ secrets: Array<{
195
+ name: string;
196
+ }>;
197
+ secrets_unavailable?: true;
198
+ }>;
199
+ };
139
200
  versions: {
140
201
  create: (options: import("./core/transport.js").CallOptions<import("./generated/types.gen.js").AutomationWorkflowsPublishData>) => Promise<import("./generated/types.gen.js").AutomationVersion>;
141
202
  deprecate: (options: import("./core/transport.js").CallOptions<import("./generated/types.gen.js").AutomationWorkflowsDeprecateData>) => Promise<import("./generated/types.gen.js").AutomationVersion>;
@@ -1,3 +1,4 @@
1
+ import { type SandboxTemplateBuildInput, type SandboxTemplateBuildResult } from "../helpers/sandbox-templates.js";
1
2
  import { type UploadFileOptions, type UploadedFile } from '../helpers/file-upload.js';
2
3
  import { resourceFactories } from '../resources.generated.js';
3
4
  import { type PraxisOptions } from './transport.js';
@@ -7,7 +8,12 @@ import { type CountInput, type CountResult } from '../helpers/database-count.js'
7
8
  type Resources = {
8
9
  readonly [K in keyof typeof resourceFactories]: ReturnType<(typeof resourceFactories)[K]>;
9
10
  };
10
- export interface Praxis extends Omit<Resources, 'application' | 'browser' | 'database' | 'file'> {
11
+ export interface Praxis extends Omit<Resources, 'application' | 'browser' | 'database' | 'file' | 'sandbox'> {
12
+ readonly sandbox: Omit<Resources['sandbox'], 'templates'> & {
13
+ templates: Resources['sandbox']['templates'] & {
14
+ build(input: SandboxTemplateBuildInput): Promise<SandboxTemplateBuildResult>;
15
+ };
16
+ };
11
17
  readonly browser: Resources['browser'] & {
12
18
  connect(options?: BrowserConnectOptions): Promise<PraxisBrowser>;
13
19
  };
@@ -1,3 +1,4 @@
1
+ import { buildSandboxTemplate } from "../helpers/sandbox-templates.js";
1
2
  import { uploadFile } from "../helpers/file-upload.js";
2
3
  import { resourceFactories } from "../resources.generated.js";
3
4
  import { Transport } from "./transport.js";
@@ -10,6 +11,8 @@ export class Praxis {
10
11
  for (const [name, create] of Object.entries(resourceFactories)) {
11
12
  const resource = create(transport);
12
13
  // Assemble before sealing the resource property; never replace a readonly SDK resource.
14
+ if (name === 'sandbox')
15
+ Object.assign(resource.templates, { build: (input) => buildSandboxTemplate(this, input) });
13
16
  if (name === 'file')
14
17
  Object.assign(resource, { uploadFile: (file, options) => uploadFile(this, file, options) });
15
18
  if (name === 'database')
@@ -25,6 +25,15 @@ type InternalOptions = RequestOptions & {
25
25
  query?: unknown;
26
26
  lastEventId?: string;
27
27
  };
28
+ /** Margin over a server-side execution deadline: the response still has to travel back after it. */
29
+ export declare const SERVER_DEADLINE_MARGIN_MS = 30000;
30
+ /**
31
+ * A request body that carries its own execution deadline (`timeoutMs`, as in sandbox commands.run) is
32
+ * waited for at least that long plus a margin, so the client never gives up before the server answers.
33
+ */
34
+ export declare function serverDeadlineMs(options: {
35
+ body?: unknown;
36
+ }): number;
28
37
  export declare class Transport {
29
38
  private readonly config;
30
39
  constructor(options: PraxisOptions);
@@ -32,10 +32,21 @@ function assertKnownOptions(options) {
32
32
  detail: `Unrecognised option ${stray.length > 1 ? 'keys' : 'key'} ${names}. Request parameters are not flat: put each under \`query\` (GET/DELETE: filters, pagination), \`path\` (URL segments) or \`body\` (POST/PATCH/PUT payload), e.g. call({ query: { ${stray[0]} } }) or call({ body: { ${stray[0]} } }). Common top-level keys: path, query, body, headers, signal, timeoutMs, maxRetries.`,
33
33
  });
34
34
  }
35
+ /** Margin over a server-side execution deadline: the response still has to travel back after it. */
36
+ export const SERVER_DEADLINE_MARGIN_MS = 30_000;
37
+ /**
38
+ * A request body that carries its own execution deadline (`timeoutMs`, as in sandbox commands.run) is
39
+ * waited for at least that long plus a margin, so the client never gives up before the server answers.
40
+ */
41
+ export function serverDeadlineMs(options) {
42
+ const body = options.body;
43
+ const deadline = body && typeof body === 'object' ? body.timeoutMs : undefined;
44
+ return typeof deadline === 'number' && Number.isFinite(deadline) && deadline > 0 ? deadline + SERVER_DEADLINE_MARGIN_MS : 0;
45
+ }
35
46
  export class Transport {
36
47
  config;
37
48
  constructor(options) {
38
- this.config = { timeoutMs: 60_000, maxRetries: 2, fetch: globalThis.fetch, ...options };
49
+ this.config = { timeoutMs: 600_000, maxRetries: 2, fetch: globalThis.fetch, ...options };
39
50
  this.validate(this.config.timeoutMs, this.config.maxRetries);
40
51
  }
41
52
  validate(timeout, retries) {
@@ -46,7 +57,7 @@ export class Transport {
46
57
  }
47
58
  scope(options, streaming) {
48
59
  assertKnownOptions(options);
49
- const timeoutMs = options.timeoutMs ?? this.config.timeoutMs;
60
+ const timeoutMs = options.timeoutMs ?? Math.max(this.config.timeoutMs, serverDeadlineMs(options));
50
61
  const maxRetries = options.maxRetries ?? this.config.maxRetries;
51
62
  this.validate(timeoutMs, maxRetries);
52
63
  const controller = new AbortController();