@indiciaosint/sdk 1.2.1 → 1.2.3

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.
Files changed (75) hide show
  1. package/README.md +7 -1
  2. package/esm/funcs/infrastructure-virus-total-content.d.ts +18 -0
  3. package/esm/funcs/infrastructure-virus-total-content.d.ts.map +1 -0
  4. package/esm/funcs/infrastructure-virus-total-content.js +84 -0
  5. package/esm/funcs/infrastructure-virus-total-content.js.map +1 -0
  6. package/esm/funcs/intelligence-virus-total-intelligence.d.ts +18 -0
  7. package/esm/funcs/intelligence-virus-total-intelligence.d.ts.map +1 -0
  8. package/esm/funcs/intelligence-virus-total-intelligence.js +84 -0
  9. package/esm/funcs/intelligence-virus-total-intelligence.js.map +1 -0
  10. package/esm/funcs/tools-download-virus-total-file.d.ts +18 -0
  11. package/esm/funcs/tools-download-virus-total-file.d.ts.map +1 -0
  12. package/esm/funcs/tools-download-virus-total-file.js +84 -0
  13. package/esm/funcs/tools-download-virus-total-file.js.map +1 -0
  14. package/esm/lib/config.d.ts +2 -2
  15. package/esm/lib/config.js +2 -2
  16. package/esm/models/operations/download-virus-total-file.d.ts +34 -0
  17. package/esm/models/operations/download-virus-total-file.d.ts.map +1 -0
  18. package/esm/models/operations/download-virus-total-file.js +33 -0
  19. package/esm/models/operations/download-virus-total-file.js.map +1 -0
  20. package/esm/models/operations/get-activity.d.ts +3 -0
  21. package/esm/models/operations/get-activity.d.ts.map +1 -1
  22. package/esm/models/operations/get-activity.js +3 -0
  23. package/esm/models/operations/get-activity.js.map +1 -1
  24. package/esm/models/operations/get-info.d.ts +3 -0
  25. package/esm/models/operations/get-info.d.ts.map +1 -1
  26. package/esm/models/operations/get-info.js +3 -0
  27. package/esm/models/operations/get-info.js.map +1 -1
  28. package/esm/models/operations/index.d.ts +3 -0
  29. package/esm/models/operations/index.d.ts.map +1 -1
  30. package/esm/models/operations/index.js +3 -0
  31. package/esm/models/operations/index.js.map +1 -1
  32. package/esm/models/operations/list-activities.d.ts +3 -0
  33. package/esm/models/operations/list-activities.d.ts.map +1 -1
  34. package/esm/models/operations/list-activities.js +3 -0
  35. package/esm/models/operations/list-activities.js.map +1 -1
  36. package/esm/models/operations/search-web-databases.d.ts +2 -2
  37. package/esm/models/operations/search-web-databases.js +2 -2
  38. package/esm/models/operations/search-web-databases.js.map +1 -1
  39. package/esm/models/operations/virus-total-content.d.ts +62 -0
  40. package/esm/models/operations/virus-total-content.d.ts.map +1 -0
  41. package/esm/models/operations/virus-total-content.js +89 -0
  42. package/esm/models/operations/virus-total-content.js.map +1 -0
  43. package/esm/models/operations/virus-total-intelligence.d.ts +75 -0
  44. package/esm/models/operations/virus-total-intelligence.d.ts.map +1 -0
  45. package/esm/models/operations/virus-total-intelligence.js +92 -0
  46. package/esm/models/operations/virus-total-intelligence.js.map +1 -0
  47. package/esm/sdk/infrastructure.d.ts +7 -0
  48. package/esm/sdk/infrastructure.d.ts.map +1 -1
  49. package/esm/sdk/infrastructure.js +10 -0
  50. package/esm/sdk/infrastructure.js.map +1 -1
  51. package/esm/sdk/intelligence.d.ts +7 -0
  52. package/esm/sdk/intelligence.d.ts.map +1 -1
  53. package/esm/sdk/intelligence.js +10 -0
  54. package/esm/sdk/intelligence.js.map +1 -1
  55. package/esm/sdk/tools.d.ts +7 -0
  56. package/esm/sdk/tools.d.ts.map +1 -1
  57. package/esm/sdk/tools.js +10 -0
  58. package/esm/sdk/tools.js.map +1 -1
  59. package/jsr.json +1 -1
  60. package/package.json +1 -1
  61. package/src/funcs/infrastructure-virus-total-content.ts +174 -0
  62. package/src/funcs/intelligence-virus-total-intelligence.ts +174 -0
  63. package/src/funcs/tools-download-virus-total-file.ts +174 -0
  64. package/src/lib/config.ts +2 -2
  65. package/src/models/operations/download-virus-total-file.ts +93 -0
  66. package/src/models/operations/get-activity.ts +3 -0
  67. package/src/models/operations/get-info.ts +3 -0
  68. package/src/models/operations/index.ts +3 -0
  69. package/src/models/operations/list-activities.ts +3 -0
  70. package/src/models/operations/search-web-databases.ts +2 -2
  71. package/src/models/operations/virus-total-content.ts +190 -0
  72. package/src/models/operations/virus-total-intelligence.ts +210 -0
  73. package/src/sdk/infrastructure.ts +18 -0
  74. package/src/sdk/intelligence.ts +18 -0
  75. package/src/sdk/tools.ts +18 -0
