pgbeam 0.3.11 → 0.3.13
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/dist/index.cjs +89 -24
- package/dist/index.d.cts +1999 -1159
- package/dist/index.d.mts +1999 -1159
- package/dist/index.mjs +89 -24
- package/dist/operations.cjs +263 -24
- package/dist/operations.d.cts +1538 -886
- package/dist/operations.d.mts +1538 -886
- package/dist/operations.mjs +263 -24
- package/package.json +1 -1
package/dist/operations.d.mts
CHANGED
|
@@ -796,6 +796,609 @@ type RotateAgentCredentialRequestConfig = {
|
|
|
796
796
|
url: `/v1/projects/${string}/agents/${string}/rotate`;
|
|
797
797
|
};
|
|
798
798
|
|
|
799
|
+
/**
|
|
800
|
+
* Generated by Kubb (https://kubb.dev/).
|
|
801
|
+
* Do not edit manually.
|
|
802
|
+
*/
|
|
803
|
+
declare const maskingRuleKindEnum: {
|
|
804
|
+
readonly redact: "redact";
|
|
805
|
+
readonly null: "null";
|
|
806
|
+
readonly hash: "hash";
|
|
807
|
+
};
|
|
808
|
+
type MaskingRuleKindEnumKey = (typeof maskingRuleKindEnum)[keyof typeof maskingRuleKindEnum];
|
|
809
|
+
/**
|
|
810
|
+
* @description A column masking rule applied to agent query results.
|
|
811
|
+
* @type object
|
|
812
|
+
*/
|
|
813
|
+
type MaskingRule = {
|
|
814
|
+
/**
|
|
815
|
+
* @description Relation name, optionally schema-qualified (e.g. \"public.users\" or \"users\").
|
|
816
|
+
* @example users
|
|
817
|
+
* @type string
|
|
818
|
+
*/
|
|
819
|
+
table: string;
|
|
820
|
+
/**
|
|
821
|
+
* @description Column to mask.
|
|
822
|
+
* @example email
|
|
823
|
+
* @type string
|
|
824
|
+
*/
|
|
825
|
+
column: string;
|
|
826
|
+
/**
|
|
827
|
+
* @description How to mask. redact replaces with a token, null returns NULL, hash returns a SHA-256 hex.
|
|
828
|
+
* @type string
|
|
829
|
+
*/
|
|
830
|
+
kind: MaskingRuleKindEnumKey;
|
|
831
|
+
};
|
|
832
|
+
|
|
833
|
+
/**
|
|
834
|
+
* Generated by Kubb (https://kubb.dev/).
|
|
835
|
+
* Do not edit manually.
|
|
836
|
+
*/
|
|
837
|
+
/**
|
|
838
|
+
* @description A per-relation row filter. The predicate is a raw SQL boolean expression ANDed into the WHERE clause for the matching relation.
|
|
839
|
+
* @type object
|
|
840
|
+
*/
|
|
841
|
+
type RowFilter = {
|
|
842
|
+
/**
|
|
843
|
+
* @description Relation name, optionally schema-qualified (e.g. \"public.orders\").
|
|
844
|
+
* @example orders
|
|
845
|
+
* @type string
|
|
846
|
+
*/
|
|
847
|
+
table: string;
|
|
848
|
+
/**
|
|
849
|
+
* @description Raw SQL boolean expression ANDed into WHERE for this relation.
|
|
850
|
+
* @example tenant_id = current_setting('pgbeam.tenant')
|
|
851
|
+
* @type string
|
|
852
|
+
*/
|
|
853
|
+
predicate: string;
|
|
854
|
+
};
|
|
855
|
+
|
|
856
|
+
/**
|
|
857
|
+
* Generated by Kubb (https://kubb.dev/).
|
|
858
|
+
* Do not edit manually.
|
|
859
|
+
*/
|
|
860
|
+
/**
|
|
861
|
+
* @description Per-statement-kind allow/deny lists. Empty allow means all kinds permitted by the access mode.
|
|
862
|
+
* @type object
|
|
863
|
+
*/
|
|
864
|
+
type StatementRules = {
|
|
865
|
+
/**
|
|
866
|
+
* @description Allowed statement kinds (select, insert, update, delete, ddl, copy, set, show, explain, transaction).
|
|
867
|
+
* @type array | undefined
|
|
868
|
+
*/
|
|
869
|
+
allow?: string[];
|
|
870
|
+
/**
|
|
871
|
+
* @description Denied statement kinds (takes precedence over allow).
|
|
872
|
+
* @type array | undefined
|
|
873
|
+
*/
|
|
874
|
+
deny?: string[];
|
|
875
|
+
};
|
|
876
|
+
|
|
877
|
+
/**
|
|
878
|
+
* Generated by Kubb (https://kubb.dev/).
|
|
879
|
+
* Do not edit manually.
|
|
880
|
+
*/
|
|
881
|
+
|
|
882
|
+
declare const policyProfileInputAccessModeEnum: {
|
|
883
|
+
readonly read_only: "read_only";
|
|
884
|
+
readonly read_write: "read_write";
|
|
885
|
+
};
|
|
886
|
+
type PolicyProfileInputAccessModeEnumKey = (typeof policyProfileInputAccessModeEnum)[keyof typeof policyProfileInputAccessModeEnum];
|
|
887
|
+
declare const policyProfileInputWriteModeEnum: {
|
|
888
|
+
readonly normal: "normal";
|
|
889
|
+
readonly rollback: "rollback";
|
|
890
|
+
readonly sandbox: "sandbox";
|
|
891
|
+
};
|
|
892
|
+
type PolicyProfileInputWriteModeEnumKey = (typeof policyProfileInputWriteModeEnum)[keyof typeof policyProfileInputWriteModeEnum];
|
|
893
|
+
declare const policyProfileInputApprovalModeEnum: {
|
|
894
|
+
readonly off: "off";
|
|
895
|
+
readonly writes: "writes";
|
|
896
|
+
readonly ddl: "ddl";
|
|
897
|
+
readonly all: "all";
|
|
898
|
+
};
|
|
899
|
+
type PolicyProfileInputApprovalModeEnumKey = (typeof policyProfileInputApprovalModeEnum)[keyof typeof policyProfileInputApprovalModeEnum];
|
|
900
|
+
declare const policyProfileInputMigrationSafetyEnum: {
|
|
901
|
+
readonly off: "off";
|
|
902
|
+
readonly warn: "warn";
|
|
903
|
+
readonly block: "block";
|
|
904
|
+
};
|
|
905
|
+
type PolicyProfileInputMigrationSafetyEnumKey = (typeof policyProfileInputMigrationSafetyEnum)[keyof typeof policyProfileInputMigrationSafetyEnum];
|
|
906
|
+
/**
|
|
907
|
+
* @description Mutable fields of a policy profile (used for create and update).
|
|
908
|
+
* @type object
|
|
909
|
+
*/
|
|
910
|
+
type PolicyProfileInput = {
|
|
911
|
+
/**
|
|
912
|
+
* @description Human-readable name for the policy profile.
|
|
913
|
+
* @minLength 1
|
|
914
|
+
* @maxLength 128
|
|
915
|
+
* @type string
|
|
916
|
+
*/
|
|
917
|
+
name: string;
|
|
918
|
+
/**
|
|
919
|
+
* @description read_only blocks all data and schema mutations.
|
|
920
|
+
* @default "read_only"
|
|
921
|
+
* @type string | undefined
|
|
922
|
+
*/
|
|
923
|
+
access_mode?: PolicyProfileInputAccessModeEnumKey;
|
|
924
|
+
/**
|
|
925
|
+
* @description Per-statement-kind allow/deny lists. Empty allow means all kinds permitted by the access mode.
|
|
926
|
+
* @type object | undefined
|
|
927
|
+
*/
|
|
928
|
+
statement_rules?: StatementRules;
|
|
929
|
+
/**
|
|
930
|
+
* @description If non-empty, only these relations are reachable.
|
|
931
|
+
* @type array | undefined
|
|
932
|
+
*/
|
|
933
|
+
table_allowlist?: string[];
|
|
934
|
+
/**
|
|
935
|
+
* @description Relations explicitly blocked.
|
|
936
|
+
* @type array | undefined
|
|
937
|
+
*/
|
|
938
|
+
table_denylist?: string[];
|
|
939
|
+
/**
|
|
940
|
+
* @description Column masking rules applied to query results.
|
|
941
|
+
* @type array | undefined
|
|
942
|
+
*/
|
|
943
|
+
masking_rules?: MaskingRule[];
|
|
944
|
+
/**
|
|
945
|
+
* @description Max queries per rolling hour window. 0 means unlimited.
|
|
946
|
+
* @minLength 0
|
|
947
|
+
* @default 0
|
|
948
|
+
* @type integer | undefined
|
|
949
|
+
*/
|
|
950
|
+
budget_queries_per_hour?: number;
|
|
951
|
+
/**
|
|
952
|
+
* @description Max queries per day window. 0 means unlimited.
|
|
953
|
+
* @minLength 0
|
|
954
|
+
* @default 0
|
|
955
|
+
* @type integer | undefined
|
|
956
|
+
*/
|
|
957
|
+
budget_queries_per_day?: number;
|
|
958
|
+
/**
|
|
959
|
+
* @description Max rows returned per query. 0 means unlimited.
|
|
960
|
+
* @minLength 0
|
|
961
|
+
* @default 0
|
|
962
|
+
* @type integer | undefined
|
|
963
|
+
*/
|
|
964
|
+
max_rows?: number;
|
|
965
|
+
/**
|
|
966
|
+
* @description Upstream statement timeout for agent sessions. 0 uses the project default.
|
|
967
|
+
* @minLength 0
|
|
968
|
+
* @default 0
|
|
969
|
+
* @type integer | undefined
|
|
970
|
+
*/
|
|
971
|
+
statement_timeout_ms?: number;
|
|
972
|
+
/**
|
|
973
|
+
* @description Per-relation row filters ANDed into agent reads.
|
|
974
|
+
* @type array | undefined
|
|
975
|
+
*/
|
|
976
|
+
row_filters?: RowFilter[];
|
|
977
|
+
/**
|
|
978
|
+
* @description How writes are handled. normal commits, rollback auto-rolls back, sandbox routes to an ephemeral branch.
|
|
979
|
+
* @default "normal"
|
|
980
|
+
* @type string | undefined
|
|
981
|
+
*/
|
|
982
|
+
write_mode?: PolicyProfileInputWriteModeEnumKey;
|
|
983
|
+
/**
|
|
984
|
+
* @description Which statement classes require human approval before execution.
|
|
985
|
+
* @default "off"
|
|
986
|
+
* @type string | undefined
|
|
987
|
+
*/
|
|
988
|
+
approval_mode?: PolicyProfileInputApprovalModeEnumKey;
|
|
989
|
+
/**
|
|
990
|
+
* @description Statements touching at most this many rows are auto-approved. 0 means none.
|
|
991
|
+
* @minLength 0
|
|
992
|
+
* @default 0
|
|
993
|
+
* @type integer | undefined
|
|
994
|
+
*/
|
|
995
|
+
approval_auto_max_rows?: number;
|
|
996
|
+
/**
|
|
997
|
+
* @description How long a held statement waits for a decision before expiring.
|
|
998
|
+
* @minLength 0
|
|
999
|
+
* @default 300
|
|
1000
|
+
* @type integer | undefined
|
|
1001
|
+
*/
|
|
1002
|
+
approval_timeout_seconds?: number;
|
|
1003
|
+
/**
|
|
1004
|
+
* @description Migration safety mode. warn surfaces findings, block refuses unsafe DDL.
|
|
1005
|
+
* @default "off"
|
|
1006
|
+
* @type string | undefined
|
|
1007
|
+
*/
|
|
1008
|
+
migration_safety?: PolicyProfileInputMigrationSafetyEnumKey;
|
|
1009
|
+
/**
|
|
1010
|
+
* @description Per-day egress budget in bytes. 0 means unlimited.
|
|
1011
|
+
* @minLength 0
|
|
1012
|
+
* @default 0
|
|
1013
|
+
* @type integer | undefined
|
|
1014
|
+
*/
|
|
1015
|
+
egress_bytes_per_day?: number;
|
|
1016
|
+
/**
|
|
1017
|
+
* @description Hard cap on rows a single write (INSERT/UPDATE/DELETE) may affect. A write whose affected-row count would exceed this is executed inside a transaction, checked, and rolled back so nothing persists, then blocked. Enforced independently of human approval. 0 means unlimited.
|
|
1018
|
+
* @minLength 0
|
|
1019
|
+
* @default 0
|
|
1020
|
+
* @type integer | undefined
|
|
1021
|
+
*/
|
|
1022
|
+
max_affected_rows?: number;
|
|
1023
|
+
};
|
|
1024
|
+
|
|
1025
|
+
/**
|
|
1026
|
+
* Generated by Kubb (https://kubb.dev/).
|
|
1027
|
+
* Do not edit manually.
|
|
1028
|
+
*/
|
|
1029
|
+
declare const dryEvalMaskedColumnKindEnum: {
|
|
1030
|
+
readonly redact: "redact";
|
|
1031
|
+
readonly null: "null";
|
|
1032
|
+
readonly hash: "hash";
|
|
1033
|
+
};
|
|
1034
|
+
type DryEvalMaskedColumnKindEnumKey = (typeof dryEvalMaskedColumnKindEnum)[keyof typeof dryEvalMaskedColumnKindEnum];
|
|
1035
|
+
/**
|
|
1036
|
+
* @description One result column that would be masked, with the mask kind applied.
|
|
1037
|
+
* @type object
|
|
1038
|
+
*/
|
|
1039
|
+
type DryEvalMaskedColumn = {
|
|
1040
|
+
/**
|
|
1041
|
+
* @description The output column name (post-alias) the client would see masked.
|
|
1042
|
+
* @example email
|
|
1043
|
+
* @type string
|
|
1044
|
+
*/
|
|
1045
|
+
column: string;
|
|
1046
|
+
/**
|
|
1047
|
+
* @description How the column is masked.
|
|
1048
|
+
* @type string
|
|
1049
|
+
*/
|
|
1050
|
+
kind: DryEvalMaskedColumnKindEnumKey;
|
|
1051
|
+
};
|
|
1052
|
+
|
|
1053
|
+
/**
|
|
1054
|
+
* Generated by Kubb (https://kubb.dev/).
|
|
1055
|
+
* Do not edit manually.
|
|
1056
|
+
*/
|
|
1057
|
+
|
|
1058
|
+
declare const dryEvalResultVerdictEnum: {
|
|
1059
|
+
readonly allow: "allow";
|
|
1060
|
+
readonly block: "block";
|
|
1061
|
+
readonly mask: "mask";
|
|
1062
|
+
readonly "row-filter": "row-filter";
|
|
1063
|
+
};
|
|
1064
|
+
type DryEvalResultVerdictEnumKey = (typeof dryEvalResultVerdictEnum)[keyof typeof dryEvalResultVerdictEnum];
|
|
1065
|
+
/**
|
|
1066
|
+
* @description The decision the proxy would reach for the supplied statement under the supplied policy. verdict is the headline outcome; the remaining fields detail why.
|
|
1067
|
+
* @type object
|
|
1068
|
+
*/
|
|
1069
|
+
type DryEvalResult = {
|
|
1070
|
+
/**
|
|
1071
|
+
* @description allow — permitted unchanged; block — rejected; mask — permitted but listed result columns are masked; row-filter — permitted but a WHERE predicate is injected (and any listed columns are also masked).
|
|
1072
|
+
* @type string
|
|
1073
|
+
*/
|
|
1074
|
+
verdict: DryEvalResultVerdictEnumKey;
|
|
1075
|
+
/**
|
|
1076
|
+
* @description Machine-readable decision tag. For a block, the blocking rule (e.g. read_only, table_denied, table_not_allowed, statement_denied, row_filter_unsafe). Otherwise \"ok\".
|
|
1077
|
+
* @example ok
|
|
1078
|
+
* @type string
|
|
1079
|
+
*/
|
|
1080
|
+
rule: string;
|
|
1081
|
+
/**
|
|
1082
|
+
* @description Human-readable explanation of the verdict.
|
|
1083
|
+
* @type string
|
|
1084
|
+
*/
|
|
1085
|
+
reason: string;
|
|
1086
|
+
/**
|
|
1087
|
+
* @description What the author could do instead (present on block verdicts).
|
|
1088
|
+
* @type string | undefined
|
|
1089
|
+
*/
|
|
1090
|
+
hint?: string;
|
|
1091
|
+
/**
|
|
1092
|
+
* @description Result columns that would be masked. Present on mask/row-filter verdicts.
|
|
1093
|
+
* @type array | undefined
|
|
1094
|
+
*/
|
|
1095
|
+
masked_columns?: DryEvalMaskedColumn[];
|
|
1096
|
+
/**
|
|
1097
|
+
* @description The row-filter predicate ANDed into the statement\'s WHERE clause.
|
|
1098
|
+
* @example tenant_id = current_setting('pgbeam.tenant')
|
|
1099
|
+
* @type string | undefined
|
|
1100
|
+
*/
|
|
1101
|
+
row_filter_predicate?: string;
|
|
1102
|
+
/**
|
|
1103
|
+
* @description The statement as it would be sent upstream after row-filter injection.
|
|
1104
|
+
* @type string | undefined
|
|
1105
|
+
*/
|
|
1106
|
+
rewritten_sql?: string;
|
|
1107
|
+
/**
|
|
1108
|
+
* @description Informational caveats about stateful enforcement a single-statement preview cannot model (per-region budgets, approvals, write-mode routing).
|
|
1109
|
+
* @type array | undefined
|
|
1110
|
+
*/
|
|
1111
|
+
notes?: string[];
|
|
1112
|
+
};
|
|
1113
|
+
|
|
1114
|
+
/**
|
|
1115
|
+
* Generated by Kubb (https://kubb.dev/).
|
|
1116
|
+
* Do not edit manually.
|
|
1117
|
+
*/
|
|
1118
|
+
|
|
1119
|
+
declare const policyReplayItemChangeEnum: {
|
|
1120
|
+
readonly newly_blocked: "newly_blocked";
|
|
1121
|
+
readonly newly_allowed: "newly_allowed";
|
|
1122
|
+
readonly still_allowed: "still_allowed";
|
|
1123
|
+
readonly still_blocked: "still_blocked";
|
|
1124
|
+
};
|
|
1125
|
+
type PolicyReplayItemChangeEnumKey = (typeof policyReplayItemChangeEnum)[keyof typeof policyReplayItemChangeEnum];
|
|
1126
|
+
/**
|
|
1127
|
+
* @description One distinct recorded query and the decision the candidate policy would reach for it.
|
|
1128
|
+
* @type object
|
|
1129
|
+
*/
|
|
1130
|
+
type PolicyReplayItem = {
|
|
1131
|
+
/**
|
|
1132
|
+
* @description Normalized query hash identifying this statement shape.
|
|
1133
|
+
* @type string
|
|
1134
|
+
*/
|
|
1135
|
+
query_hash: string;
|
|
1136
|
+
/**
|
|
1137
|
+
* @description The recorded statement (normalized, literals replaced with $N placeholders), from its most recent occurrence.
|
|
1138
|
+
* @type string
|
|
1139
|
+
*/
|
|
1140
|
+
sql: string;
|
|
1141
|
+
/**
|
|
1142
|
+
* @description Statement kind (select, insert, update, delete, ddl, ...).
|
|
1143
|
+
* @type string | undefined
|
|
1144
|
+
*/
|
|
1145
|
+
statement_kind?: string;
|
|
1146
|
+
/**
|
|
1147
|
+
* @description How many recorded entries share this query shape in the window.
|
|
1148
|
+
* @type integer
|
|
1149
|
+
*/
|
|
1150
|
+
occurrences: number;
|
|
1151
|
+
/**
|
|
1152
|
+
* @description Oldest occurrence in the window.
|
|
1153
|
+
* @type string
|
|
1154
|
+
*/
|
|
1155
|
+
first_seen: string;
|
|
1156
|
+
/**
|
|
1157
|
+
* @description Newest occurrence in the window.
|
|
1158
|
+
* @type string
|
|
1159
|
+
*/
|
|
1160
|
+
last_seen: string;
|
|
1161
|
+
/**
|
|
1162
|
+
* @description The most recent recorded outcome for this query (query, masked, truncated, or blocked).
|
|
1163
|
+
* @type string
|
|
1164
|
+
*/
|
|
1165
|
+
recorded_event: string;
|
|
1166
|
+
/**
|
|
1167
|
+
* @description The decision rule recorded with a blocked outcome.
|
|
1168
|
+
* @type string | undefined
|
|
1169
|
+
*/
|
|
1170
|
+
recorded_rule?: string;
|
|
1171
|
+
/**
|
|
1172
|
+
* @description How the candidate decision compares to the recorded outcome. newly_blocked and newly_allowed are the changes worth reviewing before rollout; still_allowed and still_blocked are unchanged.
|
|
1173
|
+
* @type string
|
|
1174
|
+
*/
|
|
1175
|
+
change: PolicyReplayItemChangeEnumKey;
|
|
1176
|
+
/**
|
|
1177
|
+
* @description The decision the proxy would reach for the supplied statement under the supplied policy. verdict is the headline outcome; the remaining fields detail why.
|
|
1178
|
+
* @type object
|
|
1179
|
+
*/
|
|
1180
|
+
result: DryEvalResult;
|
|
1181
|
+
};
|
|
1182
|
+
|
|
1183
|
+
/**
|
|
1184
|
+
* Generated by Kubb (https://kubb.dev/).
|
|
1185
|
+
* Do not edit manually.
|
|
1186
|
+
*/
|
|
1187
|
+
/**
|
|
1188
|
+
* @description Aggregate outcome of a policy replay.
|
|
1189
|
+
* @type object
|
|
1190
|
+
*/
|
|
1191
|
+
type PolicyReplaySummary = {
|
|
1192
|
+
/**
|
|
1193
|
+
* @description Recorded audit entries covered by the replayed queries.
|
|
1194
|
+
* @type integer
|
|
1195
|
+
*/
|
|
1196
|
+
entries_scanned: number;
|
|
1197
|
+
/**
|
|
1198
|
+
* @description Distinct normalized queries found in the window (capped at limit).
|
|
1199
|
+
* @type integer
|
|
1200
|
+
*/
|
|
1201
|
+
distinct_queries: number;
|
|
1202
|
+
/**
|
|
1203
|
+
* @description Distinct queries actually evaluated against the candidate policy.
|
|
1204
|
+
* @type integer
|
|
1205
|
+
*/
|
|
1206
|
+
evaluated: number;
|
|
1207
|
+
/**
|
|
1208
|
+
* @description Queries the candidate policy would allow unchanged.
|
|
1209
|
+
* @type integer
|
|
1210
|
+
*/
|
|
1211
|
+
would_allow: number;
|
|
1212
|
+
/**
|
|
1213
|
+
* @description Queries the candidate policy would block.
|
|
1214
|
+
* @type integer
|
|
1215
|
+
*/
|
|
1216
|
+
would_block: number;
|
|
1217
|
+
/**
|
|
1218
|
+
* @description Queries the candidate policy would mask result columns on.
|
|
1219
|
+
* @type integer
|
|
1220
|
+
*/
|
|
1221
|
+
would_mask: number;
|
|
1222
|
+
/**
|
|
1223
|
+
* @description Queries the candidate policy would inject a row filter into.
|
|
1224
|
+
* @type integer
|
|
1225
|
+
*/
|
|
1226
|
+
would_row_filter: number;
|
|
1227
|
+
/**
|
|
1228
|
+
* @description Queries that executed under the recorded policy but the candidate policy would block.
|
|
1229
|
+
* @type integer
|
|
1230
|
+
*/
|
|
1231
|
+
newly_blocked: number;
|
|
1232
|
+
/**
|
|
1233
|
+
* @description Queries that were blocked when recorded but the candidate policy would permit.
|
|
1234
|
+
* @type integer
|
|
1235
|
+
*/
|
|
1236
|
+
newly_allowed: number;
|
|
1237
|
+
/**
|
|
1238
|
+
* @description Distinct queries skipped because the stored statement was truncated at record time and can no longer be parsed faithfully.
|
|
1239
|
+
* @type integer
|
|
1240
|
+
*/
|
|
1241
|
+
skipped_unparseable: number;
|
|
1242
|
+
/**
|
|
1243
|
+
* @description True when the window contained more distinct queries than limit; only the newest were replayed.
|
|
1244
|
+
* @type boolean
|
|
1245
|
+
*/
|
|
1246
|
+
truncated: boolean;
|
|
1247
|
+
};
|
|
1248
|
+
|
|
1249
|
+
/**
|
|
1250
|
+
* Generated by Kubb (https://kubb.dev/).
|
|
1251
|
+
* Do not edit manually.
|
|
1252
|
+
*/
|
|
1253
|
+
|
|
1254
|
+
/**
|
|
1255
|
+
* @description The outcome of replaying recorded agent traffic against a candidate policy: an aggregate summary plus per-query decisions, changes first.
|
|
1256
|
+
* @type object
|
|
1257
|
+
*/
|
|
1258
|
+
type PolicyReplayResult = {
|
|
1259
|
+
/**
|
|
1260
|
+
* @description Aggregate outcome of a policy replay.
|
|
1261
|
+
* @type object
|
|
1262
|
+
*/
|
|
1263
|
+
summary: PolicyReplaySummary;
|
|
1264
|
+
/**
|
|
1265
|
+
* @description Per-query replay decisions, ordered changes first (newly blocked, then newly allowed), then by occurrence count.
|
|
1266
|
+
* @type array
|
|
1267
|
+
*/
|
|
1268
|
+
items: PolicyReplayItem[];
|
|
1269
|
+
};
|
|
1270
|
+
|
|
1271
|
+
/**
|
|
1272
|
+
* Generated by Kubb (https://kubb.dev/).
|
|
1273
|
+
* Do not edit manually.
|
|
1274
|
+
*/
|
|
1275
|
+
|
|
1276
|
+
/**
|
|
1277
|
+
* @description A least-privilege policy derived from an agent credential\'s recorded audit history, together with the replay diff that proves the candidate would not newly block any statement the credential legitimately ran. Advisory only: this endpoint never creates, updates, or otherwise mutates a policy or a credential. A good recommendation has replay.summary.newly_blocked == 0.
|
|
1278
|
+
* @type object
|
|
1279
|
+
*/
|
|
1280
|
+
type PolicyRecommendation = {
|
|
1281
|
+
/**
|
|
1282
|
+
* @description True when there was enough parseable, executed traffic to derive a candidate. When false, candidate and replay are omitted and message explains why no recommendation could be made.
|
|
1283
|
+
* @type boolean
|
|
1284
|
+
*/
|
|
1285
|
+
sufficient_history: boolean;
|
|
1286
|
+
/**
|
|
1287
|
+
* @description Present when sufficient_history is false; a clear explanation of why no recommendation could be produced (e.g. no executed traffic in the window).
|
|
1288
|
+
* @type string | undefined
|
|
1289
|
+
*/
|
|
1290
|
+
message?: string;
|
|
1291
|
+
/**
|
|
1292
|
+
* @description Mutable fields of a policy profile (used for create and update).
|
|
1293
|
+
* @type object | undefined
|
|
1294
|
+
*/
|
|
1295
|
+
candidate?: PolicyProfileInput;
|
|
1296
|
+
/**
|
|
1297
|
+
* @description The outcome of replaying recorded agent traffic against a candidate policy: an aggregate summary plus per-query decisions, changes first.
|
|
1298
|
+
* @type object | undefined
|
|
1299
|
+
*/
|
|
1300
|
+
replay?: PolicyReplayResult;
|
|
1301
|
+
/**
|
|
1302
|
+
* @description Distinct executed query shapes the candidate was derived from (blocked attempts are excluded from derivation).
|
|
1303
|
+
* @type integer
|
|
1304
|
+
*/
|
|
1305
|
+
observed_queries: number;
|
|
1306
|
+
/**
|
|
1307
|
+
* @description Recorded audit entries covered by the analyzed window.
|
|
1308
|
+
* @type integer
|
|
1309
|
+
*/
|
|
1310
|
+
observed_entries: number;
|
|
1311
|
+
/**
|
|
1312
|
+
* @description Start of the analyzed traffic window (inclusive).
|
|
1313
|
+
* @type string
|
|
1314
|
+
*/
|
|
1315
|
+
window_start: string;
|
|
1316
|
+
/**
|
|
1317
|
+
* @description End of the analyzed traffic window (exclusive).
|
|
1318
|
+
* @type string
|
|
1319
|
+
*/
|
|
1320
|
+
window_end: string;
|
|
1321
|
+
/**
|
|
1322
|
+
* @description Human-readable rationale for each tightening decision (e.g. why the candidate was downgraded to read-only, or how max_rows was chosen).
|
|
1323
|
+
* @type array | undefined
|
|
1324
|
+
*/
|
|
1325
|
+
notes?: string[];
|
|
1326
|
+
};
|
|
1327
|
+
|
|
1328
|
+
/**
|
|
1329
|
+
* Generated by Kubb (https://kubb.dev/).
|
|
1330
|
+
* Do not edit manually.
|
|
1331
|
+
*/
|
|
1332
|
+
/**
|
|
1333
|
+
* @description Optional parameters for a least-privilege policy recommendation. Every field is optional; an empty body analyzes the last 30 days of the credential\'s audit history.
|
|
1334
|
+
* @type object
|
|
1335
|
+
*/
|
|
1336
|
+
type PolicyRecommendationInput = {
|
|
1337
|
+
/**
|
|
1338
|
+
* @description How many days of recorded audit history to analyze.
|
|
1339
|
+
* @minLength 1
|
|
1340
|
+
* @maxLength 365
|
|
1341
|
+
* @default 30
|
|
1342
|
+
* @type integer | undefined
|
|
1343
|
+
*/
|
|
1344
|
+
lookback_days?: number;
|
|
1345
|
+
/**
|
|
1346
|
+
* @description Maximum number of distinct query shapes to analyze and replay, newest first. Traffic is deduplicated by normalized query hash.
|
|
1347
|
+
* @minLength 1
|
|
1348
|
+
* @maxLength 500
|
|
1349
|
+
* @default 200
|
|
1350
|
+
* @type integer | undefined
|
|
1351
|
+
*/
|
|
1352
|
+
limit?: number;
|
|
1353
|
+
};
|
|
1354
|
+
|
|
1355
|
+
/**
|
|
1356
|
+
* Generated by Kubb (https://kubb.dev/).
|
|
1357
|
+
* Do not edit manually.
|
|
1358
|
+
*/
|
|
1359
|
+
|
|
1360
|
+
/**
|
|
1361
|
+
* @description Unique project identifier (prefixed, e.g. prj_xxx).
|
|
1362
|
+
* @pattern ^[a-zA-Z0-9_.-]+$
|
|
1363
|
+
* @type string
|
|
1364
|
+
*/
|
|
1365
|
+
type RecommendAgentPolicyPathProjectId = string;
|
|
1366
|
+
/**
|
|
1367
|
+
* @description Unique agent credential identifier (prefixed, e.g. agt_xxx).
|
|
1368
|
+
* @pattern ^[a-zA-Z0-9_.-]+$
|
|
1369
|
+
* @type string
|
|
1370
|
+
*/
|
|
1371
|
+
type RecommendAgentPolicyPathAgentId = string;
|
|
1372
|
+
/**
|
|
1373
|
+
* @description A least-privilege policy derived from an agent credential\'s recorded audit history, together with the replay diff that proves the candidate would not newly block any statement the credential legitimately ran. Advisory only: this endpoint never creates, updates, or otherwise mutates a policy or a credential. A good recommendation has replay.summary.newly_blocked == 0.
|
|
1374
|
+
* @type object
|
|
1375
|
+
*/
|
|
1376
|
+
type RecommendAgentPolicyStatus200 = PolicyRecommendation;
|
|
1377
|
+
/**
|
|
1378
|
+
* @description Optional parameters for a least-privilege policy recommendation. Every field is optional; an empty body analyzes the last 30 days of the credential\'s audit history.
|
|
1379
|
+
* @type object | undefined
|
|
1380
|
+
*/
|
|
1381
|
+
type RecommendAgentPolicyData = PolicyRecommendationInput | undefined;
|
|
1382
|
+
/**
|
|
1383
|
+
* @type object
|
|
1384
|
+
*/
|
|
1385
|
+
type RecommendAgentPolicyRequestConfig = {
|
|
1386
|
+
data?: RecommendAgentPolicyData;
|
|
1387
|
+
/**
|
|
1388
|
+
* @type object
|
|
1389
|
+
*/
|
|
1390
|
+
pathParams: {
|
|
1391
|
+
project_id: RecommendAgentPolicyPathProjectId;
|
|
1392
|
+
agent_id: RecommendAgentPolicyPathAgentId;
|
|
1393
|
+
};
|
|
1394
|
+
queryParams?: never;
|
|
1395
|
+
headerParams?: never;
|
|
1396
|
+
/**
|
|
1397
|
+
* @type string
|
|
1398
|
+
*/
|
|
1399
|
+
url: `/v1/projects/${string}/agents/${string}/policy-recommendation`;
|
|
1400
|
+
};
|
|
1401
|
+
|
|
799
1402
|
/**
|
|
800
1403
|
* Generated by Kubb (https://kubb.dev/).
|
|
801
1404
|
* Do not edit manually.
|
|
@@ -4258,93 +4861,55 @@ type GetHealthStatus200 = HealthResponse;
|
|
|
4258
4861
|
* Generated by Kubb (https://kubb.dev/).
|
|
4259
4862
|
* Do not edit manually.
|
|
4260
4863
|
*/
|
|
4261
|
-
|
|
4262
|
-
|
|
4263
|
-
|
|
4264
|
-
*/
|
|
4265
|
-
type CacheSummary = {
|
|
4266
|
-
/**
|
|
4267
|
-
* @description Total number of cache hits in the selected time range.
|
|
4268
|
-
* @type integer
|
|
4269
|
-
*/
|
|
4270
|
-
total_hits: number;
|
|
4271
|
-
/**
|
|
4272
|
-
* @description Total number of cache misses in the selected time range.
|
|
4273
|
-
* @type integer
|
|
4274
|
-
*/
|
|
4275
|
-
total_misses: number;
|
|
4276
|
-
/**
|
|
4277
|
-
* @description Cache hit rate as a fraction (0.0 to 1.0).
|
|
4278
|
-
* @type number
|
|
4279
|
-
*/
|
|
4280
|
-
hit_rate: number;
|
|
4281
|
-
};
|
|
4282
|
-
|
|
4283
|
-
/**
|
|
4284
|
-
* Generated by Kubb (https://kubb.dev/).
|
|
4285
|
-
* Do not edit manually.
|
|
4286
|
-
*/
|
|
4287
|
-
/**
|
|
4288
|
-
* @description Aggregate latency metrics for the selected time range.
|
|
4289
|
-
* @type object
|
|
4290
|
-
*/
|
|
4291
|
-
type LatencySummary = {
|
|
4292
|
-
/**
|
|
4293
|
-
* @description Average latency in milliseconds across all queries.
|
|
4294
|
-
* @type number
|
|
4295
|
-
*/
|
|
4296
|
-
avg_ms: number;
|
|
4297
|
-
/**
|
|
4298
|
-
* @description P99 latency in milliseconds across all queries.
|
|
4299
|
-
* @type number
|
|
4300
|
-
*/
|
|
4301
|
-
p99_ms: number;
|
|
4864
|
+
declare const honeytokenActionEnum: {
|
|
4865
|
+
readonly audit_only: "audit_only";
|
|
4866
|
+
readonly kill: "kill";
|
|
4302
4867
|
};
|
|
4303
|
-
|
|
4304
|
-
/**
|
|
4305
|
-
* Generated by Kubb (https://kubb.dev/).
|
|
4306
|
-
* Do not edit manually.
|
|
4307
|
-
*/
|
|
4868
|
+
type HoneytokenActionEnumKey = (typeof honeytokenActionEnum)[keyof typeof honeytokenActionEnum];
|
|
4308
4869
|
/**
|
|
4309
|
-
* @description
|
|
4870
|
+
* @description A decoy (canary) relation. Any agent statement that references it is blocked (fail closed) and recorded as a canary_tripped audit event.\n
|
|
4310
4871
|
* @type object
|
|
4311
4872
|
*/
|
|
4312
|
-
type
|
|
4873
|
+
type Honeytoken = {
|
|
4313
4874
|
/**
|
|
4314
|
-
* @description
|
|
4875
|
+
* @description Unique honeytoken identifier.
|
|
4876
|
+
* @example hnt_01j9x8y7z6w5v4u3t2s1r0q9p8
|
|
4315
4877
|
* @type string
|
|
4316
4878
|
*/
|
|
4317
|
-
|
|
4879
|
+
id: string;
|
|
4318
4880
|
/**
|
|
4319
|
-
* @description
|
|
4881
|
+
* @description Project the honeytoken belongs to.
|
|
4882
|
+
* @example prj_01j9x8y7z6w5v4u3t2s1r0q9p8
|
|
4320
4883
|
* @type string
|
|
4321
4884
|
*/
|
|
4322
|
-
|
|
4885
|
+
project_id: string;
|
|
4323
4886
|
/**
|
|
4324
|
-
* @description
|
|
4325
|
-
* @
|
|
4887
|
+
* @description Optional schema. Null matches the unqualified/public form, mirroring the relation allowlist normalization.\n
|
|
4888
|
+
* @example public
|
|
4889
|
+
* @type string
|
|
4326
4890
|
*/
|
|
4327
|
-
|
|
4891
|
+
schema_name?: string | null;
|
|
4328
4892
|
/**
|
|
4329
|
-
* @description
|
|
4330
|
-
* @
|
|
4893
|
+
* @description Relation (table or view) name of the decoy.
|
|
4894
|
+
* @example customer_ssns
|
|
4895
|
+
* @type string
|
|
4331
4896
|
*/
|
|
4332
|
-
|
|
4897
|
+
relation_name: string;
|
|
4333
4898
|
/**
|
|
4334
|
-
* @description
|
|
4335
|
-
* @type
|
|
4899
|
+
* @description Response when tripped. audit_only blocks the statement, records the event, and fires webhooks. kill additionally disables the tripping credential via the kill-switch.\n
|
|
4900
|
+
* @type string
|
|
4336
4901
|
*/
|
|
4337
|
-
|
|
4902
|
+
action: HoneytokenActionEnumKey;
|
|
4338
4903
|
/**
|
|
4339
|
-
* @description
|
|
4340
|
-
* @type
|
|
4904
|
+
* @description When the honeytoken was registered.
|
|
4905
|
+
* @type string
|
|
4341
4906
|
*/
|
|
4342
|
-
|
|
4907
|
+
created_at: string;
|
|
4343
4908
|
/**
|
|
4344
|
-
* @description
|
|
4345
|
-
* @type
|
|
4909
|
+
* @description When the honeytoken was last updated.
|
|
4910
|
+
* @type string
|
|
4346
4911
|
*/
|
|
4347
|
-
|
|
4912
|
+
updated_at: string;
|
|
4348
4913
|
};
|
|
4349
4914
|
|
|
4350
4915
|
/**
|
|
@@ -4353,25 +4918,20 @@ type QueryInsight = {
|
|
|
4353
4918
|
*/
|
|
4354
4919
|
|
|
4355
4920
|
/**
|
|
4356
|
-
* @description
|
|
4921
|
+
* @description Cursor-paginated honeytokens for a project.
|
|
4357
4922
|
* @type object
|
|
4358
4923
|
*/
|
|
4359
|
-
type
|
|
4924
|
+
type ListHoneytokensResponse = {
|
|
4360
4925
|
/**
|
|
4361
|
-
* @description
|
|
4926
|
+
* @description Honeytokens returned for the current page.
|
|
4362
4927
|
* @type array
|
|
4363
4928
|
*/
|
|
4364
|
-
|
|
4365
|
-
/**
|
|
4366
|
-
* @description Aggregate cache performance metrics for the selected time range.
|
|
4367
|
-
* @type object
|
|
4368
|
-
*/
|
|
4369
|
-
cache: CacheSummary;
|
|
4929
|
+
honeytokens: Honeytoken[];
|
|
4370
4930
|
/**
|
|
4371
|
-
* @description
|
|
4372
|
-
* @type
|
|
4931
|
+
* @description Opaque token for cursor-based pagination.
|
|
4932
|
+
* @type string | undefined
|
|
4373
4933
|
*/
|
|
4374
|
-
|
|
4934
|
+
next_page_token?: string;
|
|
4375
4935
|
};
|
|
4376
4936
|
|
|
4377
4937
|
/**
|
|
@@ -4384,115 +4944,125 @@ type ProjectInsights = {
|
|
|
4384
4944
|
* @pattern ^[a-zA-Z0-9_.-]+$
|
|
4385
4945
|
* @type string
|
|
4386
4946
|
*/
|
|
4387
|
-
type
|
|
4388
|
-
/**
|
|
4389
|
-
* @description Time range to query. Defaults to 24h.
|
|
4390
|
-
* @default "24h"
|
|
4391
|
-
* @example 24h
|
|
4392
|
-
* @type string | undefined
|
|
4393
|
-
*/
|
|
4394
|
-
type GetProjectInsightsQueryRange = ("1h" | "6h" | "24h" | "7d") | undefined;
|
|
4947
|
+
type ListHoneytokensPathProjectId = string;
|
|
4395
4948
|
/**
|
|
4396
|
-
* @description Maximum number of
|
|
4949
|
+
* @description Maximum number of items to return (1-100, default 20).
|
|
4397
4950
|
* @minLength 1
|
|
4398
4951
|
* @maxLength 100
|
|
4399
4952
|
* @default 20
|
|
4400
4953
|
* @type integer | undefined
|
|
4401
4954
|
*/
|
|
4402
|
-
type
|
|
4955
|
+
type ListHoneytokensQueryPageSize = number | undefined;
|
|
4956
|
+
/**
|
|
4957
|
+
* @description Opaque token for cursor-based pagination.
|
|
4958
|
+
* @pattern ^[a-zA-Z0-9_.-]+$
|
|
4959
|
+
* @type string | undefined
|
|
4960
|
+
*/
|
|
4961
|
+
type ListHoneytokensQueryPageToken = string | undefined;
|
|
4403
4962
|
/**
|
|
4404
|
-
* @description
|
|
4963
|
+
* @description Cursor-paginated honeytokens for a project.
|
|
4405
4964
|
* @type object
|
|
4406
4965
|
*/
|
|
4407
|
-
type
|
|
4966
|
+
type ListHoneytokensStatus200 = ListHoneytokensResponse;
|
|
4408
4967
|
/**
|
|
4409
4968
|
* @type object
|
|
4410
4969
|
*/
|
|
4411
|
-
type
|
|
4970
|
+
type ListHoneytokensRequestConfig = {
|
|
4412
4971
|
data?: never;
|
|
4413
4972
|
/**
|
|
4414
4973
|
* @type object
|
|
4415
4974
|
*/
|
|
4416
4975
|
pathParams: {
|
|
4417
|
-
project_id:
|
|
4976
|
+
project_id: ListHoneytokensPathProjectId;
|
|
4418
4977
|
};
|
|
4419
4978
|
/**
|
|
4420
4979
|
* @type object | undefined
|
|
4421
4980
|
*/
|
|
4422
4981
|
queryParams?: {
|
|
4423
|
-
|
|
4424
|
-
|
|
4982
|
+
page_size?: ListHoneytokensQueryPageSize;
|
|
4983
|
+
page_token?: ListHoneytokensQueryPageToken;
|
|
4425
4984
|
};
|
|
4426
4985
|
headerParams?: never;
|
|
4427
4986
|
/**
|
|
4428
4987
|
* @type string
|
|
4429
4988
|
*/
|
|
4430
|
-
url: `/v1/projects/${string}/
|
|
4989
|
+
url: `/v1/projects/${string}/honeytokens`;
|
|
4431
4990
|
};
|
|
4432
4991
|
|
|
4433
4992
|
/**
|
|
4434
4993
|
* Generated by Kubb (https://kubb.dev/).
|
|
4435
4994
|
* Do not edit manually.
|
|
4436
4995
|
*/
|
|
4996
|
+
declare const honeytokenInputActionEnum: {
|
|
4997
|
+
readonly audit_only: "audit_only";
|
|
4998
|
+
readonly kill: "kill";
|
|
4999
|
+
};
|
|
5000
|
+
type HoneytokenInputActionEnumKey = (typeof honeytokenInputActionEnum)[keyof typeof honeytokenInputActionEnum];
|
|
4437
5001
|
/**
|
|
4438
|
-
* @description
|
|
5002
|
+
* @description Request body for creating or updating a honeytoken.
|
|
4439
5003
|
* @type object
|
|
4440
5004
|
*/
|
|
4441
|
-
type
|
|
5005
|
+
type HoneytokenInput = {
|
|
4442
5006
|
/**
|
|
4443
|
-
* @description
|
|
5007
|
+
* @description Optional schema. Null or empty matches the unqualified/public form.
|
|
5008
|
+
* @maxLength 255
|
|
5009
|
+
* @example public
|
|
5010
|
+
* @type string
|
|
5011
|
+
*/
|
|
5012
|
+
schema_name?: string | null;
|
|
5013
|
+
/**
|
|
5014
|
+
* @description Relation (table or view) name of the decoy.
|
|
4444
5015
|
* @minLength 1
|
|
4445
|
-
* @maxLength
|
|
5016
|
+
* @maxLength 255
|
|
5017
|
+
* @example customer_ssns
|
|
4446
5018
|
* @type string
|
|
4447
5019
|
*/
|
|
4448
|
-
|
|
5020
|
+
relation_name: string;
|
|
4449
5021
|
/**
|
|
4450
|
-
* @description
|
|
4451
|
-
* @type string
|
|
5022
|
+
* @description Response when the honeytoken is tripped.
|
|
5023
|
+
* @type string
|
|
4452
5024
|
*/
|
|
4453
|
-
|
|
5025
|
+
action: HoneytokenInputActionEnumKey;
|
|
4454
5026
|
};
|
|
4455
5027
|
|
|
4456
5028
|
/**
|
|
4457
5029
|
* Generated by Kubb (https://kubb.dev/).
|
|
4458
5030
|
* Do not edit manually.
|
|
4459
5031
|
*/
|
|
4460
|
-
|
|
4461
|
-
readonly info: "info";
|
|
4462
|
-
readonly warning: "warning";
|
|
4463
|
-
readonly error: "error";
|
|
4464
|
-
};
|
|
4465
|
-
type MigrationFindingSeverityEnumKey = (typeof migrationFindingSeverityEnum)[keyof typeof migrationFindingSeverityEnum];
|
|
5032
|
+
|
|
4466
5033
|
/**
|
|
4467
|
-
* @description
|
|
5034
|
+
* @description Unique project identifier (prefixed, e.g. prj_xxx).
|
|
5035
|
+
* @pattern ^[a-zA-Z0-9_.-]+$
|
|
5036
|
+
* @type string
|
|
5037
|
+
*/
|
|
5038
|
+
type CreateHoneytokenPathProjectId = string;
|
|
5039
|
+
/**
|
|
5040
|
+
* @description A decoy (canary) relation. Any agent statement that references it is blocked (fail closed) and recorded as a canary_tripped audit event.\n
|
|
4468
5041
|
* @type object
|
|
4469
5042
|
*/
|
|
4470
|
-
type
|
|
4471
|
-
|
|
4472
|
-
|
|
4473
|
-
|
|
4474
|
-
|
|
4475
|
-
|
|
5043
|
+
type CreateHoneytokenStatus201 = Honeytoken;
|
|
5044
|
+
/**
|
|
5045
|
+
* @description Request body for creating or updating a honeytoken.
|
|
5046
|
+
* @type object
|
|
5047
|
+
*/
|
|
5048
|
+
type CreateHoneytokenData = HoneytokenInput;
|
|
5049
|
+
/**
|
|
5050
|
+
* @type object
|
|
5051
|
+
*/
|
|
5052
|
+
type CreateHoneytokenRequestConfig = {
|
|
5053
|
+
data?: CreateHoneytokenData;
|
|
4476
5054
|
/**
|
|
4477
|
-
* @
|
|
4478
|
-
* @type string
|
|
5055
|
+
* @type object
|
|
4479
5056
|
*/
|
|
4480
|
-
|
|
5057
|
+
pathParams: {
|
|
5058
|
+
project_id: CreateHoneytokenPathProjectId;
|
|
5059
|
+
};
|
|
5060
|
+
queryParams?: never;
|
|
5061
|
+
headerParams?: never;
|
|
4481
5062
|
/**
|
|
4482
|
-
* @description Human-readable description of the issue.
|
|
4483
5063
|
* @type string
|
|
4484
5064
|
*/
|
|
4485
|
-
|
|
4486
|
-
/**
|
|
4487
|
-
* @description The statement that triggered the finding.
|
|
4488
|
-
* @type string | undefined
|
|
4489
|
-
*/
|
|
4490
|
-
statement?: string;
|
|
4491
|
-
/**
|
|
4492
|
-
* @description Suggested safer alternative, if any.
|
|
4493
|
-
* @type string | undefined
|
|
4494
|
-
*/
|
|
4495
|
-
hint?: string;
|
|
5065
|
+
url: `/v1/projects/${string}/honeytokens`;
|
|
4496
5066
|
};
|
|
4497
5067
|
|
|
4498
5068
|
/**
|
|
@@ -4501,20 +5071,40 @@ type MigrationFinding = {
|
|
|
4501
5071
|
*/
|
|
4502
5072
|
|
|
4503
5073
|
/**
|
|
4504
|
-
* @description
|
|
5074
|
+
* @description Unique project identifier (prefixed, e.g. prj_xxx).
|
|
5075
|
+
* @pattern ^[a-zA-Z0-9_.-]+$
|
|
5076
|
+
* @type string
|
|
5077
|
+
*/
|
|
5078
|
+
type GetHoneytokenPathProjectId = string;
|
|
5079
|
+
/**
|
|
5080
|
+
* @description Unique honeytoken identifier (prefixed, e.g. hnt_xxx).
|
|
5081
|
+
* @pattern ^[a-zA-Z0-9_.-]+$
|
|
5082
|
+
* @type string
|
|
5083
|
+
*/
|
|
5084
|
+
type GetHoneytokenPathHoneytokenId = string;
|
|
5085
|
+
/**
|
|
5086
|
+
* @description A decoy (canary) relation. Any agent statement that references it is blocked (fail closed) and recorded as a canary_tripped audit event.\n
|
|
4505
5087
|
* @type object
|
|
4506
5088
|
*/
|
|
4507
|
-
type
|
|
5089
|
+
type GetHoneytokenStatus200 = Honeytoken;
|
|
5090
|
+
/**
|
|
5091
|
+
* @type object
|
|
5092
|
+
*/
|
|
5093
|
+
type GetHoneytokenRequestConfig = {
|
|
5094
|
+
data?: never;
|
|
4508
5095
|
/**
|
|
4509
|
-
* @
|
|
4510
|
-
* @type boolean
|
|
5096
|
+
* @type object
|
|
4511
5097
|
*/
|
|
4512
|
-
|
|
5098
|
+
pathParams: {
|
|
5099
|
+
project_id: GetHoneytokenPathProjectId;
|
|
5100
|
+
honeytoken_id: GetHoneytokenPathHoneytokenId;
|
|
5101
|
+
};
|
|
5102
|
+
queryParams?: never;
|
|
5103
|
+
headerParams?: never;
|
|
4513
5104
|
/**
|
|
4514
|
-
* @
|
|
4515
|
-
* @type array
|
|
5105
|
+
* @type string
|
|
4516
5106
|
*/
|
|
4517
|
-
|
|
5107
|
+
url: `/v1/projects/${string}/honeytokens/${string}`;
|
|
4518
5108
|
};
|
|
4519
5109
|
|
|
4520
5110
|
/**
|
|
@@ -4527,177 +5117,198 @@ type MigrationLintResponse = {
|
|
|
4527
5117
|
* @pattern ^[a-zA-Z0-9_.-]+$
|
|
4528
5118
|
* @type string
|
|
4529
5119
|
*/
|
|
4530
|
-
type
|
|
5120
|
+
type UpdateHoneytokenPathProjectId = string;
|
|
4531
5121
|
/**
|
|
4532
|
-
* @description
|
|
5122
|
+
* @description Unique honeytoken identifier (prefixed, e.g. hnt_xxx).
|
|
5123
|
+
* @pattern ^[a-zA-Z0-9_.-]+$
|
|
5124
|
+
* @type string
|
|
5125
|
+
*/
|
|
5126
|
+
type UpdateHoneytokenPathHoneytokenId = string;
|
|
5127
|
+
/**
|
|
5128
|
+
* @description A decoy (canary) relation. Any agent statement that references it is blocked (fail closed) and recorded as a canary_tripped audit event.\n
|
|
4533
5129
|
* @type object
|
|
4534
5130
|
*/
|
|
4535
|
-
type
|
|
5131
|
+
type UpdateHoneytokenStatus200 = Honeytoken;
|
|
4536
5132
|
/**
|
|
4537
|
-
* @description
|
|
5133
|
+
* @description Request body for creating or updating a honeytoken.
|
|
4538
5134
|
* @type object
|
|
4539
5135
|
*/
|
|
4540
|
-
type
|
|
5136
|
+
type UpdateHoneytokenData = HoneytokenInput;
|
|
4541
5137
|
/**
|
|
4542
5138
|
* @type object
|
|
4543
5139
|
*/
|
|
4544
|
-
type
|
|
4545
|
-
data?:
|
|
5140
|
+
type UpdateHoneytokenRequestConfig = {
|
|
5141
|
+
data?: UpdateHoneytokenData;
|
|
4546
5142
|
/**
|
|
4547
5143
|
* @type object
|
|
4548
5144
|
*/
|
|
4549
5145
|
pathParams: {
|
|
4550
|
-
project_id:
|
|
5146
|
+
project_id: UpdateHoneytokenPathProjectId;
|
|
5147
|
+
honeytoken_id: UpdateHoneytokenPathHoneytokenId;
|
|
4551
5148
|
};
|
|
4552
5149
|
queryParams?: never;
|
|
4553
5150
|
headerParams?: never;
|
|
4554
5151
|
/**
|
|
4555
5152
|
* @type string
|
|
4556
5153
|
*/
|
|
4557
|
-
url: `/v1/projects/${string}/
|
|
5154
|
+
url: `/v1/projects/${string}/honeytokens/${string}`;
|
|
4558
5155
|
};
|
|
4559
5156
|
|
|
4560
5157
|
/**
|
|
4561
5158
|
* Generated by Kubb (https://kubb.dev/).
|
|
4562
5159
|
* Do not edit manually.
|
|
4563
5160
|
*/
|
|
5161
|
+
|
|
5162
|
+
/**
|
|
5163
|
+
* @description Unique project identifier (prefixed, e.g. prj_xxx).
|
|
5164
|
+
* @pattern ^[a-zA-Z0-9_.-]+$
|
|
5165
|
+
* @type string
|
|
5166
|
+
*/
|
|
5167
|
+
type DeleteHoneytokenPathProjectId = string;
|
|
5168
|
+
/**
|
|
5169
|
+
* @description Unique honeytoken identifier (prefixed, e.g. hnt_xxx).
|
|
5170
|
+
* @pattern ^[a-zA-Z0-9_.-]+$
|
|
5171
|
+
* @type string
|
|
5172
|
+
*/
|
|
5173
|
+
type DeleteHoneytokenPathHoneytokenId = string;
|
|
4564
5174
|
/**
|
|
4565
|
-
* @description Progress state for the dashboard onboarding checklist.
|
|
4566
5175
|
* @type object
|
|
4567
5176
|
*/
|
|
4568
|
-
type
|
|
4569
|
-
|
|
4570
|
-
* @description Organization ID this onboarding belongs to.
|
|
4571
|
-
* @type string
|
|
4572
|
-
*/
|
|
4573
|
-
organization_id: string;
|
|
5177
|
+
type DeleteHoneytokenRequestConfig = {
|
|
5178
|
+
data?: never;
|
|
4574
5179
|
/**
|
|
4575
|
-
* @
|
|
4576
|
-
* @type boolean
|
|
5180
|
+
* @type object
|
|
4577
5181
|
*/
|
|
4578
|
-
|
|
5182
|
+
pathParams: {
|
|
5183
|
+
project_id: DeleteHoneytokenPathProjectId;
|
|
5184
|
+
honeytoken_id: DeleteHoneytokenPathHoneytokenId;
|
|
5185
|
+
};
|
|
5186
|
+
queryParams?: never;
|
|
5187
|
+
headerParams?: never;
|
|
4579
5188
|
/**
|
|
4580
|
-
* @
|
|
4581
|
-
* @type boolean
|
|
5189
|
+
* @type string
|
|
4582
5190
|
*/
|
|
4583
|
-
|
|
5191
|
+
url: `/v1/projects/${string}/honeytokens/${string}`;
|
|
5192
|
+
};
|
|
5193
|
+
|
|
5194
|
+
/**
|
|
5195
|
+
* Generated by Kubb (https://kubb.dev/).
|
|
5196
|
+
* Do not edit manually.
|
|
5197
|
+
*/
|
|
5198
|
+
/**
|
|
5199
|
+
* @description Aggregate cache performance metrics for the selected time range.
|
|
5200
|
+
* @type object
|
|
5201
|
+
*/
|
|
5202
|
+
type CacheSummary = {
|
|
4584
5203
|
/**
|
|
4585
|
-
* @description
|
|
4586
|
-
* @type
|
|
5204
|
+
* @description Total number of cache hits in the selected time range.
|
|
5205
|
+
* @type integer
|
|
4587
5206
|
*/
|
|
4588
|
-
|
|
5207
|
+
total_hits: number;
|
|
4589
5208
|
/**
|
|
4590
|
-
* @description
|
|
4591
|
-
* @type
|
|
5209
|
+
* @description Total number of cache misses in the selected time range.
|
|
5210
|
+
* @type integer
|
|
4592
5211
|
*/
|
|
4593
|
-
|
|
5212
|
+
total_misses: number;
|
|
4594
5213
|
/**
|
|
4595
|
-
* @description
|
|
4596
|
-
* @type
|
|
5214
|
+
* @description Cache hit rate as a fraction (0.0 to 1.0).
|
|
5215
|
+
* @type number
|
|
4597
5216
|
*/
|
|
4598
|
-
|
|
5217
|
+
hit_rate: number;
|
|
5218
|
+
};
|
|
5219
|
+
|
|
5220
|
+
/**
|
|
5221
|
+
* Generated by Kubb (https://kubb.dev/).
|
|
5222
|
+
* Do not edit manually.
|
|
5223
|
+
*/
|
|
5224
|
+
/**
|
|
5225
|
+
* @description Aggregate latency metrics for the selected time range.
|
|
5226
|
+
* @type object
|
|
5227
|
+
*/
|
|
5228
|
+
type LatencySummary = {
|
|
4599
5229
|
/**
|
|
4600
|
-
* @description
|
|
4601
|
-
* @type
|
|
5230
|
+
* @description Average latency in milliseconds across all queries.
|
|
5231
|
+
* @type number
|
|
4602
5232
|
*/
|
|
4603
|
-
|
|
5233
|
+
avg_ms: number;
|
|
4604
5234
|
/**
|
|
4605
|
-
* @description
|
|
4606
|
-
* @type
|
|
5235
|
+
* @description P99 latency in milliseconds across all queries.
|
|
5236
|
+
* @type number
|
|
4607
5237
|
*/
|
|
4608
|
-
|
|
5238
|
+
p99_ms: number;
|
|
5239
|
+
};
|
|
5240
|
+
|
|
5241
|
+
/**
|
|
5242
|
+
* Generated by Kubb (https://kubb.dev/).
|
|
5243
|
+
* Do not edit manually.
|
|
5244
|
+
*/
|
|
5245
|
+
/**
|
|
5246
|
+
* @description Aggregated analytics for a normalized SQL query shape.
|
|
5247
|
+
* @type object
|
|
5248
|
+
*/
|
|
5249
|
+
type QueryInsight = {
|
|
4609
5250
|
/**
|
|
4610
|
-
* @description
|
|
4611
|
-
* @type
|
|
5251
|
+
* @description xxhash64 of the normalized SQL pattern (hex).
|
|
5252
|
+
* @type string
|
|
4612
5253
|
*/
|
|
4613
|
-
|
|
5254
|
+
query_hash: string;
|
|
4614
5255
|
/**
|
|
4615
|
-
* @description
|
|
4616
|
-
* @type
|
|
5256
|
+
* @description Normalized SQL pattern (truncated to 500 chars).
|
|
5257
|
+
* @type string
|
|
4617
5258
|
*/
|
|
4618
|
-
|
|
5259
|
+
query_pattern: string;
|
|
4619
5260
|
/**
|
|
4620
|
-
* @description
|
|
5261
|
+
* @description Total number of executions in the time range.
|
|
4621
5262
|
* @type integer
|
|
4622
5263
|
*/
|
|
4623
|
-
|
|
5264
|
+
total_count: number;
|
|
4624
5265
|
/**
|
|
4625
|
-
* @description Total
|
|
5266
|
+
* @description Total cache hits attributed to the query shape.
|
|
4626
5267
|
* @type integer
|
|
4627
5268
|
*/
|
|
4628
|
-
|
|
5269
|
+
total_cache_hits: number;
|
|
4629
5270
|
/**
|
|
4630
|
-
* @description
|
|
4631
|
-
* @type
|
|
5271
|
+
* @description Total cache misses attributed to the query shape.
|
|
5272
|
+
* @type integer
|
|
4632
5273
|
*/
|
|
4633
|
-
|
|
4634
|
-
};
|
|
4635
|
-
|
|
4636
|
-
/**
|
|
4637
|
-
* Generated by Kubb (https://kubb.dev/).
|
|
4638
|
-
* Do not edit manually.
|
|
4639
|
-
*/
|
|
4640
|
-
|
|
4641
|
-
/**
|
|
4642
|
-
* @description Unique organization identifier.
|
|
4643
|
-
* @pattern ^[a-zA-Z0-9_.-]+$
|
|
4644
|
-
* @example org_abc123
|
|
4645
|
-
* @type string
|
|
4646
|
-
*/
|
|
4647
|
-
type GetOnboardingProgressPathOrgId = string;
|
|
4648
|
-
/**
|
|
4649
|
-
* @description Progress state for the dashboard onboarding checklist.
|
|
4650
|
-
* @type object
|
|
4651
|
-
*/
|
|
4652
|
-
type GetOnboardingProgressStatus200 = OnboardingProgress;
|
|
4653
|
-
/**
|
|
4654
|
-
* @type object
|
|
4655
|
-
*/
|
|
4656
|
-
type GetOnboardingProgressRequestConfig = {
|
|
4657
|
-
data?: never;
|
|
5274
|
+
total_cache_misses: number;
|
|
4658
5275
|
/**
|
|
4659
|
-
* @
|
|
5276
|
+
* @description Average query latency in milliseconds.
|
|
5277
|
+
* @type number
|
|
4660
5278
|
*/
|
|
4661
|
-
|
|
4662
|
-
org_id: GetOnboardingProgressPathOrgId;
|
|
4663
|
-
};
|
|
4664
|
-
queryParams?: never;
|
|
4665
|
-
headerParams?: never;
|
|
5279
|
+
avg_latency_ms: number;
|
|
4666
5280
|
/**
|
|
4667
|
-
* @
|
|
5281
|
+
* @description P99 query latency in milliseconds.
|
|
5282
|
+
* @type number
|
|
4668
5283
|
*/
|
|
4669
|
-
|
|
5284
|
+
p99_latency_ms: number;
|
|
4670
5285
|
};
|
|
4671
5286
|
|
|
4672
5287
|
/**
|
|
4673
5288
|
* Generated by Kubb (https://kubb.dev/).
|
|
4674
5289
|
* Do not edit manually.
|
|
4675
5290
|
*/
|
|
4676
|
-
|
|
4677
|
-
readonly project_created: "project_created";
|
|
4678
|
-
readonly database_added: "database_added";
|
|
4679
|
-
readonly connection_tested: "connection_tested";
|
|
4680
|
-
readonly connection_string_copied: "connection_string_copied";
|
|
4681
|
-
readonly first_query_run: "first_query_run";
|
|
4682
|
-
readonly agent_credential_created: "agent_credential_created";
|
|
4683
|
-
};
|
|
4684
|
-
type UpdateOnboardingRequestStepEnumKey = (typeof updateOnboardingRequestStepEnum)[keyof typeof updateOnboardingRequestStepEnum];
|
|
5291
|
+
|
|
4685
5292
|
/**
|
|
4686
|
-
* @description
|
|
5293
|
+
* @description Query insights, cache performance, and latency for a project.
|
|
4687
5294
|
* @type object
|
|
4688
5295
|
*/
|
|
4689
|
-
type
|
|
5296
|
+
type ProjectInsights = {
|
|
4690
5297
|
/**
|
|
4691
|
-
* @description
|
|
4692
|
-
* @
|
|
4693
|
-
* @type string | undefined
|
|
5298
|
+
* @description Top query shapes observed for the project.
|
|
5299
|
+
* @type array
|
|
4694
5300
|
*/
|
|
4695
|
-
|
|
5301
|
+
queries: QueryInsight[];
|
|
4696
5302
|
/**
|
|
4697
|
-
* @description
|
|
4698
|
-
* @type
|
|
5303
|
+
* @description Aggregate cache performance metrics for the selected time range.
|
|
5304
|
+
* @type object
|
|
4699
5305
|
*/
|
|
4700
|
-
|
|
5306
|
+
cache: CacheSummary;
|
|
5307
|
+
/**
|
|
5308
|
+
* @description Aggregate latency metrics for the selected time range.
|
|
5309
|
+
* @type object
|
|
5310
|
+
*/
|
|
5311
|
+
latency: LatencySummary;
|
|
4701
5312
|
};
|
|
4702
5313
|
|
|
4703
5314
|
/**
|
|
@@ -4706,117 +5317,141 @@ type UpdateOnboardingRequest = {
|
|
|
4706
5317
|
*/
|
|
4707
5318
|
|
|
4708
5319
|
/**
|
|
4709
|
-
* @description Unique
|
|
5320
|
+
* @description Unique project identifier (prefixed, e.g. prj_xxx).
|
|
4710
5321
|
* @pattern ^[a-zA-Z0-9_.-]+$
|
|
4711
|
-
* @example org_abc123
|
|
4712
5322
|
* @type string
|
|
4713
5323
|
*/
|
|
4714
|
-
type
|
|
5324
|
+
type GetProjectInsightsPathProjectId = string;
|
|
4715
5325
|
/**
|
|
4716
|
-
* @description
|
|
4717
|
-
* @
|
|
5326
|
+
* @description Time range to query. Defaults to 24h.
|
|
5327
|
+
* @default "24h"
|
|
5328
|
+
* @example 24h
|
|
5329
|
+
* @type string | undefined
|
|
4718
5330
|
*/
|
|
4719
|
-
type
|
|
5331
|
+
type GetProjectInsightsQueryRange = ("1h" | "6h" | "24h" | "7d") | undefined;
|
|
4720
5332
|
/**
|
|
4721
|
-
* @description
|
|
5333
|
+
* @description Maximum number of top queries to return (1-100).
|
|
5334
|
+
* @minLength 1
|
|
5335
|
+
* @maxLength 100
|
|
5336
|
+
* @default 20
|
|
5337
|
+
* @type integer | undefined
|
|
5338
|
+
*/
|
|
5339
|
+
type GetProjectInsightsQueryLimit = number | undefined;
|
|
5340
|
+
/**
|
|
5341
|
+
* @description Query insights, cache performance, and latency for a project.
|
|
4722
5342
|
* @type object
|
|
4723
5343
|
*/
|
|
4724
|
-
type
|
|
5344
|
+
type GetProjectInsightsStatus200 = ProjectInsights;
|
|
4725
5345
|
/**
|
|
4726
5346
|
* @type object
|
|
4727
5347
|
*/
|
|
4728
|
-
type
|
|
4729
|
-
data?:
|
|
5348
|
+
type GetProjectInsightsRequestConfig = {
|
|
5349
|
+
data?: never;
|
|
4730
5350
|
/**
|
|
4731
5351
|
* @type object
|
|
4732
5352
|
*/
|
|
4733
5353
|
pathParams: {
|
|
4734
|
-
|
|
5354
|
+
project_id: GetProjectInsightsPathProjectId;
|
|
5355
|
+
};
|
|
5356
|
+
/**
|
|
5357
|
+
* @type object | undefined
|
|
5358
|
+
*/
|
|
5359
|
+
queryParams?: {
|
|
5360
|
+
range?: GetProjectInsightsQueryRange;
|
|
5361
|
+
limit?: GetProjectInsightsQueryLimit;
|
|
4735
5362
|
};
|
|
4736
|
-
queryParams?: never;
|
|
4737
5363
|
headerParams?: never;
|
|
4738
5364
|
/**
|
|
4739
5365
|
* @type string
|
|
4740
5366
|
*/
|
|
4741
|
-
url: `/v1/
|
|
5367
|
+
url: `/v1/projects/${string}/insights`;
|
|
4742
5368
|
};
|
|
4743
5369
|
|
|
4744
5370
|
/**
|
|
4745
5371
|
* Generated by Kubb (https://kubb.dev/).
|
|
4746
5372
|
* Do not edit manually.
|
|
4747
5373
|
*/
|
|
4748
|
-
declare const maskingRuleKindEnum: {
|
|
4749
|
-
readonly redact: "redact";
|
|
4750
|
-
readonly null: "null";
|
|
4751
|
-
readonly hash: "hash";
|
|
4752
|
-
};
|
|
4753
|
-
type MaskingRuleKindEnumKey = (typeof maskingRuleKindEnum)[keyof typeof maskingRuleKindEnum];
|
|
4754
5374
|
/**
|
|
4755
|
-
* @description A
|
|
5375
|
+
* @description A migration script to lint for unsafe schema changes.
|
|
4756
5376
|
* @type object
|
|
4757
5377
|
*/
|
|
4758
|
-
type
|
|
4759
|
-
/**
|
|
4760
|
-
* @description Relation name, optionally schema-qualified (e.g. \"public.users\" or \"users\").
|
|
4761
|
-
* @example users
|
|
4762
|
-
* @type string
|
|
4763
|
-
*/
|
|
4764
|
-
table: string;
|
|
5378
|
+
type MigrationLintRequest = {
|
|
4765
5379
|
/**
|
|
4766
|
-
* @description
|
|
4767
|
-
* @
|
|
5380
|
+
* @description The migration SQL to analyze. May contain multiple statements.
|
|
5381
|
+
* @minLength 1
|
|
5382
|
+
* @maxLength 1048576
|
|
4768
5383
|
* @type string
|
|
4769
5384
|
*/
|
|
4770
|
-
|
|
5385
|
+
sql: string;
|
|
4771
5386
|
/**
|
|
4772
|
-
* @description
|
|
4773
|
-
* @type string
|
|
5387
|
+
* @description Optional database to scope the lint to.
|
|
5388
|
+
* @type string | undefined
|
|
4774
5389
|
*/
|
|
4775
|
-
|
|
5390
|
+
database_id?: string;
|
|
4776
5391
|
};
|
|
4777
5392
|
|
|
4778
5393
|
/**
|
|
4779
5394
|
* Generated by Kubb (https://kubb.dev/).
|
|
4780
5395
|
* Do not edit manually.
|
|
4781
5396
|
*/
|
|
5397
|
+
declare const migrationFindingSeverityEnum: {
|
|
5398
|
+
readonly info: "info";
|
|
5399
|
+
readonly warning: "warning";
|
|
5400
|
+
readonly error: "error";
|
|
5401
|
+
};
|
|
5402
|
+
type MigrationFindingSeverityEnumKey = (typeof migrationFindingSeverityEnum)[keyof typeof migrationFindingSeverityEnum];
|
|
4782
5403
|
/**
|
|
4783
|
-
* @description A
|
|
5404
|
+
* @description A single issue found while linting a migration.
|
|
4784
5405
|
* @type object
|
|
4785
5406
|
*/
|
|
4786
|
-
type
|
|
5407
|
+
type MigrationFinding = {
|
|
4787
5408
|
/**
|
|
4788
|
-
* @description
|
|
4789
|
-
* @example orders
|
|
5409
|
+
* @description How serious the finding is. error indicates an unsafe change.
|
|
4790
5410
|
* @type string
|
|
4791
5411
|
*/
|
|
4792
|
-
|
|
5412
|
+
severity: MigrationFindingSeverityEnumKey;
|
|
4793
5413
|
/**
|
|
4794
|
-
* @description
|
|
4795
|
-
* @example tenant_id = current_setting('pgbeam.tenant')
|
|
5414
|
+
* @description Machine-readable rule identifier (e.g. drop_table, add_not_null_no_default).
|
|
4796
5415
|
* @type string
|
|
4797
5416
|
*/
|
|
4798
|
-
|
|
5417
|
+
rule: string;
|
|
5418
|
+
/**
|
|
5419
|
+
* @description Human-readable description of the issue.
|
|
5420
|
+
* @type string
|
|
5421
|
+
*/
|
|
5422
|
+
message: string;
|
|
5423
|
+
/**
|
|
5424
|
+
* @description The statement that triggered the finding.
|
|
5425
|
+
* @type string | undefined
|
|
5426
|
+
*/
|
|
5427
|
+
statement?: string;
|
|
5428
|
+
/**
|
|
5429
|
+
* @description Suggested safer alternative, if any.
|
|
5430
|
+
* @type string | undefined
|
|
5431
|
+
*/
|
|
5432
|
+
hint?: string;
|
|
4799
5433
|
};
|
|
4800
5434
|
|
|
4801
5435
|
/**
|
|
4802
5436
|
* Generated by Kubb (https://kubb.dev/).
|
|
4803
5437
|
* Do not edit manually.
|
|
4804
5438
|
*/
|
|
5439
|
+
|
|
4805
5440
|
/**
|
|
4806
|
-
* @description
|
|
5441
|
+
* @description Result of linting a migration script.
|
|
4807
5442
|
* @type object
|
|
4808
5443
|
*/
|
|
4809
|
-
type
|
|
5444
|
+
type MigrationLintResponse = {
|
|
4810
5445
|
/**
|
|
4811
|
-
* @description
|
|
4812
|
-
* @type
|
|
5446
|
+
* @description True when no error-severity findings were detected.
|
|
5447
|
+
* @type boolean
|
|
4813
5448
|
*/
|
|
4814
|
-
|
|
5449
|
+
safe: boolean;
|
|
4815
5450
|
/**
|
|
4816
|
-
* @description
|
|
4817
|
-
* @type array
|
|
5451
|
+
* @description Findings detected across all statements.
|
|
5452
|
+
* @type array
|
|
4818
5453
|
*/
|
|
4819
|
-
|
|
5454
|
+
findings: MigrationFinding[];
|
|
4820
5455
|
};
|
|
4821
5456
|
|
|
4822
5457
|
/**
|
|
@@ -4824,163 +5459,115 @@ type StatementRules = {
|
|
|
4824
5459
|
* Do not edit manually.
|
|
4825
5460
|
*/
|
|
4826
5461
|
|
|
4827
|
-
declare const policyProfileAccessModeEnum: {
|
|
4828
|
-
readonly read_only: "read_only";
|
|
4829
|
-
readonly read_write: "read_write";
|
|
4830
|
-
};
|
|
4831
|
-
type PolicyProfileAccessModeEnumKey = (typeof policyProfileAccessModeEnum)[keyof typeof policyProfileAccessModeEnum];
|
|
4832
|
-
declare const policyProfileWriteModeEnum: {
|
|
4833
|
-
readonly normal: "normal";
|
|
4834
|
-
readonly rollback: "rollback";
|
|
4835
|
-
readonly sandbox: "sandbox";
|
|
4836
|
-
};
|
|
4837
|
-
type PolicyProfileWriteModeEnumKey = (typeof policyProfileWriteModeEnum)[keyof typeof policyProfileWriteModeEnum];
|
|
4838
|
-
declare const policyProfileApprovalModeEnum: {
|
|
4839
|
-
readonly off: "off";
|
|
4840
|
-
readonly writes: "writes";
|
|
4841
|
-
readonly ddl: "ddl";
|
|
4842
|
-
readonly all: "all";
|
|
4843
|
-
};
|
|
4844
|
-
type PolicyProfileApprovalModeEnumKey = (typeof policyProfileApprovalModeEnum)[keyof typeof policyProfileApprovalModeEnum];
|
|
4845
|
-
declare const policyProfileMigrationSafetyEnum: {
|
|
4846
|
-
readonly off: "off";
|
|
4847
|
-
readonly warn: "warn";
|
|
4848
|
-
readonly block: "block";
|
|
4849
|
-
};
|
|
4850
|
-
type PolicyProfileMigrationSafetyEnumKey = (typeof policyProfileMigrationSafetyEnum)[keyof typeof policyProfileMigrationSafetyEnum];
|
|
4851
5462
|
/**
|
|
4852
|
-
* @description
|
|
5463
|
+
* @description Unique project identifier (prefixed, e.g. prj_xxx).
|
|
5464
|
+
* @pattern ^[a-zA-Z0-9_.-]+$
|
|
5465
|
+
* @type string
|
|
5466
|
+
*/
|
|
5467
|
+
type LintMigrationPathProjectId = string;
|
|
5468
|
+
/**
|
|
5469
|
+
* @description Result of linting a migration script.
|
|
4853
5470
|
* @type object
|
|
4854
5471
|
*/
|
|
4855
|
-
type
|
|
4856
|
-
|
|
4857
|
-
|
|
4858
|
-
|
|
4859
|
-
|
|
4860
|
-
|
|
4861
|
-
|
|
4862
|
-
|
|
4863
|
-
|
|
4864
|
-
|
|
4865
|
-
|
|
4866
|
-
*/
|
|
4867
|
-
project_id: string;
|
|
4868
|
-
/**
|
|
4869
|
-
* @description Human-readable name for the policy profile.
|
|
4870
|
-
* @example Read-only analytics
|
|
4871
|
-
* @type string
|
|
4872
|
-
*/
|
|
4873
|
-
name: string;
|
|
4874
|
-
/**
|
|
4875
|
-
* @description read_only blocks all data and schema mutations.
|
|
4876
|
-
* @type string
|
|
4877
|
-
*/
|
|
4878
|
-
access_mode: PolicyProfileAccessModeEnumKey;
|
|
4879
|
-
/**
|
|
4880
|
-
* @description Per-statement-kind allow/deny lists. Empty allow means all kinds permitted by the access mode.
|
|
4881
|
-
* @type object | undefined
|
|
4882
|
-
*/
|
|
4883
|
-
statement_rules?: StatementRules;
|
|
4884
|
-
/**
|
|
4885
|
-
* @description If non-empty, only these relations are reachable. Schema-qualified or bare names.
|
|
4886
|
-
* @type array
|
|
4887
|
-
*/
|
|
4888
|
-
table_allowlist: string[];
|
|
4889
|
-
/**
|
|
4890
|
-
* @description Relations explicitly blocked (takes precedence over the allowlist).
|
|
4891
|
-
* @type array
|
|
4892
|
-
*/
|
|
4893
|
-
table_denylist: string[];
|
|
5472
|
+
type LintMigrationStatus200 = MigrationLintResponse;
|
|
5473
|
+
/**
|
|
5474
|
+
* @description A migration script to lint for unsafe schema changes.
|
|
5475
|
+
* @type object
|
|
5476
|
+
*/
|
|
5477
|
+
type LintMigrationData = MigrationLintRequest;
|
|
5478
|
+
/**
|
|
5479
|
+
* @type object
|
|
5480
|
+
*/
|
|
5481
|
+
type LintMigrationRequestConfig = {
|
|
5482
|
+
data?: LintMigrationData;
|
|
4894
5483
|
/**
|
|
4895
|
-
* @
|
|
4896
|
-
* @type array
|
|
5484
|
+
* @type object
|
|
4897
5485
|
*/
|
|
4898
|
-
|
|
5486
|
+
pathParams: {
|
|
5487
|
+
project_id: LintMigrationPathProjectId;
|
|
5488
|
+
};
|
|
5489
|
+
queryParams?: never;
|
|
5490
|
+
headerParams?: never;
|
|
4899
5491
|
/**
|
|
4900
|
-
* @
|
|
4901
|
-
* @default 0
|
|
4902
|
-
* @type integer | undefined
|
|
5492
|
+
* @type string
|
|
4903
5493
|
*/
|
|
4904
|
-
|
|
5494
|
+
url: `/v1/projects/${string}/migrations${string}`;
|
|
5495
|
+
};
|
|
5496
|
+
|
|
5497
|
+
/**
|
|
5498
|
+
* Generated by Kubb (https://kubb.dev/).
|
|
5499
|
+
* Do not edit manually.
|
|
5500
|
+
*/
|
|
5501
|
+
/**
|
|
5502
|
+
* @description Progress state for the dashboard onboarding checklist.
|
|
5503
|
+
* @type object
|
|
5504
|
+
*/
|
|
5505
|
+
type OnboardingProgress = {
|
|
4905
5506
|
/**
|
|
4906
|
-
* @description
|
|
4907
|
-
* @
|
|
4908
|
-
* @type integer | undefined
|
|
5507
|
+
* @description Organization ID this onboarding belongs to.
|
|
5508
|
+
* @type string
|
|
4909
5509
|
*/
|
|
4910
|
-
|
|
5510
|
+
organization_id: string;
|
|
4911
5511
|
/**
|
|
4912
|
-
* @description
|
|
4913
|
-
* @
|
|
4914
|
-
* @type integer | undefined
|
|
5512
|
+
* @description Whether the organization has been created.
|
|
5513
|
+
* @type boolean
|
|
4915
5514
|
*/
|
|
4916
|
-
|
|
5515
|
+
org_created: boolean;
|
|
4917
5516
|
/**
|
|
4918
|
-
* @description
|
|
4919
|
-
* @
|
|
4920
|
-
* @type integer | undefined
|
|
5517
|
+
* @description Whether a project has been created.
|
|
5518
|
+
* @type boolean
|
|
4921
5519
|
*/
|
|
4922
|
-
|
|
5520
|
+
project_created: boolean;
|
|
4923
5521
|
/**
|
|
4924
|
-
* @description
|
|
4925
|
-
* @type
|
|
5522
|
+
* @description Whether a database has been added.
|
|
5523
|
+
* @type boolean
|
|
4926
5524
|
*/
|
|
4927
|
-
|
|
5525
|
+
database_added: boolean;
|
|
4928
5526
|
/**
|
|
4929
|
-
* @description
|
|
4930
|
-
* @
|
|
4931
|
-
* @type string | undefined
|
|
5527
|
+
* @description Whether the database connection has been tested.
|
|
5528
|
+
* @type boolean
|
|
4932
5529
|
*/
|
|
4933
|
-
|
|
5530
|
+
connection_tested: boolean;
|
|
4934
5531
|
/**
|
|
4935
|
-
* @description
|
|
4936
|
-
* @
|
|
4937
|
-
* @type string | undefined
|
|
5532
|
+
* @description Whether the connection string has been copied.
|
|
5533
|
+
* @type boolean
|
|
4938
5534
|
*/
|
|
4939
|
-
|
|
5535
|
+
connection_string_copied: boolean;
|
|
4940
5536
|
/**
|
|
4941
|
-
* @description
|
|
4942
|
-
* @
|
|
4943
|
-
* @default 0
|
|
4944
|
-
* @type integer | undefined
|
|
5537
|
+
* @description Whether the first query has been run through PgBeam.
|
|
5538
|
+
* @type boolean
|
|
4945
5539
|
*/
|
|
4946
|
-
|
|
5540
|
+
first_query_run: boolean;
|
|
4947
5541
|
/**
|
|
4948
|
-
* @description
|
|
4949
|
-
* @
|
|
4950
|
-
* @default 300
|
|
4951
|
-
* @type integer | undefined
|
|
5542
|
+
* @description Whether an agent credential has been issued.
|
|
5543
|
+
* @type boolean
|
|
4952
5544
|
*/
|
|
4953
|
-
|
|
5545
|
+
agent_credential_created: boolean;
|
|
4954
5546
|
/**
|
|
4955
|
-
* @description
|
|
4956
|
-
* @
|
|
4957
|
-
* @type string | undefined
|
|
5547
|
+
* @description Whether the user has dismissed the onboarding checklist.
|
|
5548
|
+
* @type boolean
|
|
4958
5549
|
*/
|
|
4959
|
-
|
|
5550
|
+
dismissed: boolean;
|
|
4960
5551
|
/**
|
|
4961
|
-
* @description
|
|
4962
|
-
* @
|
|
4963
|
-
* @default 0
|
|
4964
|
-
* @type integer | undefined
|
|
5552
|
+
* @description Whether all onboarding steps are complete.
|
|
5553
|
+
* @type boolean
|
|
4965
5554
|
*/
|
|
4966
|
-
|
|
5555
|
+
completed: boolean;
|
|
4967
5556
|
/**
|
|
4968
|
-
* @description
|
|
4969
|
-
* @
|
|
4970
|
-
* @default 0
|
|
4971
|
-
* @type integer | undefined
|
|
5557
|
+
* @description Number of completed onboarding steps.
|
|
5558
|
+
* @type integer
|
|
4972
5559
|
*/
|
|
4973
|
-
|
|
5560
|
+
steps_completed: number;
|
|
4974
5561
|
/**
|
|
4975
|
-
* @description
|
|
4976
|
-
* @type
|
|
5562
|
+
* @description Total number of onboarding steps.
|
|
5563
|
+
* @type integer
|
|
4977
5564
|
*/
|
|
4978
|
-
|
|
5565
|
+
steps_total: number;
|
|
4979
5566
|
/**
|
|
4980
|
-
* @description When
|
|
5567
|
+
* @description When onboarding was completed. Null if not yet completed.
|
|
4981
5568
|
* @type string
|
|
4982
5569
|
*/
|
|
4983
|
-
|
|
5570
|
+
completed_at?: string | null;
|
|
4984
5571
|
};
|
|
4985
5572
|
|
|
4986
5573
|
/**
|
|
@@ -4989,20 +5576,65 @@ type PolicyProfile = {
|
|
|
4989
5576
|
*/
|
|
4990
5577
|
|
|
4991
5578
|
/**
|
|
4992
|
-
* @description
|
|
5579
|
+
* @description Unique organization identifier.
|
|
5580
|
+
* @pattern ^[a-zA-Z0-9_.-]+$
|
|
5581
|
+
* @example org_abc123
|
|
5582
|
+
* @type string
|
|
5583
|
+
*/
|
|
5584
|
+
type GetOnboardingProgressPathOrgId = string;
|
|
5585
|
+
/**
|
|
5586
|
+
* @description Progress state for the dashboard onboarding checklist.
|
|
4993
5587
|
* @type object
|
|
4994
5588
|
*/
|
|
4995
|
-
type
|
|
5589
|
+
type GetOnboardingProgressStatus200 = OnboardingProgress;
|
|
5590
|
+
/**
|
|
5591
|
+
* @type object
|
|
5592
|
+
*/
|
|
5593
|
+
type GetOnboardingProgressRequestConfig = {
|
|
5594
|
+
data?: never;
|
|
4996
5595
|
/**
|
|
4997
|
-
* @
|
|
4998
|
-
* @type array
|
|
5596
|
+
* @type object
|
|
4999
5597
|
*/
|
|
5000
|
-
|
|
5598
|
+
pathParams: {
|
|
5599
|
+
org_id: GetOnboardingProgressPathOrgId;
|
|
5600
|
+
};
|
|
5601
|
+
queryParams?: never;
|
|
5602
|
+
headerParams?: never;
|
|
5001
5603
|
/**
|
|
5002
|
-
* @
|
|
5604
|
+
* @type string
|
|
5605
|
+
*/
|
|
5606
|
+
url: `/v1/organizations/${string}/onboarding`;
|
|
5607
|
+
};
|
|
5608
|
+
|
|
5609
|
+
/**
|
|
5610
|
+
* Generated by Kubb (https://kubb.dev/).
|
|
5611
|
+
* Do not edit manually.
|
|
5612
|
+
*/
|
|
5613
|
+
declare const updateOnboardingRequestStepEnum: {
|
|
5614
|
+
readonly project_created: "project_created";
|
|
5615
|
+
readonly database_added: "database_added";
|
|
5616
|
+
readonly connection_tested: "connection_tested";
|
|
5617
|
+
readonly connection_string_copied: "connection_string_copied";
|
|
5618
|
+
readonly first_query_run: "first_query_run";
|
|
5619
|
+
readonly agent_credential_created: "agent_credential_created";
|
|
5620
|
+
};
|
|
5621
|
+
type UpdateOnboardingRequestStepEnumKey = (typeof updateOnboardingRequestStepEnum)[keyof typeof updateOnboardingRequestStepEnum];
|
|
5622
|
+
/**
|
|
5623
|
+
* @description Request body for advancing or dismissing onboarding.
|
|
5624
|
+
* @type object
|
|
5625
|
+
*/
|
|
5626
|
+
type UpdateOnboardingRequest = {
|
|
5627
|
+
/**
|
|
5628
|
+
* @description The onboarding step to mark as complete.
|
|
5629
|
+
* @example project_created
|
|
5003
5630
|
* @type string | undefined
|
|
5004
5631
|
*/
|
|
5005
|
-
|
|
5632
|
+
step?: UpdateOnboardingRequestStepEnumKey;
|
|
5633
|
+
/**
|
|
5634
|
+
* @description Set to true to dismiss the onboarding checklist.
|
|
5635
|
+
* @type boolean | undefined
|
|
5636
|
+
*/
|
|
5637
|
+
dismiss?: boolean;
|
|
5006
5638
|
};
|
|
5007
5639
|
|
|
5008
5640
|
/**
|
|
@@ -5011,53 +5643,74 @@ type ListPolicyProfilesResponse = {
|
|
|
5011
5643
|
*/
|
|
5012
5644
|
|
|
5013
5645
|
/**
|
|
5014
|
-
* @description Unique
|
|
5646
|
+
* @description Unique organization identifier.
|
|
5015
5647
|
* @pattern ^[a-zA-Z0-9_.-]+$
|
|
5648
|
+
* @example org_abc123
|
|
5016
5649
|
* @type string
|
|
5017
5650
|
*/
|
|
5018
|
-
type
|
|
5019
|
-
/**
|
|
5020
|
-
* @description Maximum number of items to return (1-100, default 20).
|
|
5021
|
-
* @minLength 1
|
|
5022
|
-
* @maxLength 100
|
|
5023
|
-
* @default 20
|
|
5024
|
-
* @type integer | undefined
|
|
5025
|
-
*/
|
|
5026
|
-
type ListPolicyProfilesQueryPageSize = number | undefined;
|
|
5651
|
+
type UpdateOnboardingProgressPathOrgId = string;
|
|
5027
5652
|
/**
|
|
5028
|
-
* @description
|
|
5029
|
-
* @
|
|
5030
|
-
* @type string | undefined
|
|
5653
|
+
* @description Progress state for the dashboard onboarding checklist.
|
|
5654
|
+
* @type object
|
|
5031
5655
|
*/
|
|
5032
|
-
type
|
|
5656
|
+
type UpdateOnboardingProgressStatus200 = OnboardingProgress;
|
|
5033
5657
|
/**
|
|
5034
|
-
* @description
|
|
5658
|
+
* @description Request body for advancing or dismissing onboarding.
|
|
5035
5659
|
* @type object
|
|
5036
5660
|
*/
|
|
5037
|
-
type
|
|
5661
|
+
type UpdateOnboardingProgressData = UpdateOnboardingRequest;
|
|
5038
5662
|
/**
|
|
5039
5663
|
* @type object
|
|
5040
5664
|
*/
|
|
5041
|
-
type
|
|
5042
|
-
data?:
|
|
5665
|
+
type UpdateOnboardingProgressRequestConfig = {
|
|
5666
|
+
data?: UpdateOnboardingProgressData;
|
|
5043
5667
|
/**
|
|
5044
5668
|
* @type object
|
|
5045
5669
|
*/
|
|
5046
5670
|
pathParams: {
|
|
5047
|
-
|
|
5671
|
+
org_id: UpdateOnboardingProgressPathOrgId;
|
|
5048
5672
|
};
|
|
5673
|
+
queryParams?: never;
|
|
5674
|
+
headerParams?: never;
|
|
5049
5675
|
/**
|
|
5050
|
-
* @type
|
|
5676
|
+
* @type string
|
|
5051
5677
|
*/
|
|
5052
|
-
|
|
5053
|
-
|
|
5054
|
-
|
|
5055
|
-
|
|
5056
|
-
|
|
5678
|
+
url: `/v1/organizations/${string}/onboarding`;
|
|
5679
|
+
};
|
|
5680
|
+
|
|
5681
|
+
/**
|
|
5682
|
+
* Generated by Kubb (https://kubb.dev/).
|
|
5683
|
+
* Do not edit manually.
|
|
5684
|
+
*/
|
|
5685
|
+
/**
|
|
5686
|
+
* @description An organization visible to the caller\'s credential.
|
|
5687
|
+
* @type object
|
|
5688
|
+
*/
|
|
5689
|
+
type OrganizationSummary = {
|
|
5690
|
+
/**
|
|
5691
|
+
* @description Organization identifier.
|
|
5692
|
+
* @example org_abc123
|
|
5693
|
+
* @type string
|
|
5694
|
+
*/
|
|
5695
|
+
id: string;
|
|
5057
5696
|
/**
|
|
5697
|
+
* @description Organization display name.
|
|
5698
|
+
* @example Acme Corp
|
|
5058
5699
|
* @type string
|
|
5059
5700
|
*/
|
|
5060
|
-
|
|
5701
|
+
name: string;
|
|
5702
|
+
/**
|
|
5703
|
+
* @description Organization slug used in URLs and routing.
|
|
5704
|
+
* @example acme-corp
|
|
5705
|
+
* @type string
|
|
5706
|
+
*/
|
|
5707
|
+
slug: string;
|
|
5708
|
+
/**
|
|
5709
|
+
* @description The caller\'s role within the organization. Omitted for organization-scoped API keys, which act as the organization itself rather than as a member.
|
|
5710
|
+
* @example owner
|
|
5711
|
+
* @type string | undefined
|
|
5712
|
+
*/
|
|
5713
|
+
role?: string;
|
|
5061
5714
|
};
|
|
5062
5715
|
|
|
5063
5716
|
/**
|
|
@@ -5065,92 +5718,126 @@ type ListPolicyProfilesRequestConfig = {
|
|
|
5065
5718
|
* Do not edit manually.
|
|
5066
5719
|
*/
|
|
5067
5720
|
|
|
5068
|
-
|
|
5721
|
+
/**
|
|
5722
|
+
* @description Organizations visible to the caller\'s credential.
|
|
5723
|
+
* @type object
|
|
5724
|
+
*/
|
|
5725
|
+
type ListOrganizationsResponse = {
|
|
5726
|
+
/**
|
|
5727
|
+
* @description Organizations the caller can access.
|
|
5728
|
+
* @type array
|
|
5729
|
+
*/
|
|
5730
|
+
organizations: OrganizationSummary[];
|
|
5731
|
+
};
|
|
5732
|
+
|
|
5733
|
+
/**
|
|
5734
|
+
* Generated by Kubb (https://kubb.dev/).
|
|
5735
|
+
* Do not edit manually.
|
|
5736
|
+
*/
|
|
5737
|
+
|
|
5738
|
+
/**
|
|
5739
|
+
* @description Organizations visible to the caller\'s credential.
|
|
5740
|
+
* @type object
|
|
5741
|
+
*/
|
|
5742
|
+
type ListOrganizationsStatus200 = ListOrganizationsResponse;
|
|
5743
|
+
|
|
5744
|
+
/**
|
|
5745
|
+
* Generated by Kubb (https://kubb.dev/).
|
|
5746
|
+
* Do not edit manually.
|
|
5747
|
+
*/
|
|
5748
|
+
|
|
5749
|
+
declare const policyProfileAccessModeEnum: {
|
|
5069
5750
|
readonly read_only: "read_only";
|
|
5070
5751
|
readonly read_write: "read_write";
|
|
5071
5752
|
};
|
|
5072
|
-
type
|
|
5073
|
-
declare const
|
|
5753
|
+
type PolicyProfileAccessModeEnumKey = (typeof policyProfileAccessModeEnum)[keyof typeof policyProfileAccessModeEnum];
|
|
5754
|
+
declare const policyProfileWriteModeEnum: {
|
|
5074
5755
|
readonly normal: "normal";
|
|
5075
5756
|
readonly rollback: "rollback";
|
|
5076
5757
|
readonly sandbox: "sandbox";
|
|
5077
5758
|
};
|
|
5078
|
-
type
|
|
5079
|
-
declare const
|
|
5759
|
+
type PolicyProfileWriteModeEnumKey = (typeof policyProfileWriteModeEnum)[keyof typeof policyProfileWriteModeEnum];
|
|
5760
|
+
declare const policyProfileApprovalModeEnum: {
|
|
5080
5761
|
readonly off: "off";
|
|
5081
5762
|
readonly writes: "writes";
|
|
5082
5763
|
readonly ddl: "ddl";
|
|
5083
5764
|
readonly all: "all";
|
|
5084
5765
|
};
|
|
5085
|
-
type
|
|
5086
|
-
declare const
|
|
5766
|
+
type PolicyProfileApprovalModeEnumKey = (typeof policyProfileApprovalModeEnum)[keyof typeof policyProfileApprovalModeEnum];
|
|
5767
|
+
declare const policyProfileMigrationSafetyEnum: {
|
|
5087
5768
|
readonly off: "off";
|
|
5088
5769
|
readonly warn: "warn";
|
|
5089
5770
|
readonly block: "block";
|
|
5090
5771
|
};
|
|
5091
|
-
type
|
|
5772
|
+
type PolicyProfileMigrationSafetyEnumKey = (typeof policyProfileMigrationSafetyEnum)[keyof typeof policyProfileMigrationSafetyEnum];
|
|
5092
5773
|
/**
|
|
5093
|
-
* @description
|
|
5774
|
+
* @description A named bundle of rules enforced on agent credentials in the data plane.
|
|
5094
5775
|
* @type object
|
|
5095
5776
|
*/
|
|
5096
|
-
type
|
|
5777
|
+
type PolicyProfile = {
|
|
5778
|
+
/**
|
|
5779
|
+
* @description Unique policy profile identifier (prefixed).
|
|
5780
|
+
* @example pol_01h455vb4pex5vsknk084sn02q
|
|
5781
|
+
* @type string
|
|
5782
|
+
*/
|
|
5783
|
+
id: string;
|
|
5784
|
+
/**
|
|
5785
|
+
* @description Owning project ID.
|
|
5786
|
+
* @example prj_01h455vb4pex5vsknk084sn02q
|
|
5787
|
+
* @type string
|
|
5788
|
+
*/
|
|
5789
|
+
project_id: string;
|
|
5097
5790
|
/**
|
|
5098
5791
|
* @description Human-readable name for the policy profile.
|
|
5099
|
-
* @
|
|
5100
|
-
* @maxLength 128
|
|
5792
|
+
* @example Read-only analytics
|
|
5101
5793
|
* @type string
|
|
5102
5794
|
*/
|
|
5103
5795
|
name: string;
|
|
5104
5796
|
/**
|
|
5105
5797
|
* @description read_only blocks all data and schema mutations.
|
|
5106
|
-
* @
|
|
5107
|
-
* @type string | undefined
|
|
5798
|
+
* @type string
|
|
5108
5799
|
*/
|
|
5109
|
-
access_mode
|
|
5800
|
+
access_mode: PolicyProfileAccessModeEnumKey;
|
|
5110
5801
|
/**
|
|
5111
5802
|
* @description Per-statement-kind allow/deny lists. Empty allow means all kinds permitted by the access mode.
|
|
5112
5803
|
* @type object | undefined
|
|
5113
5804
|
*/
|
|
5114
5805
|
statement_rules?: StatementRules;
|
|
5115
5806
|
/**
|
|
5116
|
-
* @description If non-empty, only these relations are reachable.
|
|
5117
|
-
* @type array
|
|
5807
|
+
* @description If non-empty, only these relations are reachable. Schema-qualified or bare names.
|
|
5808
|
+
* @type array
|
|
5118
5809
|
*/
|
|
5119
|
-
table_allowlist
|
|
5810
|
+
table_allowlist: string[];
|
|
5120
5811
|
/**
|
|
5121
|
-
* @description Relations explicitly blocked.
|
|
5122
|
-
* @type array
|
|
5812
|
+
* @description Relations explicitly blocked (takes precedence over the allowlist).
|
|
5813
|
+
* @type array
|
|
5123
5814
|
*/
|
|
5124
|
-
table_denylist
|
|
5815
|
+
table_denylist: string[];
|
|
5125
5816
|
/**
|
|
5126
5817
|
* @description Column masking rules applied to query results.
|
|
5127
|
-
* @type array
|
|
5818
|
+
* @type array
|
|
5128
5819
|
*/
|
|
5129
|
-
masking_rules
|
|
5820
|
+
masking_rules: MaskingRule[];
|
|
5130
5821
|
/**
|
|
5131
5822
|
* @description Max queries per rolling hour window. 0 means unlimited.
|
|
5132
|
-
* @minLength 0
|
|
5133
5823
|
* @default 0
|
|
5134
5824
|
* @type integer | undefined
|
|
5135
5825
|
*/
|
|
5136
5826
|
budget_queries_per_hour?: number;
|
|
5137
5827
|
/**
|
|
5138
5828
|
* @description Max queries per day window. 0 means unlimited.
|
|
5139
|
-
* @minLength 0
|
|
5140
5829
|
* @default 0
|
|
5141
5830
|
* @type integer | undefined
|
|
5142
5831
|
*/
|
|
5143
5832
|
budget_queries_per_day?: number;
|
|
5144
5833
|
/**
|
|
5145
5834
|
* @description Max rows returned per query. 0 means unlimited.
|
|
5146
|
-
* @minLength 0
|
|
5147
5835
|
* @default 0
|
|
5148
5836
|
* @type integer | undefined
|
|
5149
5837
|
*/
|
|
5150
5838
|
max_rows?: number;
|
|
5151
5839
|
/**
|
|
5152
5840
|
* @description Upstream statement timeout for agent sessions. 0 uses the project default.
|
|
5153
|
-
* @minLength 0
|
|
5154
5841
|
* @default 0
|
|
5155
5842
|
* @type integer | undefined
|
|
5156
5843
|
*/
|
|
@@ -5165,13 +5852,13 @@ type PolicyProfileInput = {
|
|
|
5165
5852
|
* @default "normal"
|
|
5166
5853
|
* @type string | undefined
|
|
5167
5854
|
*/
|
|
5168
|
-
write_mode?:
|
|
5855
|
+
write_mode?: PolicyProfileWriteModeEnumKey;
|
|
5169
5856
|
/**
|
|
5170
5857
|
* @description Which statement classes require human approval before execution.
|
|
5171
5858
|
* @default "off"
|
|
5172
5859
|
* @type string | undefined
|
|
5173
5860
|
*/
|
|
5174
|
-
approval_mode?:
|
|
5861
|
+
approval_mode?: PolicyProfileApprovalModeEnumKey;
|
|
5175
5862
|
/**
|
|
5176
5863
|
* @description Statements touching at most this many rows are auto-approved. 0 means none.
|
|
5177
5864
|
* @minLength 0
|
|
@@ -5191,7 +5878,7 @@ type PolicyProfileInput = {
|
|
|
5191
5878
|
* @default "off"
|
|
5192
5879
|
* @type string | undefined
|
|
5193
5880
|
*/
|
|
5194
|
-
migration_safety?:
|
|
5881
|
+
migration_safety?: PolicyProfileMigrationSafetyEnumKey;
|
|
5195
5882
|
/**
|
|
5196
5883
|
* @description Per-day egress budget in bytes. 0 means unlimited.
|
|
5197
5884
|
* @minLength 0
|
|
@@ -5206,88 +5893,16 @@ type PolicyProfileInput = {
|
|
|
5206
5893
|
* @type integer | undefined
|
|
5207
5894
|
*/
|
|
5208
5895
|
max_affected_rows?: number;
|
|
5209
|
-
};
|
|
5210
|
-
|
|
5211
|
-
/**
|
|
5212
|
-
* Generated by Kubb (https://kubb.dev/).
|
|
5213
|
-
* Do not edit manually.
|
|
5214
|
-
*/
|
|
5215
|
-
|
|
5216
|
-
/**
|
|
5217
|
-
* @description Unique project identifier (prefixed, e.g. prj_xxx).
|
|
5218
|
-
* @pattern ^[a-zA-Z0-9_.-]+$
|
|
5219
|
-
* @type string
|
|
5220
|
-
*/
|
|
5221
|
-
type CreatePolicyProfilePathProjectId = string;
|
|
5222
|
-
/**
|
|
5223
|
-
* @description A named bundle of rules enforced on agent credentials in the data plane.
|
|
5224
|
-
* @type object
|
|
5225
|
-
*/
|
|
5226
|
-
type CreatePolicyProfileStatus201 = PolicyProfile;
|
|
5227
|
-
/**
|
|
5228
|
-
* @description Mutable fields of a policy profile (used for create and update).
|
|
5229
|
-
* @type object
|
|
5230
|
-
*/
|
|
5231
|
-
type CreatePolicyProfileData = PolicyProfileInput;
|
|
5232
|
-
/**
|
|
5233
|
-
* @type object
|
|
5234
|
-
*/
|
|
5235
|
-
type CreatePolicyProfileRequestConfig = {
|
|
5236
|
-
data?: CreatePolicyProfileData;
|
|
5237
|
-
/**
|
|
5238
|
-
* @type object
|
|
5239
|
-
*/
|
|
5240
|
-
pathParams: {
|
|
5241
|
-
project_id: CreatePolicyProfilePathProjectId;
|
|
5242
|
-
};
|
|
5243
|
-
queryParams?: never;
|
|
5244
|
-
headerParams?: never;
|
|
5245
5896
|
/**
|
|
5897
|
+
* @description When the policy profile was created.
|
|
5246
5898
|
* @type string
|
|
5247
5899
|
*/
|
|
5248
|
-
|
|
5249
|
-
};
|
|
5250
|
-
|
|
5251
|
-
/**
|
|
5252
|
-
* Generated by Kubb (https://kubb.dev/).
|
|
5253
|
-
* Do not edit manually.
|
|
5254
|
-
*/
|
|
5255
|
-
|
|
5256
|
-
/**
|
|
5257
|
-
* @description Unique project identifier (prefixed, e.g. prj_xxx).
|
|
5258
|
-
* @pattern ^[a-zA-Z0-9_.-]+$
|
|
5259
|
-
* @type string
|
|
5260
|
-
*/
|
|
5261
|
-
type GetPolicyProfilePathProjectId = string;
|
|
5262
|
-
/**
|
|
5263
|
-
* @description Unique policy profile identifier (prefixed, e.g. pol_xxx).
|
|
5264
|
-
* @pattern ^[a-zA-Z0-9_.-]+$
|
|
5265
|
-
* @type string
|
|
5266
|
-
*/
|
|
5267
|
-
type GetPolicyProfilePathPolicyId = string;
|
|
5268
|
-
/**
|
|
5269
|
-
* @description A named bundle of rules enforced on agent credentials in the data plane.
|
|
5270
|
-
* @type object
|
|
5271
|
-
*/
|
|
5272
|
-
type GetPolicyProfileStatus200 = PolicyProfile;
|
|
5273
|
-
/**
|
|
5274
|
-
* @type object
|
|
5275
|
-
*/
|
|
5276
|
-
type GetPolicyProfileRequestConfig = {
|
|
5277
|
-
data?: never;
|
|
5278
|
-
/**
|
|
5279
|
-
* @type object
|
|
5280
|
-
*/
|
|
5281
|
-
pathParams: {
|
|
5282
|
-
project_id: GetPolicyProfilePathProjectId;
|
|
5283
|
-
policy_id: GetPolicyProfilePathPolicyId;
|
|
5284
|
-
};
|
|
5285
|
-
queryParams?: never;
|
|
5286
|
-
headerParams?: never;
|
|
5900
|
+
created_at: string;
|
|
5287
5901
|
/**
|
|
5902
|
+
* @description When the policy profile was last updated.
|
|
5288
5903
|
* @type string
|
|
5289
5904
|
*/
|
|
5290
|
-
|
|
5905
|
+
updated_at: string;
|
|
5291
5906
|
};
|
|
5292
5907
|
|
|
5293
5908
|
/**
|
|
@@ -5296,45 +5911,20 @@ type GetPolicyProfileRequestConfig = {
|
|
|
5296
5911
|
*/
|
|
5297
5912
|
|
|
5298
5913
|
/**
|
|
5299
|
-
* @description
|
|
5300
|
-
* @pattern ^[a-zA-Z0-9_.-]+$
|
|
5301
|
-
* @type string
|
|
5302
|
-
*/
|
|
5303
|
-
type UpdatePolicyProfilePathProjectId = string;
|
|
5304
|
-
/**
|
|
5305
|
-
* @description Unique policy profile identifier (prefixed, e.g. pol_xxx).
|
|
5306
|
-
* @pattern ^[a-zA-Z0-9_.-]+$
|
|
5307
|
-
* @type string
|
|
5308
|
-
*/
|
|
5309
|
-
type UpdatePolicyProfilePathPolicyId = string;
|
|
5310
|
-
/**
|
|
5311
|
-
* @description A named bundle of rules enforced on agent credentials in the data plane.
|
|
5312
|
-
* @type object
|
|
5313
|
-
*/
|
|
5314
|
-
type UpdatePolicyProfileStatus200 = PolicyProfile;
|
|
5315
|
-
/**
|
|
5316
|
-
* @description Mutable fields of a policy profile (used for create and update).
|
|
5317
|
-
* @type object
|
|
5318
|
-
*/
|
|
5319
|
-
type UpdatePolicyProfileData = PolicyProfileInput;
|
|
5320
|
-
/**
|
|
5914
|
+
* @description Cursor-paginated list of policy profiles for a project.
|
|
5321
5915
|
* @type object
|
|
5322
5916
|
*/
|
|
5323
|
-
type
|
|
5324
|
-
data?: UpdatePolicyProfileData;
|
|
5917
|
+
type ListPolicyProfilesResponse = {
|
|
5325
5918
|
/**
|
|
5326
|
-
* @
|
|
5919
|
+
* @description Policy profiles on the current page.
|
|
5920
|
+
* @type array
|
|
5327
5921
|
*/
|
|
5328
|
-
|
|
5329
|
-
project_id: UpdatePolicyProfilePathProjectId;
|
|
5330
|
-
policy_id: UpdatePolicyProfilePathPolicyId;
|
|
5331
|
-
};
|
|
5332
|
-
queryParams?: never;
|
|
5333
|
-
headerParams?: never;
|
|
5922
|
+
policies: PolicyProfile[];
|
|
5334
5923
|
/**
|
|
5335
|
-
* @
|
|
5924
|
+
* @description Token for the next page. Empty if no more results.
|
|
5925
|
+
* @type string | undefined
|
|
5336
5926
|
*/
|
|
5337
|
-
|
|
5927
|
+
next_page_token?: string;
|
|
5338
5928
|
};
|
|
5339
5929
|
|
|
5340
5930
|
/**
|
|
@@ -5347,90 +5937,49 @@ type UpdatePolicyProfileRequestConfig = {
|
|
|
5347
5937
|
* @pattern ^[a-zA-Z0-9_.-]+$
|
|
5348
5938
|
* @type string
|
|
5349
5939
|
*/
|
|
5350
|
-
type
|
|
5351
|
-
/**
|
|
5352
|
-
* @description Unique policy profile identifier (prefixed, e.g. pol_xxx).
|
|
5353
|
-
* @pattern ^[a-zA-Z0-9_.-]+$
|
|
5354
|
-
* @type string
|
|
5355
|
-
*/
|
|
5356
|
-
type DeletePolicyProfilePathPolicyId = string;
|
|
5357
|
-
/**
|
|
5358
|
-
* @type object
|
|
5359
|
-
*/
|
|
5360
|
-
type DeletePolicyProfileRequestConfig = {
|
|
5361
|
-
data?: never;
|
|
5362
|
-
/**
|
|
5363
|
-
* @type object
|
|
5364
|
-
*/
|
|
5365
|
-
pathParams: {
|
|
5366
|
-
project_id: DeletePolicyProfilePathProjectId;
|
|
5367
|
-
policy_id: DeletePolicyProfilePathPolicyId;
|
|
5368
|
-
};
|
|
5369
|
-
queryParams?: never;
|
|
5370
|
-
headerParams?: never;
|
|
5371
|
-
/**
|
|
5372
|
-
* @type string
|
|
5373
|
-
*/
|
|
5374
|
-
url: `/v1/projects/${string}/policies/${string}`;
|
|
5375
|
-
};
|
|
5376
|
-
|
|
5940
|
+
type ListPolicyProfilesPathProjectId = string;
|
|
5377
5941
|
/**
|
|
5378
|
-
*
|
|
5379
|
-
*
|
|
5942
|
+
* @description Maximum number of items to return (1-100, default 20).
|
|
5943
|
+
* @minLength 1
|
|
5944
|
+
* @maxLength 100
|
|
5945
|
+
* @default 20
|
|
5946
|
+
* @type integer | undefined
|
|
5380
5947
|
*/
|
|
5381
|
-
|
|
5948
|
+
type ListPolicyProfilesQueryPageSize = number | undefined;
|
|
5382
5949
|
/**
|
|
5383
|
-
* @description
|
|
5384
|
-
* @
|
|
5950
|
+
* @description Opaque token for cursor-based pagination.
|
|
5951
|
+
* @pattern ^[a-zA-Z0-9_.-]+$
|
|
5952
|
+
* @type string | undefined
|
|
5385
5953
|
*/
|
|
5386
|
-
type
|
|
5387
|
-
/**
|
|
5388
|
-
* @description The single SQL statement to evaluate.
|
|
5389
|
-
* @minLength 1
|
|
5390
|
-
* @maxLength 100000
|
|
5391
|
-
* @example SELECT email FROM users WHERE id = 1
|
|
5392
|
-
* @type string
|
|
5393
|
-
*/
|
|
5394
|
-
sql: string;
|
|
5395
|
-
/**
|
|
5396
|
-
* @description ID of an existing saved policy profile to evaluate against.
|
|
5397
|
-
* @example pol_01h455vb4pex5vsknk084sn02q
|
|
5398
|
-
* @type string | undefined
|
|
5399
|
-
*/
|
|
5400
|
-
policy_id?: string;
|
|
5401
|
-
/**
|
|
5402
|
-
* @description Mutable fields of a policy profile (used for create and update).
|
|
5403
|
-
* @type object | undefined
|
|
5404
|
-
*/
|
|
5405
|
-
policy?: PolicyProfileInput;
|
|
5406
|
-
};
|
|
5407
|
-
|
|
5954
|
+
type ListPolicyProfilesQueryPageToken = string | undefined;
|
|
5408
5955
|
/**
|
|
5409
|
-
*
|
|
5410
|
-
*
|
|
5411
|
-
*/
|
|
5412
|
-
|
|
5413
|
-
readonly redact: "redact";
|
|
5414
|
-
readonly null: "null";
|
|
5415
|
-
readonly hash: "hash";
|
|
5416
|
-
};
|
|
5417
|
-
type DryEvalMaskedColumnKindEnumKey = (typeof dryEvalMaskedColumnKindEnum)[keyof typeof dryEvalMaskedColumnKindEnum];
|
|
5956
|
+
* @description Cursor-paginated list of policy profiles for a project.
|
|
5957
|
+
* @type object
|
|
5958
|
+
*/
|
|
5959
|
+
type ListPolicyProfilesStatus200 = ListPolicyProfilesResponse;
|
|
5418
5960
|
/**
|
|
5419
|
-
* @description One result column that would be masked, with the mask kind applied.
|
|
5420
5961
|
* @type object
|
|
5421
5962
|
*/
|
|
5422
|
-
type
|
|
5963
|
+
type ListPolicyProfilesRequestConfig = {
|
|
5964
|
+
data?: never;
|
|
5423
5965
|
/**
|
|
5424
|
-
* @
|
|
5425
|
-
* @example email
|
|
5426
|
-
* @type string
|
|
5966
|
+
* @type object
|
|
5427
5967
|
*/
|
|
5428
|
-
|
|
5968
|
+
pathParams: {
|
|
5969
|
+
project_id: ListPolicyProfilesPathProjectId;
|
|
5970
|
+
};
|
|
5971
|
+
/**
|
|
5972
|
+
* @type object | undefined
|
|
5973
|
+
*/
|
|
5974
|
+
queryParams?: {
|
|
5975
|
+
page_size?: ListPolicyProfilesQueryPageSize;
|
|
5976
|
+
page_token?: ListPolicyProfilesQueryPageToken;
|
|
5977
|
+
};
|
|
5978
|
+
headerParams?: never;
|
|
5429
5979
|
/**
|
|
5430
|
-
* @description How the column is masked.
|
|
5431
5980
|
* @type string
|
|
5432
5981
|
*/
|
|
5433
|
-
|
|
5982
|
+
url: `/v1/projects/${string}/policies`;
|
|
5434
5983
|
};
|
|
5435
5984
|
|
|
5436
5985
|
/**
|
|
@@ -5438,60 +5987,39 @@ type DryEvalMaskedColumn = {
|
|
|
5438
5987
|
* Do not edit manually.
|
|
5439
5988
|
*/
|
|
5440
5989
|
|
|
5441
|
-
declare const dryEvalResultVerdictEnum: {
|
|
5442
|
-
readonly allow: "allow";
|
|
5443
|
-
readonly block: "block";
|
|
5444
|
-
readonly mask: "mask";
|
|
5445
|
-
readonly "row-filter": "row-filter";
|
|
5446
|
-
};
|
|
5447
|
-
type DryEvalResultVerdictEnumKey = (typeof dryEvalResultVerdictEnum)[keyof typeof dryEvalResultVerdictEnum];
|
|
5448
5990
|
/**
|
|
5449
|
-
* @description
|
|
5991
|
+
* @description Unique project identifier (prefixed, e.g. prj_xxx).
|
|
5992
|
+
* @pattern ^[a-zA-Z0-9_.-]+$
|
|
5993
|
+
* @type string
|
|
5994
|
+
*/
|
|
5995
|
+
type CreatePolicyProfilePathProjectId = string;
|
|
5996
|
+
/**
|
|
5997
|
+
* @description A named bundle of rules enforced on agent credentials in the data plane.
|
|
5450
5998
|
* @type object
|
|
5451
5999
|
*/
|
|
5452
|
-
type
|
|
5453
|
-
|
|
5454
|
-
|
|
5455
|
-
|
|
5456
|
-
|
|
5457
|
-
|
|
6000
|
+
type CreatePolicyProfileStatus201 = PolicyProfile;
|
|
6001
|
+
/**
|
|
6002
|
+
* @description Mutable fields of a policy profile (used for create and update).
|
|
6003
|
+
* @type object
|
|
6004
|
+
*/
|
|
6005
|
+
type CreatePolicyProfileData = PolicyProfileInput;
|
|
6006
|
+
/**
|
|
6007
|
+
* @type object
|
|
6008
|
+
*/
|
|
6009
|
+
type CreatePolicyProfileRequestConfig = {
|
|
6010
|
+
data?: CreatePolicyProfileData;
|
|
5458
6011
|
/**
|
|
5459
|
-
* @
|
|
5460
|
-
* @example ok
|
|
5461
|
-
* @type string
|
|
6012
|
+
* @type object
|
|
5462
6013
|
*/
|
|
5463
|
-
|
|
6014
|
+
pathParams: {
|
|
6015
|
+
project_id: CreatePolicyProfilePathProjectId;
|
|
6016
|
+
};
|
|
6017
|
+
queryParams?: never;
|
|
6018
|
+
headerParams?: never;
|
|
5464
6019
|
/**
|
|
5465
|
-
* @description Human-readable explanation of the verdict.
|
|
5466
6020
|
* @type string
|
|
5467
6021
|
*/
|
|
5468
|
-
|
|
5469
|
-
/**
|
|
5470
|
-
* @description What the author could do instead (present on block verdicts).
|
|
5471
|
-
* @type string | undefined
|
|
5472
|
-
*/
|
|
5473
|
-
hint?: string;
|
|
5474
|
-
/**
|
|
5475
|
-
* @description Result columns that would be masked. Present on mask/row-filter verdicts.
|
|
5476
|
-
* @type array | undefined
|
|
5477
|
-
*/
|
|
5478
|
-
masked_columns?: DryEvalMaskedColumn[];
|
|
5479
|
-
/**
|
|
5480
|
-
* @description The row-filter predicate ANDed into the statement\'s WHERE clause.
|
|
5481
|
-
* @example tenant_id = current_setting('pgbeam.tenant')
|
|
5482
|
-
* @type string | undefined
|
|
5483
|
-
*/
|
|
5484
|
-
row_filter_predicate?: string;
|
|
5485
|
-
/**
|
|
5486
|
-
* @description The statement as it would be sent upstream after row-filter injection.
|
|
5487
|
-
* @type string | undefined
|
|
5488
|
-
*/
|
|
5489
|
-
rewritten_sql?: string;
|
|
5490
|
-
/**
|
|
5491
|
-
* @description Informational caveats about stateful enforcement a single-statement preview cannot model (per-region budgets, approvals, write-mode routing).
|
|
5492
|
-
* @type array | undefined
|
|
5493
|
-
*/
|
|
5494
|
-
notes?: string[];
|
|
6022
|
+
url: `/v1/projects/${string}/policies`;
|
|
5495
6023
|
};
|
|
5496
6024
|
|
|
5497
6025
|
/**
|
|
@@ -5504,34 +6032,36 @@ type DryEvalResult = {
|
|
|
5504
6032
|
* @pattern ^[a-zA-Z0-9_.-]+$
|
|
5505
6033
|
* @type string
|
|
5506
6034
|
*/
|
|
5507
|
-
type
|
|
6035
|
+
type GetPolicyProfilePathProjectId = string;
|
|
5508
6036
|
/**
|
|
5509
|
-
* @description
|
|
5510
|
-
* @
|
|
6037
|
+
* @description Unique policy profile identifier (prefixed, e.g. pol_xxx).
|
|
6038
|
+
* @pattern ^[a-zA-Z0-9_.-]+$
|
|
6039
|
+
* @type string
|
|
5511
6040
|
*/
|
|
5512
|
-
type
|
|
6041
|
+
type GetPolicyProfilePathPolicyId = string;
|
|
5513
6042
|
/**
|
|
5514
|
-
* @description A
|
|
6043
|
+
* @description A named bundle of rules enforced on agent credentials in the data plane.
|
|
5515
6044
|
* @type object
|
|
5516
6045
|
*/
|
|
5517
|
-
type
|
|
6046
|
+
type GetPolicyProfileStatus200 = PolicyProfile;
|
|
5518
6047
|
/**
|
|
5519
6048
|
* @type object
|
|
5520
6049
|
*/
|
|
5521
|
-
type
|
|
5522
|
-
data?:
|
|
6050
|
+
type GetPolicyProfileRequestConfig = {
|
|
6051
|
+
data?: never;
|
|
5523
6052
|
/**
|
|
5524
6053
|
* @type object
|
|
5525
6054
|
*/
|
|
5526
6055
|
pathParams: {
|
|
5527
|
-
project_id:
|
|
6056
|
+
project_id: GetPolicyProfilePathProjectId;
|
|
6057
|
+
policy_id: GetPolicyProfilePathPolicyId;
|
|
5528
6058
|
};
|
|
5529
6059
|
queryParams?: never;
|
|
5530
6060
|
headerParams?: never;
|
|
5531
6061
|
/**
|
|
5532
6062
|
* @type string
|
|
5533
6063
|
*/
|
|
5534
|
-
url: `/v1/projects/${string}/
|
|
6064
|
+
url: `/v1/projects/${string}/policies/${string}`;
|
|
5535
6065
|
};
|
|
5536
6066
|
|
|
5537
6067
|
/**
|
|
@@ -5540,45 +6070,45 @@ type DryEvalPolicyRequestConfig = {
|
|
|
5540
6070
|
*/
|
|
5541
6071
|
|
|
5542
6072
|
/**
|
|
5543
|
-
* @description
|
|
6073
|
+
* @description Unique project identifier (prefixed, e.g. prj_xxx).
|
|
6074
|
+
* @pattern ^[a-zA-Z0-9_.-]+$
|
|
6075
|
+
* @type string
|
|
6076
|
+
*/
|
|
6077
|
+
type UpdatePolicyProfilePathProjectId = string;
|
|
6078
|
+
/**
|
|
6079
|
+
* @description Unique policy profile identifier (prefixed, e.g. pol_xxx).
|
|
6080
|
+
* @pattern ^[a-zA-Z0-9_.-]+$
|
|
6081
|
+
* @type string
|
|
6082
|
+
*/
|
|
6083
|
+
type UpdatePolicyProfilePathPolicyId = string;
|
|
6084
|
+
/**
|
|
6085
|
+
* @description A named bundle of rules enforced on agent credentials in the data plane.
|
|
5544
6086
|
* @type object
|
|
5545
6087
|
*/
|
|
5546
|
-
type
|
|
5547
|
-
|
|
5548
|
-
|
|
5549
|
-
|
|
5550
|
-
|
|
5551
|
-
|
|
5552
|
-
|
|
5553
|
-
|
|
5554
|
-
|
|
5555
|
-
|
|
5556
|
-
|
|
5557
|
-
policy?: PolicyProfileInput;
|
|
5558
|
-
/**
|
|
5559
|
-
* @description Restrict the replay to traffic recorded for one agent credential.
|
|
5560
|
-
* @example cred_01h455vb4pex5vsknk084sn02q
|
|
5561
|
-
* @type string | undefined
|
|
5562
|
-
*/
|
|
5563
|
-
credential_id?: string;
|
|
5564
|
-
/**
|
|
5565
|
-
* @description Start of the traffic window (inclusive). Defaults to 7 days before end_ts.
|
|
5566
|
-
* @type string | undefined
|
|
5567
|
-
*/
|
|
5568
|
-
start_ts?: string;
|
|
6088
|
+
type UpdatePolicyProfileStatus200 = PolicyProfile;
|
|
6089
|
+
/**
|
|
6090
|
+
* @description Mutable fields of a policy profile (used for create and update).
|
|
6091
|
+
* @type object
|
|
6092
|
+
*/
|
|
6093
|
+
type UpdatePolicyProfileData = PolicyProfileInput;
|
|
6094
|
+
/**
|
|
6095
|
+
* @type object
|
|
6096
|
+
*/
|
|
6097
|
+
type UpdatePolicyProfileRequestConfig = {
|
|
6098
|
+
data?: UpdatePolicyProfileData;
|
|
5569
6099
|
/**
|
|
5570
|
-
* @
|
|
5571
|
-
* @type string | undefined
|
|
6100
|
+
* @type object
|
|
5572
6101
|
*/
|
|
5573
|
-
|
|
6102
|
+
pathParams: {
|
|
6103
|
+
project_id: UpdatePolicyProfilePathProjectId;
|
|
6104
|
+
policy_id: UpdatePolicyProfilePathPolicyId;
|
|
6105
|
+
};
|
|
6106
|
+
queryParams?: never;
|
|
6107
|
+
headerParams?: never;
|
|
5574
6108
|
/**
|
|
5575
|
-
* @
|
|
5576
|
-
* @minLength 1
|
|
5577
|
-
* @maxLength 500
|
|
5578
|
-
* @default 200
|
|
5579
|
-
* @type integer | undefined
|
|
6109
|
+
* @type string
|
|
5580
6110
|
*/
|
|
5581
|
-
|
|
6111
|
+
url: `/v1/projects/${string}/policies/${string}`;
|
|
5582
6112
|
};
|
|
5583
6113
|
|
|
5584
6114
|
/**
|
|
@@ -5586,134 +6116,107 @@ type PolicyReplayInput = {
|
|
|
5586
6116
|
* Do not edit manually.
|
|
5587
6117
|
*/
|
|
5588
6118
|
|
|
5589
|
-
declare const policyReplayItemChangeEnum: {
|
|
5590
|
-
readonly newly_blocked: "newly_blocked";
|
|
5591
|
-
readonly newly_allowed: "newly_allowed";
|
|
5592
|
-
readonly still_allowed: "still_allowed";
|
|
5593
|
-
readonly still_blocked: "still_blocked";
|
|
5594
|
-
};
|
|
5595
|
-
type PolicyReplayItemChangeEnumKey = (typeof policyReplayItemChangeEnum)[keyof typeof policyReplayItemChangeEnum];
|
|
5596
6119
|
/**
|
|
5597
|
-
* @description
|
|
6120
|
+
* @description Unique project identifier (prefixed, e.g. prj_xxx).
|
|
6121
|
+
* @pattern ^[a-zA-Z0-9_.-]+$
|
|
6122
|
+
* @type string
|
|
6123
|
+
*/
|
|
6124
|
+
type DeletePolicyProfilePathProjectId = string;
|
|
6125
|
+
/**
|
|
6126
|
+
* @description Unique policy profile identifier (prefixed, e.g. pol_xxx).
|
|
6127
|
+
* @pattern ^[a-zA-Z0-9_.-]+$
|
|
6128
|
+
* @type string
|
|
6129
|
+
*/
|
|
6130
|
+
type DeletePolicyProfilePathPolicyId = string;
|
|
6131
|
+
/**
|
|
5598
6132
|
* @type object
|
|
5599
6133
|
*/
|
|
5600
|
-
type
|
|
5601
|
-
|
|
5602
|
-
* @description Normalized query hash identifying this statement shape.
|
|
5603
|
-
* @type string
|
|
5604
|
-
*/
|
|
5605
|
-
query_hash: string;
|
|
5606
|
-
/**
|
|
5607
|
-
* @description The recorded statement (normalized, literals replaced with $N placeholders), from its most recent occurrence.
|
|
5608
|
-
* @type string
|
|
5609
|
-
*/
|
|
5610
|
-
sql: string;
|
|
5611
|
-
/**
|
|
5612
|
-
* @description Statement kind (select, insert, update, delete, ddl, ...).
|
|
5613
|
-
* @type string | undefined
|
|
5614
|
-
*/
|
|
5615
|
-
statement_kind?: string;
|
|
5616
|
-
/**
|
|
5617
|
-
* @description How many recorded entries share this query shape in the window.
|
|
5618
|
-
* @type integer
|
|
5619
|
-
*/
|
|
5620
|
-
occurrences: number;
|
|
5621
|
-
/**
|
|
5622
|
-
* @description Oldest occurrence in the window.
|
|
5623
|
-
* @type string
|
|
5624
|
-
*/
|
|
5625
|
-
first_seen: string;
|
|
5626
|
-
/**
|
|
5627
|
-
* @description Newest occurrence in the window.
|
|
5628
|
-
* @type string
|
|
5629
|
-
*/
|
|
5630
|
-
last_seen: string;
|
|
5631
|
-
/**
|
|
5632
|
-
* @description The most recent recorded outcome for this query (query, masked, truncated, or blocked).
|
|
5633
|
-
* @type string
|
|
5634
|
-
*/
|
|
5635
|
-
recorded_event: string;
|
|
5636
|
-
/**
|
|
5637
|
-
* @description The decision rule recorded with a blocked outcome.
|
|
5638
|
-
* @type string | undefined
|
|
5639
|
-
*/
|
|
5640
|
-
recorded_rule?: string;
|
|
6134
|
+
type DeletePolicyProfileRequestConfig = {
|
|
6135
|
+
data?: never;
|
|
5641
6136
|
/**
|
|
5642
|
-
* @
|
|
5643
|
-
* @type string
|
|
6137
|
+
* @type object
|
|
5644
6138
|
*/
|
|
5645
|
-
|
|
6139
|
+
pathParams: {
|
|
6140
|
+
project_id: DeletePolicyProfilePathProjectId;
|
|
6141
|
+
policy_id: DeletePolicyProfilePathPolicyId;
|
|
6142
|
+
};
|
|
6143
|
+
queryParams?: never;
|
|
6144
|
+
headerParams?: never;
|
|
5646
6145
|
/**
|
|
5647
|
-
* @
|
|
5648
|
-
* @type object
|
|
6146
|
+
* @type string
|
|
5649
6147
|
*/
|
|
5650
|
-
|
|
6148
|
+
url: `/v1/projects/${string}/policies/${string}`;
|
|
5651
6149
|
};
|
|
5652
6150
|
|
|
5653
6151
|
/**
|
|
5654
6152
|
* Generated by Kubb (https://kubb.dev/).
|
|
5655
6153
|
* Do not edit manually.
|
|
5656
6154
|
*/
|
|
6155
|
+
|
|
5657
6156
|
/**
|
|
5658
|
-
* @description
|
|
6157
|
+
* @description A SQL statement to test plus the policy to test it against. Supply exactly one of policy_id (an existing saved policy) or policy (an unsaved draft, e.g. the in-progress editor form).
|
|
5659
6158
|
* @type object
|
|
5660
6159
|
*/
|
|
5661
|
-
type
|
|
5662
|
-
/**
|
|
5663
|
-
* @description Recorded audit entries covered by the replayed queries.
|
|
5664
|
-
* @type integer
|
|
5665
|
-
*/
|
|
5666
|
-
entries_scanned: number;
|
|
5667
|
-
/**
|
|
5668
|
-
* @description Distinct normalized queries found in the window (capped at limit).
|
|
5669
|
-
* @type integer
|
|
5670
|
-
*/
|
|
5671
|
-
distinct_queries: number;
|
|
5672
|
-
/**
|
|
5673
|
-
* @description Distinct queries actually evaluated against the candidate policy.
|
|
5674
|
-
* @type integer
|
|
5675
|
-
*/
|
|
5676
|
-
evaluated: number;
|
|
5677
|
-
/**
|
|
5678
|
-
* @description Queries the candidate policy would allow unchanged.
|
|
5679
|
-
* @type integer
|
|
5680
|
-
*/
|
|
5681
|
-
would_allow: number;
|
|
5682
|
-
/**
|
|
5683
|
-
* @description Queries the candidate policy would block.
|
|
5684
|
-
* @type integer
|
|
5685
|
-
*/
|
|
5686
|
-
would_block: number;
|
|
5687
|
-
/**
|
|
5688
|
-
* @description Queries the candidate policy would mask result columns on.
|
|
5689
|
-
* @type integer
|
|
5690
|
-
*/
|
|
5691
|
-
would_mask: number;
|
|
6160
|
+
type DryEvalInput = {
|
|
5692
6161
|
/**
|
|
5693
|
-
* @description
|
|
5694
|
-
* @
|
|
6162
|
+
* @description The single SQL statement to evaluate.
|
|
6163
|
+
* @minLength 1
|
|
6164
|
+
* @maxLength 100000
|
|
6165
|
+
* @example SELECT email FROM users WHERE id = 1
|
|
6166
|
+
* @type string
|
|
5695
6167
|
*/
|
|
5696
|
-
|
|
6168
|
+
sql: string;
|
|
5697
6169
|
/**
|
|
5698
|
-
* @description
|
|
5699
|
-
* @
|
|
6170
|
+
* @description ID of an existing saved policy profile to evaluate against.
|
|
6171
|
+
* @example pol_01h455vb4pex5vsknk084sn02q
|
|
6172
|
+
* @type string | undefined
|
|
5700
6173
|
*/
|
|
5701
|
-
|
|
6174
|
+
policy_id?: string;
|
|
5702
6175
|
/**
|
|
5703
|
-
* @description
|
|
5704
|
-
* @type
|
|
6176
|
+
* @description Mutable fields of a policy profile (used for create and update).
|
|
6177
|
+
* @type object | undefined
|
|
5705
6178
|
*/
|
|
5706
|
-
|
|
6179
|
+
policy?: PolicyProfileInput;
|
|
6180
|
+
};
|
|
6181
|
+
|
|
6182
|
+
/**
|
|
6183
|
+
* Generated by Kubb (https://kubb.dev/).
|
|
6184
|
+
* Do not edit manually.
|
|
6185
|
+
*/
|
|
6186
|
+
|
|
6187
|
+
/**
|
|
6188
|
+
* @description Unique project identifier (prefixed, e.g. prj_xxx).
|
|
6189
|
+
* @pattern ^[a-zA-Z0-9_.-]+$
|
|
6190
|
+
* @type string
|
|
6191
|
+
*/
|
|
6192
|
+
type DryEvalPolicyPathProjectId = string;
|
|
6193
|
+
/**
|
|
6194
|
+
* @description The decision the proxy would reach for the supplied statement under the supplied policy. verdict is the headline outcome; the remaining fields detail why.
|
|
6195
|
+
* @type object
|
|
6196
|
+
*/
|
|
6197
|
+
type DryEvalPolicyStatus200 = DryEvalResult;
|
|
6198
|
+
/**
|
|
6199
|
+
* @description A SQL statement to test plus the policy to test it against. Supply exactly one of policy_id (an existing saved policy) or policy (an unsaved draft, e.g. the in-progress editor form).
|
|
6200
|
+
* @type object
|
|
6201
|
+
*/
|
|
6202
|
+
type DryEvalPolicyData = DryEvalInput;
|
|
6203
|
+
/**
|
|
6204
|
+
* @type object
|
|
6205
|
+
*/
|
|
6206
|
+
type DryEvalPolicyRequestConfig = {
|
|
6207
|
+
data?: DryEvalPolicyData;
|
|
5707
6208
|
/**
|
|
5708
|
-
* @
|
|
5709
|
-
* @type integer
|
|
6209
|
+
* @type object
|
|
5710
6210
|
*/
|
|
5711
|
-
|
|
6211
|
+
pathParams: {
|
|
6212
|
+
project_id: DryEvalPolicyPathProjectId;
|
|
6213
|
+
};
|
|
6214
|
+
queryParams?: never;
|
|
6215
|
+
headerParams?: never;
|
|
5712
6216
|
/**
|
|
5713
|
-
* @
|
|
5714
|
-
* @type boolean
|
|
6217
|
+
* @type string
|
|
5715
6218
|
*/
|
|
5716
|
-
|
|
6219
|
+
url: `/v1/projects/${string}/policy-evaluations`;
|
|
5717
6220
|
};
|
|
5718
6221
|
|
|
5719
6222
|
/**
|
|
@@ -5722,20 +6225,45 @@ type PolicyReplaySummary = {
|
|
|
5722
6225
|
*/
|
|
5723
6226
|
|
|
5724
6227
|
/**
|
|
5725
|
-
* @description
|
|
6228
|
+
* @description A window of recorded agent traffic to replay plus the candidate policy to replay it against. Supply exactly one of policy_id (an existing saved policy) or policy (an unsaved draft, e.g. the in-progress editor form).
|
|
5726
6229
|
* @type object
|
|
5727
6230
|
*/
|
|
5728
|
-
type
|
|
6231
|
+
type PolicyReplayInput = {
|
|
5729
6232
|
/**
|
|
5730
|
-
* @description
|
|
5731
|
-
* @
|
|
6233
|
+
* @description ID of an existing saved policy profile to replay against.
|
|
6234
|
+
* @example pol_01h455vb4pex5vsknk084sn02q
|
|
6235
|
+
* @type string | undefined
|
|
5732
6236
|
*/
|
|
5733
|
-
|
|
6237
|
+
policy_id?: string;
|
|
5734
6238
|
/**
|
|
5735
|
-
* @description
|
|
5736
|
-
* @type
|
|
6239
|
+
* @description Mutable fields of a policy profile (used for create and update).
|
|
6240
|
+
* @type object | undefined
|
|
5737
6241
|
*/
|
|
5738
|
-
|
|
6242
|
+
policy?: PolicyProfileInput;
|
|
6243
|
+
/**
|
|
6244
|
+
* @description Restrict the replay to traffic recorded for one agent credential.
|
|
6245
|
+
* @example cred_01h455vb4pex5vsknk084sn02q
|
|
6246
|
+
* @type string | undefined
|
|
6247
|
+
*/
|
|
6248
|
+
credential_id?: string;
|
|
6249
|
+
/**
|
|
6250
|
+
* @description Start of the traffic window (inclusive). Defaults to 7 days before end_ts.
|
|
6251
|
+
* @type string | undefined
|
|
6252
|
+
*/
|
|
6253
|
+
start_ts?: string;
|
|
6254
|
+
/**
|
|
6255
|
+
* @description End of the traffic window (exclusive). Defaults to now.
|
|
6256
|
+
* @type string | undefined
|
|
6257
|
+
*/
|
|
6258
|
+
end_ts?: string;
|
|
6259
|
+
/**
|
|
6260
|
+
* @description Maximum number of distinct queries to replay, newest first. Traffic is deduplicated by normalized query hash before evaluation.
|
|
6261
|
+
* @minLength 1
|
|
6262
|
+
* @maxLength 500
|
|
6263
|
+
* @default 200
|
|
6264
|
+
* @type integer | undefined
|
|
6265
|
+
*/
|
|
6266
|
+
limit?: number;
|
|
5739
6267
|
};
|
|
5740
6268
|
|
|
5741
6269
|
/**
|
|
@@ -8339,6 +8867,10 @@ declare const operationsByTag: {
|
|
|
8339
8867
|
readonly method: "PATCH";
|
|
8340
8868
|
readonly path: "/v1/organizations/{org_id}/onboarding";
|
|
8341
8869
|
};
|
|
8870
|
+
readonly listOrganizations: {
|
|
8871
|
+
readonly method: "GET";
|
|
8872
|
+
readonly path: "/v1/organizations";
|
|
8873
|
+
};
|
|
8342
8874
|
};
|
|
8343
8875
|
readonly agents: {
|
|
8344
8876
|
readonly listAgentCredentials: {
|
|
@@ -8378,6 +8910,40 @@ declare const operationsByTag: {
|
|
|
8378
8910
|
readonly path: "/v1/projects/{project_id}/audit-logs/verify";
|
|
8379
8911
|
};
|
|
8380
8912
|
};
|
|
8913
|
+
readonly policies: {
|
|
8914
|
+
readonly recommendAgentPolicy: {
|
|
8915
|
+
readonly method: "POST";
|
|
8916
|
+
readonly path: "/v1/projects/{project_id}/agents/{agent_id}/policy-recommendation";
|
|
8917
|
+
};
|
|
8918
|
+
readonly listPolicyProfiles: {
|
|
8919
|
+
readonly method: "GET";
|
|
8920
|
+
readonly path: "/v1/projects/{project_id}/policies";
|
|
8921
|
+
};
|
|
8922
|
+
readonly createPolicyProfile: {
|
|
8923
|
+
readonly method: "POST";
|
|
8924
|
+
readonly path: "/v1/projects/{project_id}/policies";
|
|
8925
|
+
};
|
|
8926
|
+
readonly getPolicyProfile: {
|
|
8927
|
+
readonly method: "GET";
|
|
8928
|
+
readonly path: "/v1/projects/{project_id}/policies/{policy_id}";
|
|
8929
|
+
};
|
|
8930
|
+
readonly updatePolicyProfile: {
|
|
8931
|
+
readonly method: "PUT";
|
|
8932
|
+
readonly path: "/v1/projects/{project_id}/policies/{policy_id}";
|
|
8933
|
+
};
|
|
8934
|
+
readonly deletePolicyProfile: {
|
|
8935
|
+
readonly method: "DELETE";
|
|
8936
|
+
readonly path: "/v1/projects/{project_id}/policies/{policy_id}";
|
|
8937
|
+
};
|
|
8938
|
+
readonly dryEvalPolicy: {
|
|
8939
|
+
readonly method: "POST";
|
|
8940
|
+
readonly path: "/v1/projects/{project_id}/policy-evaluations";
|
|
8941
|
+
};
|
|
8942
|
+
readonly replayPolicy: {
|
|
8943
|
+
readonly method: "POST";
|
|
8944
|
+
readonly path: "/v1/projects/{project_id}/policy-replays";
|
|
8945
|
+
};
|
|
8946
|
+
};
|
|
8381
8947
|
readonly anomalies: {
|
|
8382
8948
|
readonly listAnomalyAlerts: {
|
|
8383
8949
|
readonly method: "GET";
|
|
@@ -8568,40 +9134,32 @@ declare const operationsByTag: {
|
|
|
8568
9134
|
readonly path: "/v1/organizations/{org_id}/self-host-enrollments/{enrollment_id}/rotate";
|
|
8569
9135
|
};
|
|
8570
9136
|
};
|
|
8571
|
-
readonly
|
|
8572
|
-
readonly
|
|
8573
|
-
readonly method: "POST";
|
|
8574
|
-
readonly path: "/v1/projects/{project_id}/migrations:lint";
|
|
8575
|
-
};
|
|
8576
|
-
};
|
|
8577
|
-
readonly policies: {
|
|
8578
|
-
readonly listPolicyProfiles: {
|
|
9137
|
+
readonly honeytokens: {
|
|
9138
|
+
readonly listHoneytokens: {
|
|
8579
9139
|
readonly method: "GET";
|
|
8580
|
-
readonly path: "/v1/projects/{project_id}/
|
|
9140
|
+
readonly path: "/v1/projects/{project_id}/honeytokens";
|
|
8581
9141
|
};
|
|
8582
|
-
readonly
|
|
9142
|
+
readonly createHoneytoken: {
|
|
8583
9143
|
readonly method: "POST";
|
|
8584
|
-
readonly path: "/v1/projects/{project_id}/
|
|
9144
|
+
readonly path: "/v1/projects/{project_id}/honeytokens";
|
|
8585
9145
|
};
|
|
8586
|
-
readonly
|
|
9146
|
+
readonly getHoneytoken: {
|
|
8587
9147
|
readonly method: "GET";
|
|
8588
|
-
readonly path: "/v1/projects/{project_id}/
|
|
9148
|
+
readonly path: "/v1/projects/{project_id}/honeytokens/{honeytoken_id}";
|
|
8589
9149
|
};
|
|
8590
|
-
readonly
|
|
9150
|
+
readonly updateHoneytoken: {
|
|
8591
9151
|
readonly method: "PUT";
|
|
8592
|
-
readonly path: "/v1/projects/{project_id}/
|
|
9152
|
+
readonly path: "/v1/projects/{project_id}/honeytokens/{honeytoken_id}";
|
|
8593
9153
|
};
|
|
8594
|
-
readonly
|
|
9154
|
+
readonly deleteHoneytoken: {
|
|
8595
9155
|
readonly method: "DELETE";
|
|
8596
|
-
readonly path: "/v1/projects/{project_id}/
|
|
8597
|
-
};
|
|
8598
|
-
readonly dryEvalPolicy: {
|
|
8599
|
-
readonly method: "POST";
|
|
8600
|
-
readonly path: "/v1/projects/{project_id}/policy-evaluations";
|
|
9156
|
+
readonly path: "/v1/projects/{project_id}/honeytokens/{honeytoken_id}";
|
|
8601
9157
|
};
|
|
8602
|
-
|
|
9158
|
+
};
|
|
9159
|
+
readonly migrations: {
|
|
9160
|
+
readonly lintMigration: {
|
|
8603
9161
|
readonly method: "POST";
|
|
8604
|
-
readonly path: "/v1/projects/{project_id}/
|
|
9162
|
+
readonly path: "/v1/projects/{project_id}/migrations:lint";
|
|
8605
9163
|
};
|
|
8606
9164
|
};
|
|
8607
9165
|
readonly support: {
|
|
@@ -8695,6 +9253,11 @@ declare const operationsByPath: {
|
|
|
8695
9253
|
readonly path: "/v1/projects/{project_id}/agents/{agent_id}/rotate";
|
|
8696
9254
|
readonly operationId: "rotateAgentCredential";
|
|
8697
9255
|
};
|
|
9256
|
+
readonly "POST /v1/projects/{project_id}/agents/{agent_id}/policy-recommendation": {
|
|
9257
|
+
readonly method: "POST";
|
|
9258
|
+
readonly path: "/v1/projects/{project_id}/agents/{agent_id}/policy-recommendation";
|
|
9259
|
+
readonly operationId: "recommendAgentPolicy";
|
|
9260
|
+
};
|
|
8698
9261
|
readonly "GET /v1/projects/{project_id}/anomalies": {
|
|
8699
9262
|
readonly method: "GET";
|
|
8700
9263
|
readonly path: "/v1/projects/{project_id}/anomalies";
|
|
@@ -8845,6 +9408,31 @@ declare const operationsByPath: {
|
|
|
8845
9408
|
readonly path: "/v1/health";
|
|
8846
9409
|
readonly operationId: "getHealth";
|
|
8847
9410
|
};
|
|
9411
|
+
readonly "GET /v1/projects/{project_id}/honeytokens": {
|
|
9412
|
+
readonly method: "GET";
|
|
9413
|
+
readonly path: "/v1/projects/{project_id}/honeytokens";
|
|
9414
|
+
readonly operationId: "listHoneytokens";
|
|
9415
|
+
};
|
|
9416
|
+
readonly "POST /v1/projects/{project_id}/honeytokens": {
|
|
9417
|
+
readonly method: "POST";
|
|
9418
|
+
readonly path: "/v1/projects/{project_id}/honeytokens";
|
|
9419
|
+
readonly operationId: "createHoneytoken";
|
|
9420
|
+
};
|
|
9421
|
+
readonly "GET /v1/projects/{project_id}/honeytokens/{honeytoken_id}": {
|
|
9422
|
+
readonly method: "GET";
|
|
9423
|
+
readonly path: "/v1/projects/{project_id}/honeytokens/{honeytoken_id}";
|
|
9424
|
+
readonly operationId: "getHoneytoken";
|
|
9425
|
+
};
|
|
9426
|
+
readonly "PUT /v1/projects/{project_id}/honeytokens/{honeytoken_id}": {
|
|
9427
|
+
readonly method: "PUT";
|
|
9428
|
+
readonly path: "/v1/projects/{project_id}/honeytokens/{honeytoken_id}";
|
|
9429
|
+
readonly operationId: "updateHoneytoken";
|
|
9430
|
+
};
|
|
9431
|
+
readonly "DELETE /v1/projects/{project_id}/honeytokens/{honeytoken_id}": {
|
|
9432
|
+
readonly method: "DELETE";
|
|
9433
|
+
readonly path: "/v1/projects/{project_id}/honeytokens/{honeytoken_id}";
|
|
9434
|
+
readonly operationId: "deleteHoneytoken";
|
|
9435
|
+
};
|
|
8848
9436
|
readonly "GET /v1/projects/{project_id}/insights": {
|
|
8849
9437
|
readonly method: "GET";
|
|
8850
9438
|
readonly path: "/v1/projects/{project_id}/insights";
|
|
@@ -8865,6 +9453,11 @@ declare const operationsByPath: {
|
|
|
8865
9453
|
readonly path: "/v1/organizations/{org_id}/onboarding";
|
|
8866
9454
|
readonly operationId: "updateOnboardingProgress";
|
|
8867
9455
|
};
|
|
9456
|
+
readonly "GET /v1/organizations": {
|
|
9457
|
+
readonly method: "GET";
|
|
9458
|
+
readonly path: "/v1/organizations";
|
|
9459
|
+
readonly operationId: "listOrganizations";
|
|
9460
|
+
};
|
|
8868
9461
|
readonly "GET /v1/projects/{project_id}/policies": {
|
|
8869
9462
|
readonly method: "GET";
|
|
8870
9463
|
readonly path: "/v1/projects/{project_id}/policies";
|
|
@@ -9062,6 +9655,10 @@ type RevokeAgentCredentialParams = {
|
|
|
9062
9655
|
type RotateAgentCredentialParams = {
|
|
9063
9656
|
pathParams: NonNullable<RotateAgentCredentialRequestConfig["pathParams"]>;
|
|
9064
9657
|
};
|
|
9658
|
+
type RecommendAgentPolicyParams = {
|
|
9659
|
+
pathParams: NonNullable<RecommendAgentPolicyRequestConfig["pathParams"]>;
|
|
9660
|
+
body: NonNullable<RecommendAgentPolicyRequestConfig["data"]>;
|
|
9661
|
+
};
|
|
9065
9662
|
type ListAnomalyAlertsParams = {
|
|
9066
9663
|
pathParams: NonNullable<ListAnomalyAlertsRequestConfig["pathParams"]>;
|
|
9067
9664
|
queryParams?: NonNullable<ListAnomalyAlertsRequestConfig["queryParams"]>;
|
|
@@ -9164,6 +9761,24 @@ type DeleteCustomDomainParams = {
|
|
|
9164
9761
|
type VerifyCustomDomainParams = {
|
|
9165
9762
|
pathParams: NonNullable<VerifyCustomDomainRequestConfig["pathParams"]>;
|
|
9166
9763
|
};
|
|
9764
|
+
type ListHoneytokensParams = {
|
|
9765
|
+
pathParams: NonNullable<ListHoneytokensRequestConfig["pathParams"]>;
|
|
9766
|
+
queryParams?: NonNullable<ListHoneytokensRequestConfig["queryParams"]>;
|
|
9767
|
+
};
|
|
9768
|
+
type CreateHoneytokenParams = {
|
|
9769
|
+
pathParams: NonNullable<CreateHoneytokenRequestConfig["pathParams"]>;
|
|
9770
|
+
body: NonNullable<CreateHoneytokenRequestConfig["data"]>;
|
|
9771
|
+
};
|
|
9772
|
+
type GetHoneytokenParams = {
|
|
9773
|
+
pathParams: NonNullable<GetHoneytokenRequestConfig["pathParams"]>;
|
|
9774
|
+
};
|
|
9775
|
+
type UpdateHoneytokenParams = {
|
|
9776
|
+
pathParams: NonNullable<UpdateHoneytokenRequestConfig["pathParams"]>;
|
|
9777
|
+
body: NonNullable<UpdateHoneytokenRequestConfig["data"]>;
|
|
9778
|
+
};
|
|
9779
|
+
type DeleteHoneytokenParams = {
|
|
9780
|
+
pathParams: NonNullable<DeleteHoneytokenRequestConfig["pathParams"]>;
|
|
9781
|
+
};
|
|
9167
9782
|
type GetProjectInsightsParams = {
|
|
9168
9783
|
pathParams: NonNullable<GetProjectInsightsRequestConfig["pathParams"]>;
|
|
9169
9784
|
queryParams?: NonNullable<GetProjectInsightsRequestConfig["queryParams"]>;
|
|
@@ -9304,6 +9919,7 @@ interface ApiOperations {
|
|
|
9304
9919
|
exportAccountData(): Promise<ExportAccountDataStatus200>;
|
|
9305
9920
|
getOnboardingProgress(params: GetOnboardingProgressParams): Promise<GetOnboardingProgressStatus200>;
|
|
9306
9921
|
updateOnboardingProgress(params: UpdateOnboardingProgressParams): Promise<UpdateOnboardingProgressStatus200>;
|
|
9922
|
+
listOrganizations(): Promise<ListOrganizationsStatus200>;
|
|
9307
9923
|
};
|
|
9308
9924
|
agents: {
|
|
9309
9925
|
listAgentCredentials(params: ListAgentCredentialsParams): Promise<ListAgentCredentialsStatus200>;
|
|
@@ -9316,6 +9932,16 @@ interface ApiOperations {
|
|
|
9316
9932
|
exportAuditLogs(params: ExportAuditLogsParams): Promise<ExportAuditLogsStatus200>;
|
|
9317
9933
|
verifyAuditChain(params: VerifyAuditChainParams): Promise<VerifyAuditChainStatus200>;
|
|
9318
9934
|
};
|
|
9935
|
+
policies: {
|
|
9936
|
+
recommendAgentPolicy(params: RecommendAgentPolicyParams): Promise<RecommendAgentPolicyStatus200>;
|
|
9937
|
+
listPolicyProfiles(params: ListPolicyProfilesParams): Promise<ListPolicyProfilesStatus200>;
|
|
9938
|
+
createPolicyProfile(params: CreatePolicyProfileParams): Promise<CreatePolicyProfileStatus201>;
|
|
9939
|
+
getPolicyProfile(params: GetPolicyProfileParams): Promise<GetPolicyProfileStatus200>;
|
|
9940
|
+
updatePolicyProfile(params: UpdatePolicyProfileParams): Promise<UpdatePolicyProfileStatus200>;
|
|
9941
|
+
deletePolicyProfile(params: DeletePolicyProfileParams): Promise<void>;
|
|
9942
|
+
dryEvalPolicy(params: DryEvalPolicyParams): Promise<DryEvalPolicyStatus200>;
|
|
9943
|
+
replayPolicy(params: ReplayPolicyParams): Promise<ReplayPolicyStatus200>;
|
|
9944
|
+
};
|
|
9319
9945
|
anomalies: {
|
|
9320
9946
|
listAnomalyAlerts(params: ListAnomalyAlertsParams): Promise<ListAnomalyAlertsStatus200>;
|
|
9321
9947
|
updateAnomalyAlert(params: UpdateAnomalyAlertParams): Promise<UpdateAnomalyAlertStatus200>;
|
|
@@ -9374,18 +10000,16 @@ interface ApiOperations {
|
|
|
9374
10000
|
revokeSelfHostEnrollment(params: RevokeSelfHostEnrollmentParams): Promise<void>;
|
|
9375
10001
|
rotateSelfHostEnrollment(params: RotateSelfHostEnrollmentParams): Promise<RotateSelfHostEnrollmentStatus200>;
|
|
9376
10002
|
};
|
|
10003
|
+
honeytokens: {
|
|
10004
|
+
listHoneytokens(params: ListHoneytokensParams): Promise<ListHoneytokensStatus200>;
|
|
10005
|
+
createHoneytoken(params: CreateHoneytokenParams): Promise<CreateHoneytokenStatus201>;
|
|
10006
|
+
getHoneytoken(params: GetHoneytokenParams): Promise<GetHoneytokenStatus200>;
|
|
10007
|
+
updateHoneytoken(params: UpdateHoneytokenParams): Promise<UpdateHoneytokenStatus200>;
|
|
10008
|
+
deleteHoneytoken(params: DeleteHoneytokenParams): Promise<void>;
|
|
10009
|
+
};
|
|
9377
10010
|
migrations: {
|
|
9378
10011
|
lintMigration(params: LintMigrationParams): Promise<LintMigrationStatus200>;
|
|
9379
10012
|
};
|
|
9380
|
-
policies: {
|
|
9381
|
-
listPolicyProfiles(params: ListPolicyProfilesParams): Promise<ListPolicyProfilesStatus200>;
|
|
9382
|
-
createPolicyProfile(params: CreatePolicyProfileParams): Promise<CreatePolicyProfileStatus201>;
|
|
9383
|
-
getPolicyProfile(params: GetPolicyProfileParams): Promise<GetPolicyProfileStatus200>;
|
|
9384
|
-
updatePolicyProfile(params: UpdatePolicyProfileParams): Promise<UpdatePolicyProfileStatus200>;
|
|
9385
|
-
deletePolicyProfile(params: DeletePolicyProfileParams): Promise<void>;
|
|
9386
|
-
dryEvalPolicy(params: DryEvalPolicyParams): Promise<DryEvalPolicyStatus200>;
|
|
9387
|
-
replayPolicy(params: ReplayPolicyParams): Promise<ReplayPolicyStatus200>;
|
|
9388
|
-
};
|
|
9389
10013
|
support: {
|
|
9390
10014
|
listSupportCases(params: ListSupportCasesParams): Promise<ListSupportCasesStatus200>;
|
|
9391
10015
|
createSupportCase(params: CreateSupportCaseParams): Promise<CreateSupportCaseStatus201>;
|
|
@@ -9434,6 +10058,10 @@ interface RequestMap {
|
|
|
9434
10058
|
params: RotateAgentCredentialParams;
|
|
9435
10059
|
response: RotateAgentCredentialStatus200;
|
|
9436
10060
|
};
|
|
10061
|
+
"POST /v1/projects/{project_id}/agents/{agent_id}/policy-recommendation": {
|
|
10062
|
+
params: RecommendAgentPolicyParams;
|
|
10063
|
+
response: RecommendAgentPolicyStatus200;
|
|
10064
|
+
};
|
|
9437
10065
|
"GET /v1/projects/{project_id}/anomalies": {
|
|
9438
10066
|
params: ListAnomalyAlertsParams;
|
|
9439
10067
|
response: ListAnomalyAlertsStatus200;
|
|
@@ -9554,6 +10182,26 @@ interface RequestMap {
|
|
|
9554
10182
|
params?: undefined;
|
|
9555
10183
|
response: GetHealthStatus200;
|
|
9556
10184
|
};
|
|
10185
|
+
"GET /v1/projects/{project_id}/honeytokens": {
|
|
10186
|
+
params: ListHoneytokensParams;
|
|
10187
|
+
response: ListHoneytokensStatus200;
|
|
10188
|
+
};
|
|
10189
|
+
"POST /v1/projects/{project_id}/honeytokens": {
|
|
10190
|
+
params: CreateHoneytokenParams;
|
|
10191
|
+
response: CreateHoneytokenStatus201;
|
|
10192
|
+
};
|
|
10193
|
+
"GET /v1/projects/{project_id}/honeytokens/{honeytoken_id}": {
|
|
10194
|
+
params: GetHoneytokenParams;
|
|
10195
|
+
response: GetHoneytokenStatus200;
|
|
10196
|
+
};
|
|
10197
|
+
"PUT /v1/projects/{project_id}/honeytokens/{honeytoken_id}": {
|
|
10198
|
+
params: UpdateHoneytokenParams;
|
|
10199
|
+
response: UpdateHoneytokenStatus200;
|
|
10200
|
+
};
|
|
10201
|
+
"DELETE /v1/projects/{project_id}/honeytokens/{honeytoken_id}": {
|
|
10202
|
+
params: DeleteHoneytokenParams;
|
|
10203
|
+
response: void;
|
|
10204
|
+
};
|
|
9557
10205
|
"GET /v1/projects/{project_id}/insights": {
|
|
9558
10206
|
params: GetProjectInsightsParams;
|
|
9559
10207
|
response: GetProjectInsightsStatus200;
|
|
@@ -9570,6 +10218,10 @@ interface RequestMap {
|
|
|
9570
10218
|
params: UpdateOnboardingProgressParams;
|
|
9571
10219
|
response: UpdateOnboardingProgressStatus200;
|
|
9572
10220
|
};
|
|
10221
|
+
"GET /v1/organizations": {
|
|
10222
|
+
params?: undefined;
|
|
10223
|
+
response: ListOrganizationsStatus200;
|
|
10224
|
+
};
|
|
9573
10225
|
"GET /v1/projects/{project_id}/policies": {
|
|
9574
10226
|
params: ListPolicyProfilesParams;
|
|
9575
10227
|
response: ListPolicyProfilesStatus200;
|