pgbeam 0.3.12 → 0.3.14

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.
@@ -182,6 +182,33 @@ Object.defineProperty(exports, '__esModule', { value: true });
182
182
  "responseType": "{ connection_string: string; credential: { auth_method?: \"cleartext\" | \"scram-sha-256\"; created_at: string; expires_at?: string; id: string; last_used_at?: string; name: string; pg_username: string; policy_profile_id: string; principal_type?: \"agent\" | \"human\"; project_id: string; status: \"active\" | \"disabled\" | \"revoked\"; updated_at: string }; mcp_token: string; mcp_url: string }",
183
183
  "responseStatus": "200"
184
184
  },
185
+ "recommendAgentPolicy": {
186
+ "operationId": "recommendAgentPolicy",
187
+ "method": "POST",
188
+ "path": "/v1/projects/{project_id}/agents/{agent_id}/policy-recommendation",
189
+ "summary": "Recommend a least-privilege policy from recorded traffic",
190
+ "description": "Derives the tightest policy that would still pass every statement this agent credential has legitimately run, using its recorded audit history over a lookback window (default 30 days). The candidate's table allowlist is the union of relations actually referenced, its statement-kind allow set is the observed set, it downgrades to read-only when no writes were seen, and its max_rows ceiling comes from an observed high-percentile row count. The candidate is proven safe by replaying it through the data plane's own policy engine against the same history: a good recommendation has replay.summary.newly_blocked == 0. This endpoint is advisory only. It reads the audit log, never connects to the upstream database, and never creates, updates, or mutates any policy or credential; the operator loads the candidate into the editor and saves it themselves.",
191
+ "parameters": [
192
+ {
193
+ "name": "project_id",
194
+ "in": "path",
195
+ "required": true,
196
+ "type": "string",
197
+ "description": "Unique project identifier (prefixed, e.g. prj_xxx)."
198
+ },
199
+ {
200
+ "name": "agent_id",
201
+ "in": "path",
202
+ "required": true,
203
+ "type": "string",
204
+ "description": "Unique agent credential identifier (prefixed, e.g. agt_xxx)."
205
+ }
206
+ ],
207
+ "requestBodyType": "{ limit?: number; lookback_days?: number }",
208
+ "requestBodyRequired": false,
209
+ "responseType": "{ candidate?: { access_mode?: \"read_only\" | \"read_write\"; approval_auto_max_rows?: number; approval_mode?: \"off\" | \"writes\" | \"ddl\" | \"all\"; approval_timeout_seconds?: number; budget_queries_per_day?: number; budget_queries_per_hour?: number; egress_bytes_per_day?: number; masking_rules?: ({ column: string; kind: \"redact\" | \"null\" | \"hash\"; table: string })[]; max_affected_rows?: number; max_rows?: number; migration_safety?: \"off\" | \"warn\" | \"block\"; name: string; row_filters?: ({ predicate: string; table: string })[]; statement_rules?: { allow?: string[]; deny?: string[] }; statement_timeout_ms?: number; table_allowlist?: string[]; table_denylist?: string[]; write_mode?: \"normal\" | \"rollback\" | \"sandbox\" }; message?: string; notes?: string[]; observed_entries: number; observed_queries: number; replay?: { items: ({ change: \"newly_blocked\" | \"newly_allowed\" | \"still_allowed\" | \"still_blocked\"; first_seen: string; last_seen: string; occurrences: number; query_hash: string; recorded_event: string; recorded_rule?: string; result: { hint?: string; masked_columns?: ({ column: string; kind: \"redact\" | \"null\" | \"hash\" })[]; notes?: string[]; reason: string; rewritten_sql?: string; row_filter_predicate?: string; rule: string; verdict: \"allow\" | \"block\" | \"mask\" | \"row-filter\" }; sql: string; statement_kind?: string })[]; summary: { distinct_queries: number; entries_scanned: number; evaluated: number; newly_allowed: number; newly_blocked: number; skipped_unparseable: number; truncated: boolean; would_allow: number; would_block: number; would_mask: number; would_row_filter: number } }; sufficient_history: boolean; window_end: string; window_start: string }",
210
+ "responseStatus": "200"
211
+ },
185
212
  "listAnomalyAlerts": {
186
213
  "operationId": "listAnomalyAlerts",
187
214
  "method": "GET",
@@ -642,61 +669,729 @@ Object.defineProperty(exports, '__esModule', { value: true });
642
669
  "in": "query",
643
670
  "required": false,
644
671
  "type": "string",
645
- "description": "Opaque token for cursor-based pagination."
672
+ "description": "Opaque token for cursor-based pagination."
673
+ }
674
+ ],
675
+ "requestBodyType": "",
676
+ "requestBodyRequired": false,
677
+ "responseType": "{ branches: ({ branch_name: string; created_at: string; credential_id?: string; database_id: string; discarded_at?: string; error?: string; expires_at?: string; id: string; session_id?: string; status: \"pending\" | \"ready\" | \"error\" | \"discarded\" })[]; next_page_token?: string }",
678
+ "responseStatus": "200"
679
+ },
680
+ "discardDatabaseBranch": {
681
+ "operationId": "discardDatabaseBranch",
682
+ "method": "DELETE",
683
+ "path": "/v1/projects/{project_id}/branches/{branch_id}",
684
+ "summary": "Discard a sandbox branch",
685
+ "description": "Marks an ephemeral sandbox branch as discarded for teardown.",
686
+ "parameters": [
687
+ {
688
+ "name": "project_id",
689
+ "in": "path",
690
+ "required": true,
691
+ "type": "string",
692
+ "description": "Unique project identifier (prefixed, e.g. prj_xxx)."
693
+ },
694
+ {
695
+ "name": "branch_id",
696
+ "in": "path",
697
+ "required": true,
698
+ "type": "string",
699
+ "description": "Unique sandbox branch identifier (prefixed, e.g. brn_xxx)."
700
+ }
701
+ ],
702
+ "requestBodyType": "",
703
+ "requestBodyRequired": false,
704
+ "responseType": "",
705
+ "responseStatus": "204"
706
+ },
707
+ "listCacheRules": {
708
+ "operationId": "listCacheRules",
709
+ "method": "GET",
710
+ "path": "/v1/projects/{project_id}/databases/{database_id}/cache-rules",
711
+ "summary": "List cache rules",
712
+ "description": "Returns the cache rules for a database, showing all observed query\nshapes with their stats and cache recommendations.\n",
713
+ "parameters": [
714
+ {
715
+ "name": "project_id",
716
+ "in": "path",
717
+ "required": true,
718
+ "type": "string",
719
+ "description": "Unique project identifier (prefixed, e.g. prj_xxx)."
720
+ },
721
+ {
722
+ "name": "database_id",
723
+ "in": "path",
724
+ "required": true,
725
+ "type": "string",
726
+ "description": "Unique database identifier (prefixed, e.g. db_xxx)."
727
+ },
728
+ {
729
+ "name": "page_size",
730
+ "in": "query",
731
+ "required": false,
732
+ "type": "number",
733
+ "description": "Maximum number of items to return (1-100, default 20)."
734
+ },
735
+ {
736
+ "name": "page_token",
737
+ "in": "query",
738
+ "required": false,
739
+ "type": "string",
740
+ "description": "Opaque token for cursor-based pagination."
741
+ }
742
+ ],
743
+ "requestBodyType": "",
744
+ "requestBodyRequired": false,
745
+ "responseType": "{ entries: ({ avg_latency_ms: number; avg_response_bytes: number; cache_enabled: boolean; cache_swr_seconds?: number; cache_ttl_seconds?: number; call_count: number; first_seen_at: string; last_seen_at: string; normalized_sql: string; p95_latency_ms: number; query_hash: string; query_type: \"read\" | \"write\" | \"other\"; recommendation: \"great\" | \"good\" | \"fair\" | \"poor\"; stability_rate: number })[]; next_page_token?: string }",
746
+ "responseStatus": "200"
747
+ },
748
+ "updateCacheRule": {
749
+ "operationId": "updateCacheRule",
750
+ "method": "PUT",
751
+ "path": "/v1/projects/{project_id}/databases/{database_id}/cache-rules/{query_hash}",
752
+ "summary": "Update cache rule",
753
+ "description": "Enable or disable caching for a specific query shape, with optional\nTTL and SWR overrides. Requires the query to exist in the cache rules.\n",
754
+ "parameters": [
755
+ {
756
+ "name": "project_id",
757
+ "in": "path",
758
+ "required": true,
759
+ "type": "string",
760
+ "description": "Unique project identifier (prefixed, e.g. prj_xxx)."
761
+ },
762
+ {
763
+ "name": "database_id",
764
+ "in": "path",
765
+ "required": true,
766
+ "type": "string",
767
+ "description": "Unique database identifier (prefixed, e.g. db_xxx)."
768
+ },
769
+ {
770
+ "name": "query_hash",
771
+ "in": "path",
772
+ "required": true,
773
+ "type": "string",
774
+ "description": "xxhash64 hex of the normalized SQL."
775
+ }
776
+ ],
777
+ "requestBodyType": "{ cache_enabled: boolean; cache_swr_seconds?: number; cache_ttl_seconds?: number }",
778
+ "requestBodyRequired": true,
779
+ "responseType": "{ entry: { avg_latency_ms: number; avg_response_bytes: number; cache_enabled: boolean; cache_swr_seconds?: number; cache_ttl_seconds?: number; call_count: number; first_seen_at: string; last_seen_at: string; normalized_sql: string; p95_latency_ms: number; query_hash: string; query_type: \"read\" | \"write\" | \"other\"; recommendation: \"great\" | \"good\" | \"fair\" | \"poor\"; stability_rate: number } }",
780
+ "responseStatus": "200"
781
+ },
782
+ "listCrmCompanies": {
783
+ "operationId": "listCrmCompanies",
784
+ "method": "GET",
785
+ "path": "/v1/organizations/{org_id}/crm/companies",
786
+ "summary": "List companies",
787
+ "description": "List companies.",
788
+ "parameters": [
789
+ {
790
+ "name": "org_id",
791
+ "in": "path",
792
+ "required": true,
793
+ "type": "string",
794
+ "description": "Unique organization identifier."
795
+ },
796
+ {
797
+ "name": "page_size",
798
+ "in": "query",
799
+ "required": false,
800
+ "type": "number",
801
+ "description": "Maximum number of items to return (1-100, default 20)."
802
+ },
803
+ {
804
+ "name": "page_token",
805
+ "in": "query",
806
+ "required": false,
807
+ "type": "string",
808
+ "description": "Opaque token for cursor-based pagination."
809
+ }
810
+ ],
811
+ "requestBodyType": "",
812
+ "requestBodyRequired": false,
813
+ "responseType": "{ companies: ({ created_at: string; description: string; domain?: string; id: string; industry?: string; location?: string; logo_url?: string; name: string; org_id: string; updated_at: string })[]; next_page_token?: string }",
814
+ "responseStatus": "200"
815
+ },
816
+ "createCrmCompany": {
817
+ "operationId": "createCrmCompany",
818
+ "method": "POST",
819
+ "path": "/v1/organizations/{org_id}/crm/companies",
820
+ "summary": "Create a company",
821
+ "description": "Create a company.",
822
+ "parameters": [
823
+ {
824
+ "name": "org_id",
825
+ "in": "path",
826
+ "required": true,
827
+ "type": "string",
828
+ "description": "Unique organization identifier."
829
+ }
830
+ ],
831
+ "requestBodyType": "{ description?: string; domain?: string; industry?: string; location?: string; logo_url?: string; name: string }",
832
+ "requestBodyRequired": true,
833
+ "responseType": "{ created_at: string; description: string; domain?: string; id: string; industry?: string; location?: string; logo_url?: string; name: string; org_id: string; updated_at: string }",
834
+ "responseStatus": "201"
835
+ },
836
+ "getCrmCompany": {
837
+ "operationId": "getCrmCompany",
838
+ "method": "GET",
839
+ "path": "/v1/organizations/{org_id}/crm/companies/{company_id}",
840
+ "summary": "Get a company",
841
+ "description": "Get a company.",
842
+ "parameters": [
843
+ {
844
+ "name": "org_id",
845
+ "in": "path",
846
+ "required": true,
847
+ "type": "string",
848
+ "description": "Unique organization identifier."
849
+ },
850
+ {
851
+ "name": "company_id",
852
+ "in": "path",
853
+ "required": true,
854
+ "type": "string",
855
+ "description": "Unique CRM company identifier (prefixed, e.g. cmp_xxx)."
856
+ }
857
+ ],
858
+ "requestBodyType": "",
859
+ "requestBodyRequired": false,
860
+ "responseType": "{ created_at: string; description: string; domain?: string; id: string; industry?: string; location?: string; logo_url?: string; name: string; org_id: string; updated_at: string }",
861
+ "responseStatus": "200"
862
+ },
863
+ "updateCrmCompany": {
864
+ "operationId": "updateCrmCompany",
865
+ "method": "PUT",
866
+ "path": "/v1/organizations/{org_id}/crm/companies/{company_id}",
867
+ "summary": "Update a company",
868
+ "description": "Update a company.",
869
+ "parameters": [
870
+ {
871
+ "name": "org_id",
872
+ "in": "path",
873
+ "required": true,
874
+ "type": "string",
875
+ "description": "Unique organization identifier."
876
+ },
877
+ {
878
+ "name": "company_id",
879
+ "in": "path",
880
+ "required": true,
881
+ "type": "string",
882
+ "description": "Unique CRM company identifier (prefixed, e.g. cmp_xxx)."
883
+ }
884
+ ],
885
+ "requestBodyType": "{ description?: string; domain?: string; industry?: string; location?: string; logo_url?: string; name: string }",
886
+ "requestBodyRequired": true,
887
+ "responseType": "{ created_at: string; description: string; domain?: string; id: string; industry?: string; location?: string; logo_url?: string; name: string; org_id: string; updated_at: string }",
888
+ "responseStatus": "200"
889
+ },
890
+ "deleteCrmCompany": {
891
+ "operationId": "deleteCrmCompany",
892
+ "method": "DELETE",
893
+ "path": "/v1/organizations/{org_id}/crm/companies/{company_id}",
894
+ "summary": "Delete a company",
895
+ "description": "Delete a company.",
896
+ "parameters": [
897
+ {
898
+ "name": "org_id",
899
+ "in": "path",
900
+ "required": true,
901
+ "type": "string",
902
+ "description": "Unique organization identifier."
903
+ },
904
+ {
905
+ "name": "company_id",
906
+ "in": "path",
907
+ "required": true,
908
+ "type": "string",
909
+ "description": "Unique CRM company identifier (prefixed, e.g. cmp_xxx)."
910
+ }
911
+ ],
912
+ "requestBodyType": "",
913
+ "requestBodyRequired": false,
914
+ "responseType": "",
915
+ "responseStatus": "204"
916
+ },
917
+ "listCrmContacts": {
918
+ "operationId": "listCrmContacts",
919
+ "method": "GET",
920
+ "path": "/v1/organizations/{org_id}/crm/contacts",
921
+ "summary": "List contacts",
922
+ "description": "List contacts.",
923
+ "parameters": [
924
+ {
925
+ "name": "org_id",
926
+ "in": "path",
927
+ "required": true,
928
+ "type": "string",
929
+ "description": "Unique organization identifier."
930
+ },
931
+ {
932
+ "name": "page_size",
933
+ "in": "query",
934
+ "required": false,
935
+ "type": "number",
936
+ "description": "Maximum number of items to return (1-100, default 20)."
937
+ },
938
+ {
939
+ "name": "page_token",
940
+ "in": "query",
941
+ "required": false,
942
+ "type": "string",
943
+ "description": "Opaque token for cursor-based pagination."
944
+ }
945
+ ],
946
+ "requestBodyType": "",
947
+ "requestBodyRequired": false,
948
+ "responseType": "{ contacts: ({ company_id?: string; created_at: string; email?: string; id: string; linkedin_url?: string; name: string; notes: string; org_id: string; phone?: string; title?: string; updated_at: string })[]; next_page_token?: string }",
949
+ "responseStatus": "200"
950
+ },
951
+ "createCrmContact": {
952
+ "operationId": "createCrmContact",
953
+ "method": "POST",
954
+ "path": "/v1/organizations/{org_id}/crm/contacts",
955
+ "summary": "Create a contact",
956
+ "description": "Create a contact.",
957
+ "parameters": [
958
+ {
959
+ "name": "org_id",
960
+ "in": "path",
961
+ "required": true,
962
+ "type": "string",
963
+ "description": "Unique organization identifier."
964
+ }
965
+ ],
966
+ "requestBodyType": "{ company_id?: string; email?: string; linkedin_url?: string; name: string; notes?: string; phone?: string; title?: string }",
967
+ "requestBodyRequired": true,
968
+ "responseType": "{ company_id?: string; created_at: string; email?: string; id: string; linkedin_url?: string; name: string; notes: string; org_id: string; phone?: string; title?: string; updated_at: string }",
969
+ "responseStatus": "201"
970
+ },
971
+ "getCrmContact": {
972
+ "operationId": "getCrmContact",
973
+ "method": "GET",
974
+ "path": "/v1/organizations/{org_id}/crm/contacts/{contact_id}",
975
+ "summary": "Get a contact",
976
+ "description": "Get a contact.",
977
+ "parameters": [
978
+ {
979
+ "name": "org_id",
980
+ "in": "path",
981
+ "required": true,
982
+ "type": "string",
983
+ "description": "Unique organization identifier."
984
+ },
985
+ {
986
+ "name": "contact_id",
987
+ "in": "path",
988
+ "required": true,
989
+ "type": "string",
990
+ "description": "Unique CRM contact identifier (prefixed, e.g. cnt_xxx)."
991
+ }
992
+ ],
993
+ "requestBodyType": "",
994
+ "requestBodyRequired": false,
995
+ "responseType": "{ company_id?: string; created_at: string; email?: string; id: string; linkedin_url?: string; name: string; notes: string; org_id: string; phone?: string; title?: string; updated_at: string }",
996
+ "responseStatus": "200"
997
+ },
998
+ "updateCrmContact": {
999
+ "operationId": "updateCrmContact",
1000
+ "method": "PUT",
1001
+ "path": "/v1/organizations/{org_id}/crm/contacts/{contact_id}",
1002
+ "summary": "Update a contact",
1003
+ "description": "Update a contact.",
1004
+ "parameters": [
1005
+ {
1006
+ "name": "org_id",
1007
+ "in": "path",
1008
+ "required": true,
1009
+ "type": "string",
1010
+ "description": "Unique organization identifier."
1011
+ },
1012
+ {
1013
+ "name": "contact_id",
1014
+ "in": "path",
1015
+ "required": true,
1016
+ "type": "string",
1017
+ "description": "Unique CRM contact identifier (prefixed, e.g. cnt_xxx)."
1018
+ }
1019
+ ],
1020
+ "requestBodyType": "{ company_id?: string; email?: string; linkedin_url?: string; name: string; notes?: string; phone?: string; title?: string }",
1021
+ "requestBodyRequired": true,
1022
+ "responseType": "{ company_id?: string; created_at: string; email?: string; id: string; linkedin_url?: string; name: string; notes: string; org_id: string; phone?: string; title?: string; updated_at: string }",
1023
+ "responseStatus": "200"
1024
+ },
1025
+ "deleteCrmContact": {
1026
+ "operationId": "deleteCrmContact",
1027
+ "method": "DELETE",
1028
+ "path": "/v1/organizations/{org_id}/crm/contacts/{contact_id}",
1029
+ "summary": "Delete a contact",
1030
+ "description": "Delete a contact.",
1031
+ "parameters": [
1032
+ {
1033
+ "name": "org_id",
1034
+ "in": "path",
1035
+ "required": true,
1036
+ "type": "string",
1037
+ "description": "Unique organization identifier."
1038
+ },
1039
+ {
1040
+ "name": "contact_id",
1041
+ "in": "path",
1042
+ "required": true,
1043
+ "type": "string",
1044
+ "description": "Unique CRM contact identifier (prefixed, e.g. cnt_xxx)."
1045
+ }
1046
+ ],
1047
+ "requestBodyType": "",
1048
+ "requestBodyRequired": false,
1049
+ "responseType": "",
1050
+ "responseStatus": "204"
1051
+ },
1052
+ "listCrmDeals": {
1053
+ "operationId": "listCrmDeals",
1054
+ "method": "GET",
1055
+ "path": "/v1/organizations/{org_id}/crm/deals",
1056
+ "summary": "List deals",
1057
+ "description": "List deals.",
1058
+ "parameters": [
1059
+ {
1060
+ "name": "org_id",
1061
+ "in": "path",
1062
+ "required": true,
1063
+ "type": "string",
1064
+ "description": "Unique organization identifier."
1065
+ },
1066
+ {
1067
+ "name": "page_size",
1068
+ "in": "query",
1069
+ "required": false,
1070
+ "type": "number",
1071
+ "description": "Maximum number of items to return (1-100, default 20)."
1072
+ },
1073
+ {
1074
+ "name": "page_token",
1075
+ "in": "query",
1076
+ "required": false,
1077
+ "type": "string",
1078
+ "description": "Opaque token for cursor-based pagination."
1079
+ }
1080
+ ],
1081
+ "requestBodyType": "",
1082
+ "requestBodyRequired": false,
1083
+ "responseType": "{ deals: ({ amount_cents: number; close_date?: string; company_id?: string; created_at: string; currency: string; id: string; org_id: string; owner: string; primary_contact_id?: string; stage: \"lead\" | \"qualified\" | \"proposal\" | \"negotiation\" | \"won\" | \"lost\"; title: string; updated_at: string })[]; next_page_token?: string }",
1084
+ "responseStatus": "200"
1085
+ },
1086
+ "createCrmDeal": {
1087
+ "operationId": "createCrmDeal",
1088
+ "method": "POST",
1089
+ "path": "/v1/organizations/{org_id}/crm/deals",
1090
+ "summary": "Create a deal",
1091
+ "description": "Create a deal.",
1092
+ "parameters": [
1093
+ {
1094
+ "name": "org_id",
1095
+ "in": "path",
1096
+ "required": true,
1097
+ "type": "string",
1098
+ "description": "Unique organization identifier."
1099
+ }
1100
+ ],
1101
+ "requestBodyType": "{ amount_cents?: number; close_date?: string; company_id?: string; currency?: string; owner?: string; primary_contact_id?: string; stage?: \"lead\" | \"qualified\" | \"proposal\" | \"negotiation\" | \"won\" | \"lost\"; title: string }",
1102
+ "requestBodyRequired": true,
1103
+ "responseType": "{ amount_cents: number; close_date?: string; company_id?: string; created_at: string; currency: string; id: string; org_id: string; owner: string; primary_contact_id?: string; stage: \"lead\" | \"qualified\" | \"proposal\" | \"negotiation\" | \"won\" | \"lost\"; title: string; updated_at: string }",
1104
+ "responseStatus": "201"
1105
+ },
1106
+ "getCrmPipeline": {
1107
+ "operationId": "getCrmPipeline",
1108
+ "method": "GET",
1109
+ "path": "/v1/organizations/{org_id}/crm/pipeline",
1110
+ "summary": "Deal pipeline summary",
1111
+ "description": "Returns deal count and total value grouped by pipeline stage.",
1112
+ "parameters": [
1113
+ {
1114
+ "name": "org_id",
1115
+ "in": "path",
1116
+ "required": true,
1117
+ "type": "string",
1118
+ "description": "Unique organization identifier."
1119
+ }
1120
+ ],
1121
+ "requestBodyType": "",
1122
+ "requestBodyRequired": false,
1123
+ "responseType": "{ stages: ({ deal_count: number; stage: \"lead\" | \"qualified\" | \"proposal\" | \"negotiation\" | \"won\" | \"lost\"; total_amount_cents: number })[] }",
1124
+ "responseStatus": "200"
1125
+ },
1126
+ "getCrmDeal": {
1127
+ "operationId": "getCrmDeal",
1128
+ "method": "GET",
1129
+ "path": "/v1/organizations/{org_id}/crm/deals/{deal_id}",
1130
+ "summary": "Get a deal",
1131
+ "description": "Get a deal.",
1132
+ "parameters": [
1133
+ {
1134
+ "name": "org_id",
1135
+ "in": "path",
1136
+ "required": true,
1137
+ "type": "string",
1138
+ "description": "Unique organization identifier."
1139
+ },
1140
+ {
1141
+ "name": "deal_id",
1142
+ "in": "path",
1143
+ "required": true,
1144
+ "type": "string",
1145
+ "description": "Unique CRM deal identifier (prefixed, e.g. dl_xxx)."
1146
+ }
1147
+ ],
1148
+ "requestBodyType": "",
1149
+ "requestBodyRequired": false,
1150
+ "responseType": "{ amount_cents: number; close_date?: string; company_id?: string; created_at: string; currency: string; id: string; org_id: string; owner: string; primary_contact_id?: string; stage: \"lead\" | \"qualified\" | \"proposal\" | \"negotiation\" | \"won\" | \"lost\"; title: string; updated_at: string }",
1151
+ "responseStatus": "200"
1152
+ },
1153
+ "updateCrmDeal": {
1154
+ "operationId": "updateCrmDeal",
1155
+ "method": "PUT",
1156
+ "path": "/v1/organizations/{org_id}/crm/deals/{deal_id}",
1157
+ "summary": "Update a deal",
1158
+ "description": "Update a deal.",
1159
+ "parameters": [
1160
+ {
1161
+ "name": "org_id",
1162
+ "in": "path",
1163
+ "required": true,
1164
+ "type": "string",
1165
+ "description": "Unique organization identifier."
1166
+ },
1167
+ {
1168
+ "name": "deal_id",
1169
+ "in": "path",
1170
+ "required": true,
1171
+ "type": "string",
1172
+ "description": "Unique CRM deal identifier (prefixed, e.g. dl_xxx)."
1173
+ }
1174
+ ],
1175
+ "requestBodyType": "{ amount_cents?: number; close_date?: string; company_id?: string; currency?: string; owner?: string; primary_contact_id?: string; stage?: \"lead\" | \"qualified\" | \"proposal\" | \"negotiation\" | \"won\" | \"lost\"; title: string }",
1176
+ "requestBodyRequired": true,
1177
+ "responseType": "{ amount_cents: number; close_date?: string; company_id?: string; created_at: string; currency: string; id: string; org_id: string; owner: string; primary_contact_id?: string; stage: \"lead\" | \"qualified\" | \"proposal\" | \"negotiation\" | \"won\" | \"lost\"; title: string; updated_at: string }",
1178
+ "responseStatus": "200"
1179
+ },
1180
+ "deleteCrmDeal": {
1181
+ "operationId": "deleteCrmDeal",
1182
+ "method": "DELETE",
1183
+ "path": "/v1/organizations/{org_id}/crm/deals/{deal_id}",
1184
+ "summary": "Delete a deal",
1185
+ "description": "Delete a deal.",
1186
+ "parameters": [
1187
+ {
1188
+ "name": "org_id",
1189
+ "in": "path",
1190
+ "required": true,
1191
+ "type": "string",
1192
+ "description": "Unique organization identifier."
1193
+ },
1194
+ {
1195
+ "name": "deal_id",
1196
+ "in": "path",
1197
+ "required": true,
1198
+ "type": "string",
1199
+ "description": "Unique CRM deal identifier (prefixed, e.g. dl_xxx)."
1200
+ }
1201
+ ],
1202
+ "requestBodyType": "",
1203
+ "requestBodyRequired": false,
1204
+ "responseType": "",
1205
+ "responseStatus": "204"
1206
+ },
1207
+ "listCrmResearchTasks": {
1208
+ "operationId": "listCrmResearchTasks",
1209
+ "method": "GET",
1210
+ "path": "/v1/organizations/{org_id}/crm/research-tasks",
1211
+ "summary": "List research tasks",
1212
+ "description": "List research tasks.",
1213
+ "parameters": [
1214
+ {
1215
+ "name": "org_id",
1216
+ "in": "path",
1217
+ "required": true,
1218
+ "type": "string",
1219
+ "description": "Unique organization identifier."
1220
+ },
1221
+ {
1222
+ "name": "page_size",
1223
+ "in": "query",
1224
+ "required": false,
1225
+ "type": "number",
1226
+ "description": "Maximum number of items to return (1-100, default 20)."
1227
+ },
1228
+ {
1229
+ "name": "page_token",
1230
+ "in": "query",
1231
+ "required": false,
1232
+ "type": "string",
1233
+ "description": "Opaque token for cursor-based pagination."
1234
+ }
1235
+ ],
1236
+ "requestBodyType": "",
1237
+ "requestBodyRequired": false,
1238
+ "responseType": "{ next_page_token?: string; tasks: ({ approved_at?: string; attempts: number; created_at: string; error?: string; id: string; kind: \"enrich_company\" | \"enrich_contact\" | \"research_deal\" | \"draft_outreach\" | \"send_outreach\" | \"custom\"; max_attempts: number; org_id: string; priority: number; requires_approval: boolean; role: \"researcher\" | \"enricher\" | \"outreach\"; status: \"pending\" | \"leased\" | \"done\" | \"failed\" | \"canceled\" | \"awaiting_approval\"; subject_id: string; subject_type: \"company\" | \"contact\" | \"deal\"; updated_at: string })[] }",
1239
+ "responseStatus": "200"
1240
+ },
1241
+ "createCrmResearchTask": {
1242
+ "operationId": "createCrmResearchTask",
1243
+ "method": "POST",
1244
+ "path": "/v1/organizations/{org_id}/crm/research-tasks",
1245
+ "summary": "Enqueue a research task",
1246
+ "description": "Adds a task to the CRM research queue. The autonomous research worker leases pending tasks, enriches the subject entity, and writes results back.\n",
1247
+ "parameters": [
1248
+ {
1249
+ "name": "org_id",
1250
+ "in": "path",
1251
+ "required": true,
1252
+ "type": "string",
1253
+ "description": "Unique organization identifier."
1254
+ }
1255
+ ],
1256
+ "requestBodyType": "{ kind: \"enrich_company\" | \"enrich_contact\" | \"research_deal\" | \"draft_outreach\" | \"send_outreach\" | \"custom\"; priority?: number; role?: \"researcher\" | \"enricher\" | \"outreach\"; subject_id: string; subject_type: \"company\" | \"contact\" | \"deal\" }",
1257
+ "requestBodyRequired": true,
1258
+ "responseType": "{ approved_at?: string; attempts: number; created_at: string; error?: string; id: string; kind: \"enrich_company\" | \"enrich_contact\" | \"research_deal\" | \"draft_outreach\" | \"send_outreach\" | \"custom\"; max_attempts: number; org_id: string; priority: number; requires_approval: boolean; role: \"researcher\" | \"enricher\" | \"outreach\"; status: \"pending\" | \"leased\" | \"done\" | \"failed\" | \"canceled\" | \"awaiting_approval\"; subject_id: string; subject_type: \"company\" | \"contact\" | \"deal\"; updated_at: string }",
1259
+ "responseStatus": "201"
1260
+ },
1261
+ "getCrmResearchTask": {
1262
+ "operationId": "getCrmResearchTask",
1263
+ "method": "GET",
1264
+ "path": "/v1/organizations/{org_id}/crm/research-tasks/{task_id}",
1265
+ "summary": "Get a research task",
1266
+ "description": "Get a research task.",
1267
+ "parameters": [
1268
+ {
1269
+ "name": "org_id",
1270
+ "in": "path",
1271
+ "required": true,
1272
+ "type": "string",
1273
+ "description": "Unique organization identifier."
1274
+ },
1275
+ {
1276
+ "name": "task_id",
1277
+ "in": "path",
1278
+ "required": true,
1279
+ "type": "string",
1280
+ "description": "Unique CRM research task identifier (prefixed, e.g. ctk_xxx)."
1281
+ }
1282
+ ],
1283
+ "requestBodyType": "",
1284
+ "requestBodyRequired": false,
1285
+ "responseType": "{ approved_at?: string; attempts: number; created_at: string; error?: string; id: string; kind: \"enrich_company\" | \"enrich_contact\" | \"research_deal\" | \"draft_outreach\" | \"send_outreach\" | \"custom\"; max_attempts: number; org_id: string; priority: number; requires_approval: boolean; role: \"researcher\" | \"enricher\" | \"outreach\"; status: \"pending\" | \"leased\" | \"done\" | \"failed\" | \"canceled\" | \"awaiting_approval\"; subject_id: string; subject_type: \"company\" | \"contact\" | \"deal\"; updated_at: string }",
1286
+ "responseStatus": "200"
1287
+ },
1288
+ "cancelCrmResearchTask": {
1289
+ "operationId": "cancelCrmResearchTask",
1290
+ "method": "POST",
1291
+ "path": "/v1/organizations/{org_id}/crm/research-tasks/{task_id}/cancel",
1292
+ "summary": "Cancel a research task",
1293
+ "description": "Cancels a pending or leased task. Terminal tasks are unaffected.",
1294
+ "parameters": [
1295
+ {
1296
+ "name": "org_id",
1297
+ "in": "path",
1298
+ "required": true,
1299
+ "type": "string",
1300
+ "description": "Unique organization identifier."
1301
+ },
1302
+ {
1303
+ "name": "task_id",
1304
+ "in": "path",
1305
+ "required": true,
1306
+ "type": "string",
1307
+ "description": "Unique CRM research task identifier (prefixed, e.g. ctk_xxx)."
1308
+ }
1309
+ ],
1310
+ "requestBodyType": "",
1311
+ "requestBodyRequired": false,
1312
+ "responseType": "{ approved_at?: string; attempts: number; created_at: string; error?: string; id: string; kind: \"enrich_company\" | \"enrich_contact\" | \"research_deal\" | \"draft_outreach\" | \"send_outreach\" | \"custom\"; max_attempts: number; org_id: string; priority: number; requires_approval: boolean; role: \"researcher\" | \"enricher\" | \"outreach\"; status: \"pending\" | \"leased\" | \"done\" | \"failed\" | \"canceled\" | \"awaiting_approval\"; subject_id: string; subject_type: \"company\" | \"contact\" | \"deal\"; updated_at: string }",
1313
+ "responseStatus": "200"
1314
+ },
1315
+ "getCrmContext": {
1316
+ "operationId": "getCrmContext",
1317
+ "method": "GET",
1318
+ "path": "/v1/organizations/{org_id}/crm/context",
1319
+ "summary": "Get the org CRM context",
1320
+ "description": "Returns the shared CRM context document for the organization.",
1321
+ "parameters": [
1322
+ {
1323
+ "name": "org_id",
1324
+ "in": "path",
1325
+ "required": true,
1326
+ "type": "string",
1327
+ "description": "Unique organization identifier."
646
1328
  }
647
1329
  ],
648
1330
  "requestBodyType": "",
649
1331
  "requestBodyRequired": false,
650
- "responseType": "{ branches: ({ branch_name: string; created_at: string; credential_id?: string; database_id: string; discarded_at?: string; error?: string; expires_at?: string; id: string; session_id?: string; status: \"pending\" | \"ready\" | \"error\" | \"discarded\" })[]; next_page_token?: string }",
1332
+ "responseType": "{ icp: string; notes: string; org_id: string; positioning: string; tone: string; updated_at: string }",
651
1333
  "responseStatus": "200"
652
1334
  },