@@ -23,6 +23,13 @@ export declare class Infrastructure extends ClientSDK {
23
23
  * IP service and software intelligence
24
24
  */
25
25
  searchShodan(request: operations.SearchShodanRequest, options?: RequestOptions): Promise<operations.SearchShodanResponse>;
26
+ /**
27
+ * VirusTotal Content Search
28
+ *
29
+ * @remarks
30
+ * Search VirusTotal for files whose content matches a given string.
31
+ */
32
+ virusTotalContent(request: operations.VirusTotalContentRequest, options?: RequestOptions): Promise<operations.VirusTotalContentResponse>;
26
33
  /**
27
34
  * Whois
28
35
  *
@@ -1 +1 @@
1
- {"version":3,"file":"infrastructure.d.ts","sourceRoot":"","sources":["../../src/sdk/infrastructure.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,UAAU,MAAM,+BAA+B,CAAC;AAG5D,qBAAa,cAAe,SAAQ,SAAS;IAC3C;;;;;OAKG;IACG,YAAY,CAChB,OAAO,EAAE,UAAU,CAAC,mBAAmB,EACvC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAM1C;IAED;;;;;OAKG;IACG,SAAS,CACb,OAAO,EAAE,UAAU,CAAC,gBAAgB,EACpC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAMvC;IAED;;;;;OAKG;IACG,YAAY,CAChB,OAAO,EAAE,UAAU,CAAC,mBAAmB,EACvC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAM1C;IAED;;;;;OAKG;IACG,WAAW,CACf,OAAO,EAAE,UAAU,CAAC,kBAAkB,EACtC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAMzC;IAED;;;;;OAKG;IACG,SAAS,CACb,OAAO,EAAE,UAAU,CAAC,gBAAgB,EACpC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAMhD;IAED;;;;;OAKG;IACG,kBAAkB,CACtB,OAAO,EAAE,UAAU,CAAC,yBAAyB,EAC7C,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,0BAA0B,CAAC,CAMhD;CACF"}
1
+ {"version":3,"file":"infrastructure.d.ts","sourceRoot":"","sources":["../../src/sdk/infrastructure.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,UAAU,MAAM,+BAA+B,CAAC;AAG5D,qBAAa,cAAe,SAAQ,SAAS;IAC3C;;;;;OAKG;IACG,YAAY,CAChB,OAAO,EAAE,UAAU,CAAC,mBAAmB,EACvC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAM1C;IAED;;;;;OAKG;IACG,SAAS,CACb,OAAO,EAAE,UAAU,CAAC,gBAAgB,EACpC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAMvC;IAED;;;;;OAKG;IACG,YAAY,CAChB,OAAO,EAAE,UAAU,CAAC,mBAAmB,EACvC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAM1C;IAED;;;;;OAKG;IACG,iBAAiB,CACrB,OAAO,EAAE,UAAU,CAAC,wBAAwB,EAC5C,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,yBAAyB,CAAC,CAM/C;IAED;;;;;OAKG;IACG,WAAW,CACf,OAAO,EAAE,UAAU,CAAC,kBAAkB,EACtC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAMzC;IAED;;;;;OAKG;IACG,SAAS,CACb,OAAO,EAAE,UAAU,CAAC,gBAAgB,EACpC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAMhD;IAED;;;;;OAKG;IACG,kBAAkB,CACtB,OAAO,EAAE,UAAU,CAAC,yBAAyB,EAC7C,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,0BAA0B,CAAC,CAMhD;CACF"}
@@ -7,6 +7,7 @@ import { infrastructureSearchDns } from "../funcs/infrastructure-search-dns.js";
7
7
  import { infrastructureSearchIpInfo } from "../funcs/infrastructure-search-ip-info.js";
8
8
  import { infrastructureSearchShodan } from "../funcs/infrastructure-search-shodan.js";
9
9
  import { infrastructureSearchWhois } from "../funcs/infrastructure-search-whois.js";
10
+ import { infrastructureVirusTotalContent } from "../funcs/infrastructure-virus-total-content.js";
10
11
  import { ClientSDK } from "../lib/sdks.js";
11
12
  import { unwrapAsync } from "../types/fp.js";
12
13
  export class Infrastructure extends ClientSDK {
@@ -37,6 +38,15 @@ export class Infrastructure extends ClientSDK {
37
38
  async searchShodan(request, options) {
38
39
  return unwrapAsync(infrastructureSearchShodan(this, request, options));
39
40
  }
41
+ /**
42
+ * VirusTotal Content Search
43
+ *
44
+ * @remarks
45
+ * Search VirusTotal for files whose content matches a given string.
46
+ */
47
+ async virusTotalContent(request, options) {
48
+ return unwrapAsync(infrastructureVirusTotalContent(this, request, options));
49
+ }
40
50
  /**
41
51
  * Whois
42
52
  *
@@ -1 +1 @@
1
- {"version":3,"file":"infrastructure.js","sourceRoot":"","sources":["../../src/sdk/infrastructure.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AAChF,OAAO,EAAE,gCAAgC,EAAE,MAAM,gDAAgD,CAAC;AAClG,OAAO,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AAChF,OAAO,EAAE,0BAA0B,EAAE,MAAM,2CAA2C,CAAC;AACvF,OAAO,EAAE,0BAA0B,EAAE,MAAM,0CAA0C,CAAC;AACtF,OAAO,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AAEpF,OAAO,EAAE,SAAS,EAAkB,MAAM,gBAAgB,CAAC;AAE3D,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,MAAM,OAAO,cAAe,SAAQ,SAAS;IAC3C;;;;;OAKG;IACH,KAAK,CAAC,YAAY,CAChB,OAAuC,EACvC,OAAwB,EACkB;QAC1C,OAAO,WAAW,CAAC,0BAA0B,CAC3C,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IAAA,CACJ;IAED;;;;;OAKG;IACH,KAAK,CAAC,SAAS,CACb,OAAoC,EACpC,OAAwB,EACe;QACvC,OAAO,WAAW,CAAC,uBAAuB,CACxC,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IAAA,CACJ;IAED;;;;;OAKG;IACH,KAAK,CAAC,YAAY,CAChB,OAAuC,EACvC,OAAwB,EACkB;QAC1C,OAAO,WAAW,CAAC,0BAA0B,CAC3C,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IAAA,CACJ;IAED;;;;;OAKG;IACH,KAAK,CAAC,WAAW,CACf,OAAsC,EACtC,OAAwB,EACiB;QACzC,OAAO,WAAW,CAAC,yBAAyB,CAC1C,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IAAA,CACJ;IAED;;;;;OAKG;IACH,KAAK,CAAC,SAAS,CACb,OAAoC,EACpC,OAAwB,EACwB;QAChD,OAAO,WAAW,CAAC,uBAAuB,CACxC,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IAAA,CACJ;IAED;;;;;OAKG;IACH,KAAK,CAAC,kBAAkB,CACtB,OAA6C,EAC7C,OAAwB,EACwB;QAChD,OAAO,WAAW,CAAC,gCAAgC,CACjD,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IAAA,CACJ;CACF"}
1
+ {"version":3,"file":"infrastructure.js","sourceRoot":"","sources":["../../src/sdk/infrastructure.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AAChF,OAAO,EAAE,gCAAgC,EAAE,MAAM,gDAAgD,CAAC;AAClG,OAAO,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AAChF,OAAO,EAAE,0BAA0B,EAAE,MAAM,2CAA2C,CAAC;AACvF,OAAO,EAAE,0BAA0B,EAAE,MAAM,0CAA0C,CAAC;AACtF,OAAO,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AACpF,OAAO,EAAE,+BAA+B,EAAE,MAAM,gDAAgD,CAAC;AAEjG,OAAO,EAAE,SAAS,EAAkB,MAAM,gBAAgB,CAAC;AAE3D,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,MAAM,OAAO,cAAe,SAAQ,SAAS;IAC3C;;;;;OAKG;IACH,KAAK,CAAC,YAAY,CAChB,OAAuC,EACvC,OAAwB,EACkB;QAC1C,OAAO,WAAW,CAAC,0BAA0B,CAC3C,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IAAA,CACJ;IAED;;;;;OAKG;IACH,KAAK,CAAC,SAAS,CACb,OAAoC,EACpC,OAAwB,EACe;QACvC,OAAO,WAAW,CAAC,uBAAuB,CACxC,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IAAA,CACJ;IAED;;;;;OAKG;IACH,KAAK,CAAC,YAAY,CAChB,OAAuC,EACvC,OAAwB,EACkB;QAC1C,OAAO,WAAW,CAAC,0BAA0B,CAC3C,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IAAA,CACJ;IAED;;;;;OAKG;IACH,KAAK,CAAC,iBAAiB,CACrB,OAA4C,EAC5C,OAAwB,EACuB;QAC/C,OAAO,WAAW,CAAC,+BAA+B,CAChD,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IAAA,CACJ;IAED;;;;;OAKG;IACH,KAAK,CAAC,WAAW,CACf,OAAsC,EACtC,OAAwB,EACiB;QACzC,OAAO,WAAW,CAAC,yBAAyB,CAC1C,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IAAA,CACJ;IAED;;;;;OAKG;IACH,KAAK,CAAC,SAAS,CACb,OAAoC,EACpC,OAAwB,EACwB;QAChD,OAAO,WAAW,CAAC,uBAAuB,CACxC,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IAAA,CACJ;IAED;;;;;OAKG;IACH,KAAK,CAAC,kBAAkB,CACtB,OAA6C,EAC7C,OAAwB,EACwB;QAChD,OAAO,WAAW,CAAC,gCAAgC,CACjD,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IAAA,CACJ;CACF"}
@@ -48,6 +48,13 @@ export declare class Intelligence extends ClientSDK {
48
48
  * Evaluate potential threats with SEON’s counter fraud intelligence systems.
49
49
  */
50
50
  searchSeon(request: operations.SearchSeonRequest, options?: RequestOptions): Promise<operations.SearchSeonResponse>;
51
+ /**
52
+ * VirusTotal File Intelligence
53
+ *
54
+ * @remarks
55
+ * Look up VirusTotal reputation and antivirus detection data for a URL, domain, IP address, or file (including content).
56
+ */
57
+ virusTotalIntelligence(request: operations.VirusTotalIntelligenceRequest, options?: RequestOptions): Promise<operations.VirusTotalIntelligenceResponse>;
51
58
  /**
52
59
  * Web Databases
53
60
  *
@@ -1 +1 @@
1
- {"version":3,"file":"intelligence.d.ts","sourceRoot":"","sources":["../../src/sdk/intelligence.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,UAAU,MAAM,+BAA+B,CAAC;AAG5D,qBAAa,YAAa,SAAQ,SAAS;IACzC;;OAEG;IACG,aAAa,CACjB,OAAO,EAAE,UAAU,CAAC,oBAAoB,EACxC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAM3C;IAED;;;;;OAKG;IACG,WAAW,CACf,OAAO,EAAE,UAAU,CAAC,kBAAkB,EACtC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAMzC;IAED;;;;;OAKG;IACG,cAAc,CAClB,OAAO,EAAE,UAAU,CAAC,qBAAqB,EACzC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAMnD;IAED;;;;;OAKG;IACG,WAAW,CACf,OAAO,EAAE,UAAU,CAAC,kBAAkB,EACtC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAMzC;IAED;;;;;OAKG;IACG,YAAY,CAChB,OAAO,EAAE,UAAU,CAAC,mBAAmB,EACvC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAM1C;IAED;;;;;OAKG;IACG,WAAW,CACf,OAAO,EAAE,UAAU,CAAC,kBAAkB,EACtC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAMzC;IAED;;;;;OAKG;IACG,UAAU,CACd,OAAO,EAAE,UAAU,CAAC,iBAAiB,EACrC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAMxC;IAED;;;;;OAKG;IACG,kBAAkB,CACtB,OAAO,EAAE,UAAU,CAAC,yBAAyB,EAC7C,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,0BAA0B,CAAC,CAMhD;IAED;;;;;OAKG;IACG,UAAU,CACd,OAAO,EAAE,UAAU,CAAC,iBAAiB,EACrC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAMpD;IAED;;;;;OAKG;IACG,gBAAgB,CACpB,OAAO,EAAE,UAAU,CAAC,uBAAuB,EAC3C,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,wBAAwB,CAAC,CAM9C;CACF"}
1
+ {"version":3,"file":"intelligence.d.ts","sourceRoot":"","sources":["../../src/sdk/intelligence.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,UAAU,MAAM,+BAA+B,CAAC;AAG5D,qBAAa,YAAa,SAAQ,SAAS;IACzC;;OAEG;IACG,aAAa,CACjB,OAAO,EAAE,UAAU,CAAC,oBAAoB,EACxC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAM3C;IAED;;;;;OAKG;IACG,WAAW,CACf,OAAO,EAAE,UAAU,CAAC,kBAAkB,EACtC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAMzC;IAED;;;;;OAKG;IACG,cAAc,CAClB,OAAO,EAAE,UAAU,CAAC,qBAAqB,EACzC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAMnD;IAED;;;;;OAKG;IACG,WAAW,CACf,OAAO,EAAE,UAAU,CAAC,kBAAkB,EACtC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAMzC;IAED;;;;;OAKG;IACG,YAAY,CAChB,OAAO,EAAE,UAAU,CAAC,mBAAmB,EACvC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAM1C;IAED;;;;;OAKG;IACG,WAAW,CACf,OAAO,EAAE,UAAU,CAAC,kBAAkB,EACtC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAMzC;IAED;;;;;OAKG;IACG,UAAU,CACd,OAAO,EAAE,UAAU,CAAC,iBAAiB,EACrC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAMxC;IAED;;;;;OAKG;IACG,sBAAsB,CAC1B,OAAO,EAAE,UAAU,CAAC,6BAA6B,EACjD,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,8BAA8B,CAAC,CAMpD;IAED;;;;;OAKG;IACG,kBAAkB,CACtB,OAAO,EAAE,UAAU,CAAC,yBAAyB,EAC7C,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,0BAA0B,CAAC,CAMhD;IAED;;;;;OAKG;IACG,UAAU,CACd,OAAO,EAAE,UAAU,CAAC,iBAAiB,EACrC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAMpD;IAED;;;;;OAKG;IACG,gBAAgB,CACpB,OAAO,EAAE,UAAU,CAAC,uBAAuB,EAC3C,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,wBAAwB,CAAC,CAM9C;CACF"}
@@ -11,6 +11,7 @@ import { intelligenceSearchPerson } from "../funcs/intelligence-search-person.js
11
11
  import { intelligenceSearchPhone } from "../funcs/intelligence-search-phone.js";
12
12
  import { intelligenceSearchSeon } from "../funcs/intelligence-search-seon.js";
13
13
  import { intelligenceSearchWebDatabases } from "../funcs/intelligence-search-web-databases.js";
14
+ import { intelligenceVirusTotalIntelligence } from "../funcs/intelligence-virus-total-intelligence.js";
14
15
  import { ClientSDK } from "../lib/sdks.js";
15
16
  import { unwrapAsync } from "../types/fp.js";
16
17
  export class Intelligence extends ClientSDK {
@@ -74,6 +75,15 @@ export class Intelligence extends ClientSDK {
74
75
  async searchSeon(request, options) {
75
76
  return unwrapAsync(intelligenceSearchSeon(this, request, options));
76
77
  }
78
+ /**
79
+ * VirusTotal File Intelligence
80
+ *
81
+ * @remarks
82
+ * Look up VirusTotal reputation and antivirus detection data for a URL, domain, IP address, or file (including content).
83
+ */
84
+ async virusTotalIntelligence(request, options) {
85
+ return unwrapAsync(intelligenceVirusTotalIntelligence(this, request, options));
86
+ }
77
87
  /**
78
88
  * Web Databases
79
89
  *
@@ -1 +1 @@
1
- {"version":3,"file":"intelligence.js","sourceRoot":"","sources":["../../src/sdk/intelligence.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"intelligence.js","sourceRoot":"","sources":["../../src/sdk/intelligence.ts"],"names":[],"mappings":"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"}
@@ -22,5 +22,12 @@ export declare class Tools extends ClientSDK {
22
22
  * Download a file from IntelX storage. Use storageId + bucket for a standalone file (5 credits), or systemId with bucket "leaks.logs" for a stealer log (10 credits).
23
23
  */
24
24
  downloadIntelxFile(request: operations.DownloadIntelxFileRequest, options?: RequestOptions): Promise<operations.DownloadIntelxFileResponse>;
25
+ /**
26
+ * Download VirusTotal file
27
+ *
28
+ * @remarks
29
+ * Download a file from VirusTotal by its id. The file is returned base64-encoded.
30
+ */
31
+ downloadVirusTotalFile(request: operations.DownloadVirusTotalFileRequest, options?: RequestOptions): Promise<operations.DownloadVirusTotalFileResponse>;
25
32
  }
26
33
  //# sourceMappingURL=tools.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/sdk/tools.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,UAAU,MAAM,+BAA+B,CAAC;AAG5D,qBAAa,KAAM,SAAQ,SAAS;IAClC;;;;;OAKG;IACG,gBAAgB,CACpB,OAAO,EAAE,UAAU,CAAC,uBAAuB,EAC3C,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,wBAAwB,CAAC,CAM9C;IAED;;;;;OAKG;IACG,mBAAmB,CACvB,OAAO,EAAE,UAAU,CAAC,0BAA0B,EAC9C,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,2BAA2B,CAAC,CAMjD;IAED;;;;;OAKG;IACG,kBAAkB,CACtB,OAAO,EAAE,UAAU,CAAC,yBAAyB,EAC7C,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,0BAA0B,CAAC,CAMhD;CACF"}
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/sdk/tools.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,UAAU,MAAM,+BAA+B,CAAC;AAG5D,qBAAa,KAAM,SAAQ,SAAS;IAClC;;;;;OAKG;IACG,gBAAgB,CACpB,OAAO,EAAE,UAAU,CAAC,uBAAuB,EAC3C,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,wBAAwB,CAAC,CAM9C;IAED;;;;;OAKG;IACG,mBAAmB,CACvB,OAAO,EAAE,UAAU,CAAC,0BAA0B,EAC9C,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,2BAA2B,CAAC,CAMjD;IAED;;;;;OAKG;IACG,kBAAkB,CACtB,OAAO,EAAE,UAAU,CAAC,yBAAyB,EAC7C,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,0BAA0B,CAAC,CAMhD;IAED;;;;;OAKG;IACG,sBAAsB,CAC1B,OAAO,EAAE,UAAU,CAAC,6BAA6B,EACjD,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,8BAA8B,CAAC,CAMpD;CACF"}
package/esm/sdk/tools.js CHANGED
@@ -3,6 +3,7 @@
3
3
  */