653
- "discardDatabaseBranch": {
654
- "operationId": "discardDatabaseBranch",
655
- "method": "DELETE",
656
- "path": "/v1/projects/{project_id}/branches/{branch_id}",
657
- "summary": "Discard a sandbox branch",
658
- "description": "Marks an ephemeral sandbox branch as discarded for teardown.",
1335
+ "updateCrmContext": {
1336
+ "operationId": "updateCrmContext",
1337
+ "method": "PUT",
1338
+ "path": "/v1/organizations/{org_id}/crm/context",
1339
+ "summary": "Update the org CRM context",
1340
+ "description": "Creates or updates the shared CRM context document.",
659
1341
  "parameters": [
660
1342
  {
661
- "name": "project_id",
1343
+ "name": "org_id",
662
1344
  "in": "path",
663
1345
  "required": true,
664
1346
  "type": "string",
665
- "description": "Unique project identifier (prefixed, e.g. prj_xxx)."
1347
+ "description": "Unique organization identifier."
1348
+ }
1349
+ ],
1350
+ "requestBodyType": "{ icp?: string; notes?: string; positioning?: string; tone?: string }",
1351
+ "requestBodyRequired": true,
1352
+ "responseType": "{ icp: string; notes: string; org_id: string; positioning: string; tone: string; updated_at: string }",
1353
+ "responseStatus": "200"
1354
+ },
1355
+ "approveCrmResearchTask": {
1356
+ "operationId": "approveCrmResearchTask",
1357
+ "method": "POST",
1358
+ "path": "/v1/organizations/{org_id}/crm/research-tasks/{task_id}/approve",
1359
+ "summary": "Approve a research task",
1360
+ "description": "Approves a task that is awaiting approval (an irreversible action). The task flips to pending and is then run by the worker.\n",
1361
+ "parameters": [
1362
+ {
1363
+ "name": "org_id",
1364
+ "in": "path",
1365
+ "required": true,
1366
+ "type": "string",
1367
+ "description": "Unique organization identifier."
666
1368
  },
667
1369
  {
668
- "name": "branch_id",
1370
+ "name": "task_id",
669
1371
  "in": "path",
670
1372
  "required": true,
671
1373
  "type": "string",
672
- "description": "Unique sandbox branch identifier (prefixed, e.g. brn_xxx)."
1374
+ "description": "Unique CRM research task identifier (prefixed, e.g. ctk_xxx)."
673
1375
  }
674
1376
  ],
675
1377
  "requestBodyType": "",
676
1378
  "requestBodyRequired": false,
677
- "responseType": "",
678
- "responseStatus": "204"
1379
+ "responseType": "{ approved_at?: string; attempts: number; created_at: string; error?: string; id: string; kind: \"enrich_company\" | \"enrich_contact\" | \"research_deal\" | \"draft_outreach\" | \"send_outreach\" | \"custom\"; max_attempts: number; org_id: string; priority: number; requires_approval: boolean; role: \"researcher\" | \"enricher\" | \"outreach\"; status: \"pending\" | \"leased\" | \"done\" | \"failed\" | \"canceled\" | \"awaiting_approval\"; subject_id: string; subject_type: \"company\" | \"contact\" | \"deal\"; updated_at: string }",
1380
+ "responseStatus": "200"
679
1381
  },
680
- "listCacheRules": {
681
- "operationId": "listCacheRules",
1382
+ "listCrmArtifacts": {
1383
+ "operationId": "listCrmArtifacts",
682
1384
  "method": "GET",
683
- "path": "/v1/projects/{project_id}/databases/{database_id}/cache-rules",
684
- "summary": "List cache rules",
685
- "description": "Returns the cache rules for a database, showing all observed query\nshapes with their stats and cache recommendations.\n",
1385
+ "path": "/v1/organizations/{org_id}/crm/artifacts",
1386
+ "summary": "List artifacts",
1387
+ "description": "Lists agent-produced artifacts for the organization.",
686
1388
  "parameters": [
687
1389
  {
688
- "name": "project_id",
689
- "in": "path",
690
- "required": true,
691
- "type": "string",
692
- "description": "Unique project identifier (prefixed, e.g. prj_xxx)."
693
- },
694
- {
695
- "name": "database_id",
1390
+ "name": "org_id",
696
1391
  "in": "path",
697
1392
  "required": true,
698
1393
  "type": "string",
699
- "description": "Unique database identifier (prefixed, e.g. db_xxx)."
1394
+ "description": "Unique organization identifier."
700
1395
  },
701
1396
  {
702
1397
  "name": "page_size",
@@ -715,41 +1410,61 @@ Object.defineProperty(exports, '__esModule', { value: true });
715
1410
  ],
716
1411
  "requestBodyType": "",
717
1412
  "requestBodyRequired": false,
718
- "responseType": "{ entries: ({ avg_latency_ms: number; avg_response_bytes: number; cache_enabled: boolean; cache_swr_seconds?: number; cache_ttl_seconds?: number; call_count: number; first_seen_at: string; last_seen_at: string; normalized_sql: string; p95_latency_ms: number; query_hash: string; query_type: \"read\" | \"write\" | \"other\"; recommendation: \"great\" | \"good\" | \"fair\" | \"poor\"; stability_rate: number })[]; next_page_token?: string }",
1413
+ "responseType": "{ artifacts: ({ body: string; created_at: string; id: string; kind: string; org_id: string; status: \"draft\" | \"approved\" | \"sent\" | \"discarded\"; subject_id: string; subject_type: \"company\" | \"contact\" | \"deal\"; task_id?: string; title: string; updated_at: string })[]; next_page_token?: string }",
719
1414
  "responseStatus": "200"
720
1415
  },
721
- "updateCacheRule": {
722
- "operationId": "updateCacheRule",
723
- "method": "PUT",
724
- "path": "/v1/projects/{project_id}/databases/{database_id}/cache-rules/{query_hash}",
725
- "summary": "Update cache rule",
726
- "description": "Enable or disable caching for a specific query shape, with optional\nTTL and SWR overrides. Requires the query to exist in the cache rules.\n",
1416
+ "getCrmArtifact": {
1417
+ "operationId": "getCrmArtifact",
1418
+ "method": "GET",
1419
+ "path": "/v1/organizations/{org_id}/crm/artifacts/{artifact_id}",
1420
+ "summary": "Get an artifact",
1421
+ "description": "Returns a single artifact by ID.",
727
1422
  "parameters": [
728
1423
  {
729
- "name": "project_id",
1424
+ "name": "org_id",
730
1425
  "in": "path",
731
1426
  "required": true,
732
1427
  "type": "string",
733
- "description": "Unique project identifier (prefixed, e.g. prj_xxx)."
1428
+ "description": "Unique organization identifier."
734
1429
  },
735
1430
  {
736
- "name": "database_id",
1431
+ "name": "artifact_id",
737
1432
  "in": "path",
738
1433
  "required": true,
739
1434
  "type": "string",
740
- "description": "Unique database identifier (prefixed, e.g. db_xxx)."
741
- },
1435
+ "description": "Unique CRM artifact identifier (prefixed, e.g. art_xxx)."
1436
+ }
1437
+ ],
1438
+ "requestBodyType": "",
1439
+ "requestBodyRequired": false,
1440
+ "responseType": "{ body: string; created_at: string; id: string; kind: string; org_id: string; status: \"draft\" | \"approved\" | \"sent\" | \"discarded\"; subject_id: string; subject_type: \"company\" | \"contact\" | \"deal\"; task_id?: string; title: string; updated_at: string }",
1441
+ "responseStatus": "200"
1442
+ },
1443
+ "listCrmActivities": {
1444
+ "operationId": "listCrmActivities",
1445
+ "method": "GET",
1446
+ "path": "/v1/organizations/{org_id}/crm/activities",
1447
+ "summary": "List activities",
1448
+ "description": "Lists the organization's most recent CRM activity, newest first.",
1449
+ "parameters": [
742
1450
  {
743
- "name": "query_hash",
1451
+ "name": "org_id",
744
1452
  "in": "path",
745
1453
  "required": true,
746
1454
  "type": "string",
747
- "description": "xxhash64 hex of the normalized SQL."
1455
+ "description": "Unique organization identifier."
1456
+ },
1457
+ {
1458
+ "name": "page_size",
1459
+ "in": "query",
1460
+ "required": false,
1461
+ "type": "number",
1462
+ "description": "Maximum number of items to return (1-100, default 20)."
748
1463
  }
749
1464
  ],
750
- "requestBodyType": "{ cache_enabled: boolean; cache_swr_seconds?: number; cache_ttl_seconds?: number }",
751
- "requestBodyRequired": true,
752
- "responseType": "{ entry: { avg_latency_ms: number; avg_response_bytes: number; cache_enabled: boolean; cache_swr_seconds?: number; cache_ttl_seconds?: number; call_count: number; first_seen_at: string; last_seen_at: string; normalized_sql: string; p95_latency_ms: number; query_hash: string; query_type: \"read\" | \"write\" | \"other\"; recommendation: \"great\" | \"good\" | \"fair\" | \"poor\"; stability_rate: number } }",
1465
+ "requestBodyType": "",
1466
+ "requestBodyRequired": false,
1467
+ "responseType": "{ activities: ({ actor: string; at: string; id: string; org_id: string; subject_id: string; subject_type: \"company\" | \"contact\" | \"deal\"; verb: string })[] }",
753
1468
  "responseStatus": "200"
754
1469
  },
755
1470
  "listDatabases": {
@@ -1088,6 +1803,141 @@ Object.defineProperty(exports, '__esModule', { value: true });
1088
1803
  "responseType": "{ image_sha: string; status: \"ok\" | \"degraded\"; timestamp?: string; version: string }",
1089
1804
  "responseStatus": "200"
1090
1805
  },
1806
+ "listHoneytokens": {
1807
+ "operationId": "listHoneytokens",
1808
+ "method": "GET",
1809
+ "path": "/v1/projects/{project_id}/honeytokens",
1810
+ "summary": "List honeytokens",
1811
+ "description": "Lists the project's honeytokens.",
1812
+ "parameters": [
1813
+ {
1814
+ "name": "project_id",
1815
+ "in": "path",
1816
+ "required": true,
1817
+ "type": "string",
1818
+ "description": "Unique project identifier (prefixed, e.g. prj_xxx)."
1819
+ },
1820
+ {
1821
+ "name": "page_size",
1822
+ "in": "query",
1823
+ "required": false,
1824
+ "type": "number",
1825
+ "description": "Maximum number of items to return (1-100, default 20)."
1826
+ },
1827
+ {
1828
+ "name": "page_token",
1829
+ "in": "query",
1830
+ "required": false,
1831
+ "type": "string",
1832
+ "description": "Opaque token for cursor-based pagination."
1833
+ }
1834
+ ],
1835
+ "requestBodyType": "",
1836
+ "requestBodyRequired": false,
1837
+ "responseType": "{ honeytokens: ({ action: \"audit_only\" | \"kill\"; created_at: string; id: string; project_id: string; relation_name: string; schema_name?: string; updated_at: string })[]; next_page_token?: string }",
1838
+ "responseStatus": "200"
1839
+ },
1840
+ "createHoneytoken": {
1841
+ "operationId": "createHoneytoken",
1842
+ "method": "POST",
1843
+ "path": "/v1/projects/{project_id}/honeytokens",
1844
+ "summary": "Register a honeytoken",
1845
+ "description": "Registers a decoy (canary) relation for the project. Any agent statement\nthat references it is blocked and recorded as a canary_tripped audit event.\n",
1846
+ "parameters": [
1847
+ {
1848
+ "name": "project_id",
1849
+ "in": "path",
1850
+ "required": true,
1851
+ "type": "string",
1852
+ "description": "Unique project identifier (prefixed, e.g. prj_xxx)."
1853
+ }
1854
+ ],
1855
+ "requestBodyType": "{ action: \"audit_only\" | \"kill\"; relation_name: string; schema_name?: string }",
1856
+ "requestBodyRequired": true,
1857
+ "responseType": "{ action: \"audit_only\" | \"kill\"; created_at: string; id: string; project_id: string; relation_name: string; schema_name?: string; updated_at: string }",
1858
+ "responseStatus": "201"
1859
+ },
1860
+ "getHoneytoken": {
1861
+ "operationId": "getHoneytoken",
1862
+ "method": "GET",
1863
+ "path": "/v1/projects/{project_id}/honeytokens/{honeytoken_id}",
1864
+ "summary": "Get a honeytoken",
1865
+ "description": "Returns a single honeytoken by ID.",
1866
+ "parameters": [
1867
+ {
1868
+ "name": "project_id",
1869
+ "in": "path",
1870
+ "required": true,
1871
+ "type": "string",
1872
+ "description": "Unique project identifier (prefixed, e.g. prj_xxx)."
1873
+ },
1874
+ {
1875
+ "name": "honeytoken_id",
1876
+ "in": "path",
1877
+ "required": true,
1878
+ "type": "string",
1879
+ "description": "Unique honeytoken identifier (prefixed, e.g. hnt_xxx)."
1880
+ }
1881
+ ],
1882
+ "requestBodyType": "",
1883
+ "requestBodyRequired": false,
1884
+ "responseType": "{ action: \"audit_only\" | \"kill\"; created_at: string; id: string; project_id: string; relation_name: string; schema_name?: string; updated_at: string }",
1885
+ "responseStatus": "200"
1886
+ },
1887
+ "updateHoneytoken": {
1888
+ "operationId": "updateHoneytoken",
1889
+ "method": "PUT",
1890
+ "path": "/v1/projects/{project_id}/honeytokens/{honeytoken_id}",
1891
+ "summary": "Update a honeytoken",
1892
+ "description": "Updates a honeytoken's relation or action.",
1893
+ "parameters": [
1894
+ {
1895
+ "name": "project_id",
1896
+ "in": "path",
1897
+ "required": true,
1898
+ "type": "string",
1899
+ "description": "Unique project identifier (prefixed, e.g. prj_xxx)."
1900
+ },
1901
+ {
1902
+ "name": "honeytoken_id",
1903
+ "in": "path",
1904
+ "required": true,
1905
+ "type": "string",
1906
+ "description": "Unique honeytoken identifier (prefixed, e.g. hnt_xxx)."
1907
+ }
1908
+ ],
1909
+ "requestBodyType": "{ action: \"audit_only\" | \"kill\"; relation_name: string; schema_name?: string }",
1910
+ "requestBodyRequired": true,
1911
+ "responseType": "{ action: \"audit_only\" | \"kill\"; created_at: string; id: string; project_id: string; relation_name: string; schema_name?: string; updated_at: string }",
1912
+ "responseStatus": "200"
1913
+ },
1914
+ "deleteHoneytoken": {
1915
+ "operationId": "deleteHoneytoken",
1916
+ "method": "DELETE",
1917
+ "path": "/v1/projects/{project_id}/honeytokens/{honeytoken_id}",
1918
+ "summary": "Delete a honeytoken",
1919
+ "description": "Removes a honeytoken from the project.",
1920
+ "parameters": [
1921
+ {
1922
+ "name": "project_id",
1923
+ "in": "path",
1924
+ "required": true,
1925
+ "type": "string",
1926
+ "description": "Unique project identifier (prefixed, e.g. prj_xxx)."
1927
+ },
1928
+ {
1929
+ "name": "honeytoken_id",
1930
+ "in": "path",
1931
+ "required": true,
1932
+ "type": "string",
1933
+ "description": "Unique honeytoken identifier (prefixed, e.g. hnt_xxx)."
1934
+ }
1935
+ ],
1936
+ "requestBodyType": "",
1937
+ "requestBodyRequired": false,
1938
+ "responseType": "",
1939
+ "responseStatus": "204"
1940
+ },
1091
1941
  "getProjectInsights": {
1092
1942
  "operationId": "getProjectInsights",
1093
1943
  "method": "GET",
@@ -1525,69 +2375,164 @@ Object.defineProperty(exports, '__esModule', { value: true });
1525
2375
  "parameters": [],
1526
2376
  "requestBodyType": "",
1527
2377
  "requestBodyRequired": false,
1528
- "responseType": "{ regions: ({ available: boolean; continent?: string; country?: string; id: string; name: string; provider: \"aws\" | \"azure\" | \"gcp\"; status: \"active\" | \"draining\" | \"inactive\" })[] }",
1529
- "responseStatus": "200"
2378
+ "responseType": "{ regions: ({ available: boolean; continent?: string; country?: string; id: string; name: string; provider: \"aws\" | \"azure\" | \"gcp\"; status: \"active\" | \"draining\" | \"inactive\" })[] }",
2379
+ "responseStatus": "200"
2380
+ },
2381
+ "listReplicas": {
2382
+ "operationId": "listReplicas",
2383
+ "method": "GET",
2384
+ "path": "/v1/databases/{database_id}/replicas",
2385
+ "summary": "List replicas",
2386
+ "description": "Lists all read replicas for a database.",
2387
+ "parameters": [
2388
+ {
2389
+ "name": "database_id",
2390
+ "in": "path",
2391
+ "required": true,
2392
+ "type": "string",
2393
+ "description": "Unique database identifier (prefixed, e.g. db_xxx)."
2394
+ }
2395
+ ],
2396
+ "requestBodyType": "",
2397
+ "requestBodyRequired": false,
2398
+ "responseType": "{ next_page_token?: string; replicas: ({ created_at: string; database_id: string; host: string; id: string; port: number; ssl_mode: \"disable\" | \"allow\" | \"prefer\" | \"require\" | \"verify-ca\" | \"verify-full\"; updated_at: string })[] }",
2399
+ "responseStatus": "200"
2400
+ },
2401
+ "createReplica": {
2402
+ "operationId": "createReplica",
2403
+ "method": "POST",
2404
+ "path": "/v1/databases/{database_id}/replicas",
2405
+ "summary": "Add a replica",
2406
+ "description": "Adds a read replica to a database.",
2407
+ "parameters": [
2408
+ {
2409
+ "name": "database_id",
2410
+ "in": "path",
2411
+ "required": true,
2412
+ "type": "string",
2413
+ "description": "Unique database identifier (prefixed, e.g. db_xxx)."
2414
+ }
2415
+ ],
2416
+ "requestBodyType": "{ host: string; port: number; ssl_mode?: \"disable\" | \"allow\" | \"prefer\" | \"require\" | \"verify-ca\" | \"verify-full\" }",
2417
+ "requestBodyRequired": true,
2418
+ "responseType": "{ created_at: string; database_id: string; host: string; id: string; port: number; ssl_mode: \"disable\" | \"allow\" | \"prefer\" | \"require\" | \"verify-ca\" | \"verify-full\"; updated_at: string }",
2419
+ "responseStatus": "201"
2420
+ },
2421
+ "deleteReplica": {
2422
+ "operationId": "deleteReplica",
2423
+ "method": "DELETE",
2424
+ "path": "/v1/databases/{database_id}/replicas/{replica_id}",
2425
+ "summary": "Delete a replica",
2426
+ "description": "Removes a read replica from a database.",
2427
+ "parameters": [
2428
+ {
2429
+ "name": "database_id",
2430
+ "in": "path",
2431
+ "required": true,
2432
+ "type": "string",
2433
+ "description": "Unique database identifier (prefixed, e.g. db_xxx)."
2434
+ },
2435
+ {
2436
+ "name": "replica_id",
2437
+ "in": "path",
2438
+ "required": true,
2439
+ "type": "string",
2440
+ "description": "Unique replica identifier (prefixed, e.g. rep_xxx)."
2441
+ }
2442
+ ],
2443
+ "requestBodyType": "",
2444
+ "requestBodyRequired": false,
2445
+ "responseType": "",
2446
+ "responseStatus": "204"
1530
2447
  },
1531
- "listReplicas": {
1532
- "operationId": "listReplicas",
2448
+ "listSchemaAnnotations": {
2449
+ "operationId": "listSchemaAnnotations",
1533
2450
  "method": "GET",
1534
- "path": "/v1/databases/{database_id}/replicas",
1535
- "summary": "List replicas",
1536
- "description": "Lists all read replicas for a database.",
2451
+ "path": "/v1/projects/{project_id}/schema-annotations",
2452
+ "summary": "List schema annotations",
2453
+ "description": "Lists the project's human-written table and column descriptions. These are surfaced to connected agents through the MCP schema catalog.\n",
1537
2454
  "parameters": [
1538
2455
  {
1539
- "name": "database_id",
2456
+ "name": "project_id",
1540
2457
  "in": "path",
1541
2458
  "required": true,
1542
2459
  "type": "string",
1543
- "description": "Unique database identifier (prefixed, e.g. db_xxx)."
2460
+ "description": "Unique project identifier (prefixed, e.g. prj_xxx)."
2461
+ },
2462
+ {
2463
+ "name": "page_size",
2464
+ "in": "query",
2465
+ "required": false,
2466
+ "type": "number",
2467
+ "description": "Maximum number of items to return (1-100, default 20)."
2468
+ },
2469
+ {
2470
+ "name": "page_token",
2471
+ "in": "query",
2472
+ "required": false,
2473
+ "type": "string",
2474
+ "description": "Opaque token for cursor-based pagination."
1544
2475
  }
1545
2476
  ],
1546
2477
  "requestBodyType": "",
1547
2478
  "requestBodyRequired": false,
1548
- "responseType": "{ next_page_token?: string; replicas: ({ created_at: string; database_id: string; host: string; id: string; port: number; ssl_mode: \"disable\" | \"allow\" | \"prefer\" | \"require\" | \"verify-ca\" | \"verify-full\"; updated_at: string })[] }",
2479
+ "responseType": "{ annotations: ({ column_name?: string; created_at: string; description: string; id: string; project_id: string; schema_name?: string; table_name: string; updated_at: string })[]; next_page_token?: string }",
1549
2480
  "responseStatus": "200"
1550
2481
  },
1551
- "createReplica": {
1552
- "operationId": "createReplica",
1553
- "method": "POST",
1554
- "path": "/v1/databases/{database_id}/replicas",
1555
- "summary": "Add a replica",
1556
- "description": "Adds a read replica to a database.",
2482
+ "putSchemaAnnotation": {
2483
+ "operationId": "putSchemaAnnotation",
2484
+ "method": "PUT",
2485
+ "path": "/v1/projects/{project_id}/schema-annotations",
2486
+ "summary": "Create or replace a schema annotation",
2487
+ "description": "Attaches an operator-written description to a table (omit column_name) or a column. Keyed by (schema_name, table_name, column_name); an existing annotation with the same key is replaced.\n",
1557
2488
  "parameters": [
1558
2489
  {
1559
- "name": "database_id",
2490
+ "name": "project_id",
1560
2491
  "in": "path",
1561
2492
  "required": true,
1562
2493
  "type": "string",
1563
- "description": "Unique database identifier (prefixed, e.g. db_xxx)."
2494
+ "description": "Unique project identifier (prefixed, e.g. prj_xxx)."
1564
2495
  }
1565
2496
  ],
1566
- "requestBodyType": "{ host: string; port: number; ssl_mode?: \"disable\" | \"allow\" | \"prefer\" | \"require\" | \"verify-ca\" | \"verify-full\" }",
2497
+ "requestBodyType": "{ column_name?: string; description: string; schema_name?: string; table_name: string }",
1567
2498
  "requestBodyRequired": true,
1568
- "responseType": "{ created_at: string; database_id: string; host: string; id: string; port: number; ssl_mode: \"disable\" | \"allow\" | \"prefer\" | \"require\" | \"verify-ca\" | \"verify-full\"; updated_at: string }",
1569
- "responseStatus": "201"
2499
+ "responseType": "{ column_name?: string; created_at: string; description: string; id: string; project_id: string; schema_name?: string; table_name: string; updated_at: string }",
2500
+ "responseStatus": "200"
1570
2501
  },
1571
- "deleteReplica": {
1572
- "operationId": "deleteReplica",
2502
+ "deleteSchemaAnnotation": {
2503
+ "operationId": "deleteSchemaAnnotation",
1573
2504
  "method": "DELETE",
1574
- "path": "/v1/databases/{database_id}/replicas/{replica_id}",
1575
- "summary": "Delete a replica",
1576
- "description": "Removes a read replica from a database.",
2505
+ "path": "/v1/projects/{project_id}/schema-annotations",
2506
+ "summary": "Delete a schema annotation",
2507
+ "description": "Removes a single annotation identified by its natural key. Omit column_name to delete a table-level annotation, and omit schema_name to match the unqualified form.\n",
1577
2508
  "parameters": [
1578
2509
  {
1579
- "name": "database_id",
2510
+ "name": "project_id",
1580
2511
  "in": "path",
1581
2512
  "required": true,
1582
2513
  "type": "string",
1583
- "description": "Unique database identifier (prefixed, e.g. db_xxx)."
2514
+ "description": "Unique project identifier (prefixed, e.g. prj_xxx)."
1584
2515
  },
1585
2516
  {
1586
- "name": "replica_id",
1587
- "in": "path",
2517
+ "name": "table_name",
2518
+ "in": "query",
1588
2519
  "required": true,
1589
2520
  "type": "string",
1590
- "description": "Unique replica identifier (prefixed, e.g. rep_xxx)."
2521
+ "description": "Relation (table or view) the annotation describes."
2522
+ },
2523
+ {
2524
+ "name": "schema_name",
2525
+ "in": "query",
2526
+ "required": false,
2527
+ "type": "string",
2528
+ "description": "Optional schema. Omit to match the unqualified form."
2529
+ },
2530
+ {
2531
+ "name": "column_name",
2532
+ "in": "query",
2533
+ "required": false,
2534
+ "type": "string",
2535
+ "description": "Optional column. Omit to delete a table-level annotation."
1591
2536
  }
1592
2537
  ],
1593
2538
  "requestBodyType": "",
@@ -2142,6 +3087,40 @@ Object.defineProperty(exports, '__esModule', { value: true });
2142
3087
  path: "/v1/projects/{project_id}/audit-logs/verify"
2143
3088
  }
2144
3089
  },
3090
+ policies: {
3091
+ recommendAgentPolicy: {
3092
+ method: "POST",
3093
+ path: "/v1/projects/{project_id}/agents/{agent_id}/policy-recommendation"
3094
+ },
3095
+ listPolicyProfiles: {
3096
+ method: "GET",
3097
+ path: "/v1/projects/{project_id}/policies"
3098
+ },
3099
+ createPolicyProfile: {
3100
+ method: "POST",
3101
+ path: "/v1/projects/{project_id}/policies"
3102
+ },
3103
+ getPolicyProfile: {
3104
+ method: "GET",
3105
+ path: "/v1/projects/{project_id}/policies/{policy_id}"
3106
+ },
3107
+ updatePolicyProfile: {
3108
+ method: "PUT",
3109
+ path: "/v1/projects/{project_id}/policies/{policy_id}"
3110
+ },
3111
+ deletePolicyProfile: {
3112
+ method: "DELETE",
3113
+ path: "/v1/projects/{project_id}/policies/{policy_id}"
3114
+ },
3115
+ dryEvalPolicy: {
3116
+ method: "POST",
3117
+ path: "/v1/projects/{project_id}/policy-evaluations"
3118
+ },
3119
+ replayPolicy: {
3120
+ method: "POST",
3121
+ path: "/v1/projects/{project_id}/policy-replays"
3122
+ }
3123
+ },
2145
3124
  anomalies: {
2146
3125
  listAnomalyAlerts: {
2147
3126
  method: "GET",
@@ -2272,6 +3251,112 @@ Object.defineProperty(exports, '__esModule', { value: true });
2272
3251
  path: "/v1/databases/{database_id}/replicas/{replica_id}"
2273
3252
  }
2274
3253
  },
3254
+ crm: {
3255
+ listCrmCompanies: {
3256
+ method: "GET",
3257
+ path: "/v1/organizations/{org_id}/crm/companies"
3258
+ },
3259
+ createCrmCompany: {
3260
+ method: "POST",
3261
+ path: "/v1/organizations/{org_id}/crm/companies"
3262
+ },
3263
+ getCrmCompany: {
3264
+ method: "GET",
3265
+ path: "/v1/organizations/{org_id}/crm/companies/{company_id}"
3266
+ },
3267
+ updateCrmCompany: {
3268
+ method: "PUT",
3269
+ path: "/v1/organizations/{org_id}/crm/companies/{company_id}"
3270
+ },
3271
+ deleteCrmCompany: {
3272
+ method: "DELETE",
3273
+ path: "/v1/organizations/{org_id}/crm/companies/{company_id}"
3274
+ },
3275
+ listCrmContacts: {
3276
+ method: "GET",
3277
+ path: "/v1/organizations/{org_id}/crm/contacts"
3278
+ },
3279
+ createCrmContact: {
3280
+ method: "POST",
3281
+ path: "/v1/organizations/{org_id}/crm/contacts"
3282
+ },
3283
+ getCrmContact: {
3284
+ method: "GET",
3285
+ path: "/v1/organizations/{org_id}/crm/contacts/{contact_id}"
3286
+ },
3287
+ updateCrmContact: {
3288
+ method: "PUT",
3289
+ path: "/v1/organizations/{org_id}/crm/contacts/{contact_id}"
3290
+ },
3291
+ deleteCrmContact: {
3292
+ method: "DELETE",
3293
+ path: "/v1/organizations/{org_id}/crm/contacts/{contact_id}"
3294
+ },
3295
+ listCrmDeals: {
3296
+ method: "GET",
3297
+ path: "/v1/organizations/{org_id}/crm/deals"
3298
+ },
3299
+ createCrmDeal: {
3300
+ method: "POST",
3301
+ path: "/v1/organizations/{org_id}/crm/deals"
3302
+ },
3303
+ getCrmPipeline: {
3304
+ method: "GET",
3305
+ path: "/v1/organizations/{org_id}/crm/pipeline"
3306
+ },
3307
+ getCrmDeal: {
3308
+ method: "GET",
3309
+ path: "/v1/organizations/{org_id}/crm/deals/{deal_id}"
3310
+ },
3311
+ updateCrmDeal: {
3312
+ method: "PUT",
3313
+ path: "/v1/organizations/{org_id}/crm/deals/{deal_id}"
3314
+ },
3315
+ deleteCrmDeal: {
3316
+ method: "DELETE",
3317
+ path: "/v1/organizations/{org_id}/crm/deals/{deal_id}"
3318
+ },
3319
+ listCrmResearchTasks: {
3320
+ method: "GET",
3321
+ path: "/v1/organizations/{org_id}/crm/research-tasks"
3322
+ },
3323
+ createCrmResearchTask: {
3324
+ method: "POST",
3325
+ path: "/v1/organizations/{org_id}/crm/research-tasks"
3326
+ },
3327
+ getCrmResearchTask: {
3328
+ method: "GET",
3329
+ path: "/v1/organizations/{org_id}/crm/research-tasks/{task_id}"
3330
+ },
3331
+ cancelCrmResearchTask: {
3332
+ method: "POST",
3333
+ path: "/v1/organizations/{org_id}/crm/research-tasks/{task_id}/cancel"
3334
+ },
3335
+ getCrmContext: {
3336
+ method: "GET",
3337
+ path: "/v1/organizations/{org_id}/crm/context"
3338
+ },
3339
+ updateCrmContext: {
3340
+ method: "PUT",
3341
+ path: "/v1/organizations/{org_id}/crm/context"
3342
+ },
3343
+ approveCrmResearchTask: {
3344
+ method: "POST",
3345
+ path: "/v1/organizations/{org_id}/crm/research-tasks/{task_id}/approve"
3346
+ },
3347
+ listCrmArtifacts: {
3348
+ method: "GET",
3349
+ path: "/v1/organizations/{org_id}/crm/artifacts"
3350
+ },
3351
+ getCrmArtifact: {
3352
+ method: "GET",
3353
+ path: "/v1/organizations/{org_id}/crm/artifacts/{artifact_id}"
3354
+ },
3355
+ listCrmActivities: {
3356
+ method: "GET",
3357
+ path: "/v1/organizations/{org_id}/crm/activities"
3358
+ }
3359
+ },
2275
3360
  databases: {
2276
3361
  listDatabases: {
2277
3362
  method: "GET",
@@ -2332,40 +3417,46 @@ Object.defineProperty(exports, '__esModule', { value: true });
2332
3417
  path: "/v1/organizations/{org_id}/self-host-enrollments/{enrollment_id}/rotate"
2333
3418
  }
2334
3419
  },
2335
- migrations: {
2336
- lintMigration: {
2337
- method: "POST",
2338
- path: "/v1/projects/{project_id}/migrations:lint"
2339
- }
2340
- },
2341
- policies: {
2342
- listPolicyProfiles: {
3420
+ honeytokens: {
3421
+ listHoneytokens: {
2343
3422
  method: "GET",
2344
- path: "/v1/projects/{project_id}/policies"
3423
+ path: "/v1/projects/{project_id}/honeytokens"
2345
3424
  },
2346
- createPolicyProfile: {
3425
+ createHoneytoken: {
2347
3426
  method: "POST",
2348
- path: "/v1/projects/{project_id}/policies"
3427
+ path: "/v1/projects/{project_id}/honeytokens"
2349
3428
  },
2350
- getPolicyProfile: {
3429
+ getHoneytoken: {
2351
3430
  method: "GET",
2352
- path: "/v1/projects/{project_id}/policies/{policy_id}"
3431
+ path: "/v1/projects/{project_id}/honeytokens/{honeytoken_id}"
2353
3432
  },
2354
- updatePolicyProfile: {
3433
+ updateHoneytoken: {
2355
3434
  method: "PUT",
2356
- path: "/v1/projects/{project_id}/policies/{policy_id}"
3435
+ path: "/v1/projects/{project_id}/honeytokens/{honeytoken_id}"
2357
3436
  },
2358
- deletePolicyProfile: {
3437
+ deleteHoneytoken: {
2359
3438
  method: "DELETE",
2360
- path: "/v1/projects/{project_id}/policies/{policy_id}"
2361
- },
2362
- dryEvalPolicy: {
3439
+ path: "/v1/projects/{project_id}/honeytokens/{honeytoken_id}"
3440
+ }
3441
+ },
3442
+ migrations: {
3443
+ lintMigration: {
2363
3444
  method: "POST",
2364
- path: "/v1/projects/{project_id}/policy-evaluations"
3445
+ path: "/v1/projects/{project_id}/migrations:lint"
3446
+ }
3447
+ },
3448
+ schemaAnnotations: {
3449
+ listSchemaAnnotations: {
3450
+ method: "GET",
3451
+ path: "/v1/projects/{project_id}/schema-annotations"
2365
3452
  },
2366
- replayPolicy: {
2367
- method: "POST",
2368
- path: "/v1/projects/{project_id}/policy-replays"
3453
+ putSchemaAnnotation: {
3454
+ method: "PUT",
3455
+ path: "/v1/projects/{project_id}/schema-annotations"
3456
+ },
3457
+ deleteSchemaAnnotation: {
3458
+ method: "DELETE",
3459
+ path: "/v1/projects/{project_id}/schema-annotations"
2369
3460
  }
2370
3461
  },
2371
3462
  support: {
@@ -2459,6 +3550,11 @@ const operationsByPath = {
2459
3550
  path: "/v1/projects/{project_id}/agents/{agent_id}/rotate",
2460
3551
  operationId: "rotateAgentCredential"
2461
3552
  },
3553
+ "POST /v1/projects/{project_id}/agents/{agent_id}/policy-recommendation": {
3554
+ method: "POST",
3555
+ path: "/v1/projects/{project_id}/agents/{agent_id}/policy-recommendation",
3556
+ operationId: "recommendAgentPolicy"
3557
+ },
2462
3558
  "GET /v1/projects/{project_id}/anomalies": {
2463
3559
  method: "GET",
2464
3560
  path: "/v1/projects/{project_id}/anomalies",
@@ -2544,6 +3640,136 @@ const operationsByPath = {
2544
3640
  path: "/v1/projects/{project_id}/databases/{database_id}/cache-rules/{query_hash}",
2545
3641
  operationId: "updateCacheRule"
2546
3642
  },
3643
+ "GET /v1/organizations/{org_id}/crm/companies": {
3644
+ method: "GET",
3645
+ path: "/v1/organizations/{org_id}/crm/companies",
3646
+ operationId: "listCrmCompanies"
3647
+ },
3648
+ "POST /v1/organizations/{org_id}/crm/companies": {
3649
+ method: "POST",
3650
+ path: "/v1/organizations/{org_id}/crm/companies",
3651
+ operationId: "createCrmCompany"
3652
+ },
3653
+ "GET /v1/organizations/{org_id}/crm/companies/{company_id}": {
3654
+ method: "GET",
3655
+ path: "/v1/organizations/{org_id}/crm/companies/{company_id}",
3656
+ operationId: "getCrmCompany"
3657
+ },
3658
+ "PUT /v1/organizations/{org_id}/crm/companies/{company_id}": {
3659
+ method: "PUT",
3660
+ path: "/v1/organizations/{org_id}/crm/companies/{company_id}",
3661
+ operationId: "updateCrmCompany"
3662
+ },
3663
+ "DELETE /v1/organizations/{org_id}/crm/companies/{company_id}": {
3664
+ method: "DELETE",
3665
+ path: "/v1/organizations/{org_id}/crm/companies/{company_id}",
3666
+ operationId: "deleteCrmCompany"
3667
+ },
3668
+ "GET /v1/organizations/{org_id}/crm/contacts": {
3669
+ method: "GET",
3670
+ path: "/v1/organizations/{org_id}/crm/contacts",
3671
+ operationId: "listCrmContacts"
3672
+ },
3673
+ "POST /v1/organizations/{org_id}/crm/contacts": {
3674
+ method: "POST",
3675
+ path: "/v1/organizations/{org_id}/crm/contacts",
3676
+ operationId: "createCrmContact"
3677
+ },
3678
+ "GET /v1/organizations/{org_id}/crm/contacts/{contact_id}": {
3679
+ method: "GET",
3680
+ path: "/v1/organizations/{org_id}/crm/contacts/{contact_id}",
3681
+ operationId: "getCrmContact"
3682
+ },
3683
+ "PUT /v1/organizations/{org_id}/crm/contacts/{contact_id}": {
3684
+ method: "PUT",
3685
+ path: "/v1/organizations/{org_id}/crm/contacts/{contact_id}",
3686
+ operationId: "updateCrmContact"
3687
+ },
3688
+ "DELETE /v1/organizations/{org_id}/crm/contacts/{contact_id}": {
3689
+ method: "DELETE",
3690
+ path: "/v1/organizations/{org_id}/crm/contacts/{contact_id}",
3691
+ operationId: "deleteCrmContact"
3692
+ },
3693
+ "GET /v1/organizations/{org_id}/crm/deals": {
3694
+ method: "GET",
3695
+ path: "/v1/organizations/{org_id}/crm/deals",
3696
+ operationId: "listCrmDeals"
3697
+ },
3698
+ "POST /v1/organizations/{org_id}/crm/deals": {
3699
+ method: "POST",
3700
+ path: "/v1/organizations/{org_id}/crm/deals",
3701
+ operationId: "createCrmDeal"
3702
+ },
3703
+ "GET /v1/organizations/{org_id}/crm/pipeline": {
3704
+ method: "GET",
3705
+ path: "/v1/organizations/{org_id}/crm/pipeline",
3706
+ operationId: "getCrmPipeline"
3707
+ },
3708
+ "GET /v1/organizations/{org_id}/crm/deals/{deal_id}": {
3709
+ method: "GET",
3710
+ path: "/v1/organizations/{org_id}/crm/deals/{deal_id}",
3711
+ operationId: "getCrmDeal"
3712
+ },
3713
+ "PUT /v1/organizations/{org_id}/crm/deals/{deal_id}": {
3714
+ method: "PUT",
3715
+ path: "/v1/organizations/{org_id}/crm/deals/{deal_id}",
3716
+ operationId: "updateCrmDeal"
3717
+ },
3718
+ "DELETE /v1/organizations/{org_id}/crm/deals/{deal_id}": {
3719
+ method: "DELETE",
3720
+ path: "/v1/organizations/{org_id}/crm/deals/{deal_id}",
3721
+ operationId: "deleteCrmDeal"
3722
+ },
3723
+ "GET /v1/organizations/{org_id}/crm/research-tasks": {
3724
+ method: "GET",
3725
+ path: "/v1/organizations/{org_id}/crm/research-tasks",
3726
+ operationId: "listCrmResearchTasks"
3727
+ },
3728
+ "POST /v1/organizations/{org_id}/crm/research-tasks": {
3729
+ method: "POST",
3730
+ path: "/v1/organizations/{org_id}/crm/research-tasks",
3731
+ operationId: "createCrmResearchTask"
3732
+ },
3733
+ "GET /v1/organizations/{org_id}/crm/research-tasks/{task_id}": {
3734
+ method: "GET",
3735
+ path: "/v1/organizations/{org_id}/crm/research-tasks/{task_id}",
3736
+ operationId: "getCrmResearchTask"
3737
+ },
3738
+ "POST /v1/organizations/{org_id}/crm/research-tasks/{task_id}/cancel": {
3739
+ method: "POST",
3740
+ path: "/v1/organizations/{org_id}/crm/research-tasks/{task_id}/cancel",
3741
+ operationId: "cancelCrmResearchTask"
3742
+ },
3743
+ "GET /v1/organizations/{org_id}/crm/context": {
3744
+ method: "GET",
3745
+ path: "/v1/organizations/{org_id}/crm/context",
3746
+ operationId: "getCrmContext"
3747
+ },
3748
+ "PUT /v1/organizations/{org_id}/crm/context": {
3749
+ method: "PUT",
3750
+ path: "/v1/organizations/{org_id}/crm/context",
3751
+ operationId: "updateCrmContext"
3752
+ },
3753
+ "POST /v1/organizations/{org_id}/crm/research-tasks/{task_id}/approve": {
3754
+ method: "POST",
3755
+ path: "/v1/organizations/{org_id}/crm/research-tasks/{task_id}/approve",
3756
+ operationId: "approveCrmResearchTask"
3757
+ },
3758
+ "GET /v1/organizations/{org_id}/crm/artifacts": {
3759
+ method: "GET",
3760
+ path: "/v1/organizations/{org_id}/crm/artifacts",
3761
+ operationId: "listCrmArtifacts"
3762
+ },
3763
+ "GET /v1/organizations/{org_id}/crm/artifacts/{artifact_id}": {
3764
+ method: "GET",
3765
+ path: "/v1/organizations/{org_id}/crm/artifacts/{artifact_id}",
3766
+ operationId: "getCrmArtifact"
3767
+ },
3768
+ "GET /v1/organizations/{org_id}/crm/activities": {
3769
+ method: "GET",
3770
+ path: "/v1/organizations/{org_id}/crm/activities",
3771
+ operationId: "listCrmActivities"
3772
+ },
2547
3773
  "GET /v1/projects/{project_id}/databases": {
2548
3774
  method: "GET",
2549
3775
  path: "/v1/projects/{project_id}/databases",
@@ -2609,6 +3835,31 @@ const operationsByPath = {
2609
3835
  path: "/v1/health",
2610
3836
  operationId: "getHealth"
2611
3837
  },
3838
+ "GET /v1/projects/{project_id}/honeytokens": {
3839
+ method: "GET",
3840
+ path: "/v1/projects/{project_id}/honeytokens",
3841
+ operationId: "listHoneytokens"
3842
+ },
3843
+ "POST /v1/projects/{project_id}/honeytokens": {
3844
+ method: "POST",
3845
+ path: "/v1/projects/{project_id}/honeytokens",
3846
+ operationId: "createHoneytoken"
3847
+ },
3848
+ "GET /v1/projects/{project_id}/honeytokens/{honeytoken_id}": {
3849
+ method: "GET",
3850
+ path: "/v1/projects/{project_id}/honeytokens/{honeytoken_id}",
3851
+ operationId: "getHoneytoken"
3852
+ },
3853
+ "PUT /v1/projects/{project_id}/honeytokens/{honeytoken_id}": {
3854
+ method: "PUT",
3855
+ path: "/v1/projects/{project_id}/honeytokens/{honeytoken_id}",
3856
+ operationId: "updateHoneytoken"
3857
+ },
3858
+ "DELETE /v1/projects/{project_id}/honeytokens/{honeytoken_id}": {
3859
+ method: "DELETE",
3860
+ path: "/v1/projects/{project_id}/honeytokens/{honeytoken_id}",
3861
+ operationId: "deleteHoneytoken"
3862
+ },
2612
3863
  "GET /v1/projects/{project_id}/insights": {
2613
3864
  method: "GET",
2614
3865
  path: "/v1/projects/{project_id}/insights",
@@ -2719,6 +3970,21 @@ const operationsByPath = {
2719
3970
  path: "/v1/databases/{database_id}/replicas/{replica_id}",
2720
3971
  operationId: "deleteReplica"
2721
3972
  },
3973
+ "GET /v1/projects/{project_id}/schema-annotations": {
3974
+ method: "GET",
3975
+ path: "/v1/projects/{project_id}/schema-annotations",
3976
+ operationId: "listSchemaAnnotations"
3977
+ },
3978
+ "PUT /v1/projects/{project_id}/schema-annotations": {
3979
+ method: "PUT",
3980
+ path: "/v1/projects/{project_id}/schema-annotations",
3981
+ operationId: "putSchemaAnnotation"
3982
+ },
3983
+ "DELETE /v1/projects/{project_id}/schema-annotations": {
3984
+ method: "DELETE",
3985
+ path: "/v1/projects/{project_id}/schema-annotations",
3986
+ operationId: "deleteSchemaAnnotation"
3987
+ },
2722
3988
  "GET /v1/organizations/{org_id}/self-host-enrollments": {
2723
3989
  method: "GET",
2724
3990
  path: "/v1/organizations/{org_id}/self-host-enrollments",