4
4
  import { toolsBypassDoubleCounter } from "../funcs/tools-bypass-double-counter.js";
5
5
  import { toolsDownloadIntelxFile } from "../funcs/tools-download-intelx-file.js";
6
+ import { toolsDownloadVirusTotalFile } from "../funcs/tools-download-virus-total-file.js";
6
7
  import { toolsLookupDiscordAlt } from "../funcs/tools-lookup-discord-alt.js";
7
8
  import { ClientSDK } from "../lib/sdks.js";
8
9
  import { unwrapAsync } from "../types/fp.js";
@@ -34,5 +35,14 @@ export class Tools extends ClientSDK {
34
35
  async downloadIntelxFile(request, options) {
35
36
  return unwrapAsync(toolsDownloadIntelxFile(this, request, options));
36
37
  }
38
+ /**
39
+ * Download VirusTotal file
40
+ *
41
+ * @remarks
42
+ * Download a file from VirusTotal by its id. The file is returned base64-encoded.
43
+ */
44
+ async downloadVirusTotalFile(request, options) {
45
+ return unwrapAsync(toolsDownloadVirusTotalFile(this, request, options));
46
+ }
37
47
  }
38
48
  //# sourceMappingURL=tools.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/sdk/tools.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,wBAAwB,EAAE,MAAM,yCAAyC,CAAC;AACnF,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AACjF,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,SAAS,EAAkB,MAAM,gBAAgB,CAAC;AAE3D,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,MAAM,OAAO,KAAM,SAAQ,SAAS;IAClC;;;;;OAKG;IACH,KAAK,CAAC,gBAAgB,CACpB,OAA2C,EAC3C,OAAwB,EACsB;QAC9C,OAAO,WAAW,CAAC,qBAAqB,CACtC,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IAAA,CACJ;IAED;;;;;OAKG;IACH,KAAK,CAAC,mBAAmB,CACvB,OAA8C,EAC9C,OAAwB,EACyB;QACjD,OAAO,WAAW,CAAC,wBAAwB,CACzC,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IAAA,CACJ;IAED;;;;;OAKG;IACH,KAAK,CAAC,kBAAkB,CACtB,OAA6C,EAC7C,OAAwB,EACwB;QAChD,OAAO,WAAW,CAAC,uBAAuB,CACxC,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IAAA,CACJ;CACF"}
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/sdk/tools.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,wBAAwB,EAAE,MAAM,yCAAyC,CAAC;AACnF,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AACjF,OAAO,EAAE,2BAA2B,EAAE,MAAM,6CAA6C,CAAC;AAC1F,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,SAAS,EAAkB,MAAM,gBAAgB,CAAC;AAE3D,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,MAAM,OAAO,KAAM,SAAQ,SAAS;IAClC;;;;;OAKG;IACH,KAAK,CAAC,gBAAgB,CACpB,OAA2C,EAC3C,OAAwB,EACsB;QAC9C,OAAO,WAAW,CAAC,qBAAqB,CACtC,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IAAA,CACJ;IAED;;;;;OAKG;IACH,KAAK,CAAC,mBAAmB,CACvB,OAA8C,EAC9C,OAAwB,EACyB;QACjD,OAAO,WAAW,CAAC,wBAAwB,CACzC,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IAAA,CACJ;IAED;;;;;OAKG;IACH,KAAK,CAAC,kBAAkB,CACtB,OAA6C,EAC7C,OAAwB,EACwB;QAChD,OAAO,WAAW,CAAC,uBAAuB,CACxC,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IAAA,CACJ;IAED;;;;;OAKG;IACH,KAAK,CAAC,sBAAsB,CAC1B,OAAiD,EACjD,OAAwB,EAC4B;QACpD,OAAO,WAAW,CAAC,2BAA2B,CAC5C,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IAAA,CACJ;CACF"}
package/jsr.json CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  {
4
4
  "name": "@indiciaosint/sdk",
5
- "version": "1.2.1",
5
+ "version": "1.2.3",
6
6
  "exports": {
7
7
  ".": "./src/index.ts",
8
8
  "./models/errors": "./src/models/errors/index.ts",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@indiciaosint/sdk",
3
- "version": "1.2.1",
3
+ "version": "1.2.3",
4
4
  "author": "Indicia <support@indicia.app> (https://indicia.app)",
5
5
  "type": "module",
6
6
  "main": "./esm/index.js",
@@ -0,0 +1,174 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod/v4-mini";
6
+ import { IndiciaCore } from "../core.js";
7
+ import { encodeJSON } from "../lib/encodings.js";
8
+ import { matchStatusCode } from "../lib/http.js";
9
+ import * as M from "../lib/matchers.js";
10
+ import { compactMap } from "../lib/primitives.js";
11
+ import { safeParse } from "../lib/schemas.js";
12
+ import { RequestOptions } from "../lib/sdks.js";
13
+ import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js";
14
+ import { pathToFunc } from "../lib/url.js";
15
+ import {
16
+ ConnectionError,
17
+ InvalidRequestError,
18
+ RequestAbortedError,
19
+ RequestTimeoutError,
20
+ UnexpectedClientError,
21
+ } from "../models/errors/http-client-errors.js";
22
+ import * as errors from "../models/errors/index.js";
23
+ import { IndiciaError } from "../models/errors/indicia-error.js";
24
+ import { ResponseValidationError } from "../models/errors/response-validation-error.js";
25
+ import { SDKValidationError } from "../models/errors/sdk-validation-error.js";
26
+ import * as operations from "../models/operations/index.js";
27
+ import { APICall, APIPromise } from "../types/async.js";
28
+ import { Result } from "../types/fp.js";
29
+
30
+ /**
31
+ * VirusTotal Content Search
32
+ *
33
+ * @remarks
34
+ * Search VirusTotal for files whose content matches a given string.
35
+ */
36
+ export function infrastructureVirusTotalContent(
37
+ client: IndiciaCore,
38
+ request: operations.VirusTotalContentRequest,
39
+ options?: RequestOptions,
40
+ ): APIPromise<
41
+ Result<
42
+ operations.VirusTotalContentResponse,
43
+ | errors.FailedResponseError
44
+ | IndiciaError
45
+ | ResponseValidationError
46
+ | ConnectionError
47
+ | RequestAbortedError
48
+ | RequestTimeoutError
49
+ | InvalidRequestError
50
+ | UnexpectedClientError
51
+ | SDKValidationError
52
+ >
53
+ > {
54
+ return new APIPromise($do(
55
+ client,
56
+ request,
57
+ options,
58
+ ));
59
+ }
60
+
61
+ async function $do(
62
+ client: IndiciaCore,
63
+ request: operations.VirusTotalContentRequest,
64
+ options?: RequestOptions,
65
+ ): Promise<
66
+ [
67
+ Result<
68
+ operations.VirusTotalContentResponse,
69
+ | errors.FailedResponseError
70
+ | IndiciaError
71
+ | ResponseValidationError
72
+ | ConnectionError
73
+ | RequestAbortedError
74
+ | RequestTimeoutError
75
+ | InvalidRequestError
76
+ | UnexpectedClientError
77
+ | SDKValidationError
78
+ >,
79
+ APICall,
80
+ ]
81
+ > {
82
+ const parsed = safeParse(
83
+ request,
84
+ (value) =>
85
+ z.parse(operations.VirusTotalContentRequest$outboundSchema, value),
86
+ "Input validation failed",
87
+ );
88
+ if (!parsed.ok) {
89
+ return [parsed, { status: "invalid" }];
90
+ }
91
+ const payload = parsed.value;
92
+ const body = encodeJSON("body", payload, { explode: true });
93
+
94
+ const path = pathToFunc("/v1/search/infrastructure/virustotal")();
95
+
96
+ const headers = new Headers(compactMap({
97
+ "Content-Type": "application/json",
98
+ Accept: "application/json",
99
+ }));
100
+
101
+ const secConfig = await extractSecurity(client._options.apiKey);
102
+ const securityInput = secConfig == null ? {} : { apiKey: secConfig };
103
+ const requestSecurity = resolveGlobalSecurity(securityInput);
104
+
105
+ const context = {
106
+ options: client._options,
107
+ baseURL: options?.serverURL ?? client._baseURL ?? "",
108
+ operationID: "virusTotalContent",
109
+ oAuth2Scopes: null,
110
+
111
+ resolvedSecurity: requestSecurity,
112
+
113
+ securitySource: client._options.apiKey,
114
+ retryConfig: options?.retries
115
+ || client._options.retryConfig
116
+ || { strategy: "none" },
117
+ retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"],
118
+ };
119
+
120
+ const requestRes = client._createRequest(context, {
121
+ security: requestSecurity,
122
+ method: "POST",
123
+ baseURL: options?.serverURL,
124
+ path: path,
125
+ headers: headers,
126
+ body: body,
127
+ userAgent: client._options.userAgent,
128
+ timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1,
129
+ }, options);
130
+ if (!requestRes.ok) {
131
+ return [requestRes, { status: "invalid" }];
132
+ }
133
+ const req = requestRes.value;
134
+
135
+ const doResult = await client._do(req, {
136
+ context,
137
+ isErrorStatusCode: (statusCode: number) =>
138
+ matchStatusCode({ status: statusCode } as Response, ["4XX", "5XX"]),
139
+ retryConfig: context.retryConfig,
140
+ retryCodes: context.retryCodes,
141
+ });
142
+ if (!doResult.ok) {
143
+ return [doResult, { status: "request-error", request: req }];
144
+ }
145
+ const response = doResult.value;
146
+
147
+ const responseFields = {
148
+ HttpMeta: { Response: response, Request: req },
149
+ };
150
+
151
+ const [result] = await M.match<
152
+ operations.VirusTotalContentResponse,
153
+ | errors.FailedResponseError
154
+ | IndiciaError
155
+ | ResponseValidationError
156
+ | ConnectionError
157
+ | RequestAbortedError
158
+ | RequestTimeoutError
159
+ | InvalidRequestError
160
+ | UnexpectedClientError
161
+ | SDKValidationError
162
+ >(
163
+ M.json(200, operations.VirusTotalContentResponse$inboundSchema),
164
+ M.jsonErr(402, errors.FailedResponseError$inboundSchema),
165
+ M.jsonErr(500, errors.FailedResponseError$inboundSchema),
166
+ M.fail("4XX"),
167
+ M.fail("5XX"),
168
+ )(response, req, { extraFields: responseFields });
169
+ if (!result.ok) {
170
+ return [result, { status: "complete", request: req, response }];
171
+ }
172
+
173
+ return [result, { status: "complete", request: req, response }];
174
+ }
@@ -0,0 +1,174 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod/v4-mini";
6
+ import { IndiciaCore } from "../core.js";
7
+ import { encodeJSON } from "../lib/encodings.js";
8
+ import { matchStatusCode } from "../lib/http.js";
9
+ import * as M from "../lib/matchers.js";
10
+ import { compactMap } from "../lib/primitives.js";
11
+ import { safeParse } from "../lib/schemas.js";
12
+ import { RequestOptions } from "../lib/sdks.js";
13
+ import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js";
14
+ import { pathToFunc } from "../lib/url.js";
15
+ import {
16
+ ConnectionError,
17
+ InvalidRequestError,
18
+ RequestAbortedError,
19
+ RequestTimeoutError,
20
+ UnexpectedClientError,
21
+ } from "../models/errors/http-client-errors.js";
22
+ import * as errors from "../models/errors/index.js";
23
+ import { IndiciaError } from "../models/errors/indicia-error.js";
24
+ import { ResponseValidationError } from "../models/errors/response-validation-error.js";
25
+ import { SDKValidationError } from "../models/errors/sdk-validation-error.js";
26
+ import * as operations from "../models/operations/index.js";
27
+ import { APICall, APIPromise } from "../types/async.js";
28
+ import { Result } from "../types/fp.js";
29
+
30
+ /**
31
+ * VirusTotal File Intelligence
32
+ *
33
+ * @remarks
34
+ * Look up VirusTotal reputation and antivirus detection data for a URL, domain, IP address, or file (including content).
35
+ */
36
+ export function intelligenceVirusTotalIntelligence(
37
+ client: IndiciaCore,
38
+ request: operations.VirusTotalIntelligenceRequest,
39
+ options?: RequestOptions,
40
+ ): APIPromise<
41
+ Result<
42
+ operations.VirusTotalIntelligenceResponse,
43
+ | errors.FailedResponseError
44
+ | IndiciaError
45
+ | ResponseValidationError
46
+ | ConnectionError
47
+ | RequestAbortedError
48
+ | RequestTimeoutError
49
+ | InvalidRequestError
50
+ | UnexpectedClientError
51
+ | SDKValidationError
52
+ >
53
+ > {
54
+ return new APIPromise($do(
55
+ client,
56
+ request,
57
+ options,
58
+ ));
59
+ }
60
+
61
+ async function $do(
62
+ client: IndiciaCore,
63
+ request: operations.VirusTotalIntelligenceRequest,
64
+ options?: RequestOptions,
65
+ ): Promise<
66
+ [
67
+ Result<
68
+ operations.VirusTotalIntelligenceResponse,
69
+ | errors.FailedResponseError
70
+ | IndiciaError
71
+ | ResponseValidationError
72
+ | ConnectionError
73
+ | RequestAbortedError
74
+ | RequestTimeoutError
75
+ | InvalidRequestError
76
+ | UnexpectedClientError
77
+ | SDKValidationError
78
+ >,
79
+ APICall,
80
+ ]
81
+ > {
82
+ const parsed = safeParse(
83
+ request,
84
+ (value) =>
85
+ z.parse(operations.VirusTotalIntelligenceRequest$outboundSchema, value),
86
+ "Input validation failed",
87
+ );
88
+ if (!parsed.ok) {
89
+ return [parsed, { status: "invalid" }];
90
+ }
91
+ const payload = parsed.value;
92
+ const body = encodeJSON("body", payload, { explode: true });
93
+
94
+ const path = pathToFunc("/v1/search/intelligence/virustotal")();
95
+
96
+ const headers = new Headers(compactMap({
97
+ "Content-Type": "application/json",
98
+ Accept: "application/json",
99
+ }));
100
+
101
+ const secConfig = await extractSecurity(client._options.apiKey);
102
+ const securityInput = secConfig == null ? {} : { apiKey: secConfig };
103
+ const requestSecurity = resolveGlobalSecurity(securityInput);
104
+
105
+ const context = {
106
+ options: client._options,
107
+ baseURL: options?.serverURL ?? client._baseURL ?? "",
108
+ operationID: "virusTotalIntelligence",
109
+ oAuth2Scopes: null,
110
+
111
+ resolvedSecurity: requestSecurity,
112
+
113
+ securitySource: client._options.apiKey,
114
+ retryConfig: options?.retries
115
+ || client._options.retryConfig
116
+ || { strategy: "none" },
117
+ retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"],
118
+ };
119
+
120
+ const requestRes = client._createRequest(context, {
121
+ security: requestSecurity,
122
+ method: "POST",
123
+ baseURL: options?.serverURL,
124
+ path: path,
125
+ headers: headers,
126
+ body: body,
127
+ userAgent: client._options.userAgent,
128
+ timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1,
129
+ }, options);
130
+ if (!requestRes.ok) {
131
+ return [requestRes, { status: "invalid" }];
132
+ }
133
+ const req = requestRes.value;
134
+
135
+ const doResult = await client._do(req, {
136
+ context,
137
+ isErrorStatusCode: (statusCode: number) =>
138
+ matchStatusCode({ status: statusCode } as Response, ["4XX", "5XX"]),
139
+ retryConfig: context.retryConfig,
140
+ retryCodes: context.retryCodes,
141
+ });
142
+ if (!doResult.ok) {
143
+ return [doResult, { status: "request-error", request: req }];
144
+ }
145
+ const response = doResult.value;
146
+
147
+ const responseFields = {
148
+ HttpMeta: { Response: response, Request: req },
149
+ };
150
+
151
+ const [result] = await M.match<
152
+ operations.VirusTotalIntelligenceResponse,
153
+ | errors.FailedResponseError
154
+ | IndiciaError
155
+ | ResponseValidationError
156
+ | ConnectionError
157
+ | RequestAbortedError
158
+ | RequestTimeoutError
159
+ | InvalidRequestError
160
+ | UnexpectedClientError
161
+ | SDKValidationError
162
+ >(
163
+ M.json(200, operations.VirusTotalIntelligenceResponse$inboundSchema),
164
+ M.jsonErr(402, errors.FailedResponseError$inboundSchema),
165
+ M.jsonErr(500, errors.FailedResponseError$inboundSchema),
166
+ M.fail("4XX"),
167
+ M.fail("5XX"),
168
+ )(response, req, { extraFields: responseFields });
169
+ if (!result.ok) {
170
+ return [result, { status: "complete", request: req, response }];
171
+ }
172
+
173
+ return [result, { status: "complete", request: req, response }];
174
+ }