@apifreaks/openapi-specs 0.1.0 → 0.1.2

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 (108) hide show
  1. package/dist/index.cjs +133 -2
  2. package/dist/index.d.cts +140 -3
  3. package/dist/index.d.ts +140 -3
  4. package/dist/index.js +131 -2
  5. package/dist/specs/commodity/commodity-fluctuation.yaml +225 -0
  6. package/dist/specs/commodity/commodity-prices.yaml +236 -0
  7. package/dist/specs/commodity/commodity-symbols.yaml +159 -0
  8. package/dist/specs/commodity/commodity-time-series.yaml +238 -0
  9. package/dist/specs/commodity/historical-commodity-prices.yaml +208 -0
  10. package/dist/specs/currency/currency-converter.yaml +193 -0
  11. package/dist/specs/currency/currency-fluctuation.yaml +211 -0
  12. package/dist/specs/currency/currency-historical-data-limit.yaml +112 -0
  13. package/dist/specs/currency/currency-rate.yaml +173 -0
  14. package/dist/specs/currency/currency-supported.yaml +176 -0
  15. package/dist/specs/currency/currency-symbols.yaml +115 -0
  16. package/dist/specs/currency/currency-time-series.yaml +232 -0
  17. package/dist/specs/currency/geolocalized-currency-conversion.yaml +214 -0
  18. package/dist/specs/currency/historical-currency-converter.yaml +195 -0
  19. package/dist/specs/currency/historical-currency-rate.yaml +180 -0
  20. package/dist/specs/dns/bulk-dns-lookup.yaml +484 -0
  21. package/dist/specs/dns/dns-history-lookup.yaml +451 -0
  22. package/dist/specs/dns/dns-lookup.yaml +360 -0
  23. package/dist/specs/dns/reverse-dns-lookup.yaml +338 -0
  24. package/dist/specs/domain/bulk-domain-checker.yaml +198 -0
  25. package/dist/specs/domain/domain-search-with-suggestions.yaml +196 -0
  26. package/dist/specs/domain/domain-search.yaml +149 -0
  27. package/dist/specs/domain/subdomain-lookup.yaml +251 -0
  28. package/dist/specs/email-validation/bulk-email-validation.yaml +403 -0
  29. package/dist/specs/email-validation/email-checker.yaml +451 -0
  30. package/dist/specs/financial/bulk-vat-rates-country.yaml +250 -0
  31. package/dist/specs/financial/financial-apis-supported-countries.yaml +152 -0
  32. package/dist/specs/financial/iban-validation.yaml +270 -0
  33. package/dist/specs/financial/swift-code-finder.yaml +146 -0
  34. package/dist/specs/financial/swift-code-lookup.yaml +156 -0
  35. package/dist/specs/financial/vat-number-validation.yaml +205 -0
  36. package/dist/specs/financial/vat-rates-by-ip.yaml +200 -0
  37. package/dist/specs/financial/vat-rates-country.yaml +212 -0
  38. package/dist/specs/general/usage-credits.yaml +188 -0
  39. package/dist/specs/geocoding/forward-geocoding.yaml +292 -0
  40. package/dist/specs/geocoding/reverse-geocoding.yaml +237 -0
  41. package/dist/specs/geodb/administrative-units-details.yaml +180 -0
  42. package/dist/specs/geodb/administrative-units-levels.yaml +140 -0
  43. package/dist/specs/geodb/administrative-units.yaml +168 -0
  44. package/dist/specs/geodb/cities.yaml +209 -0
  45. package/dist/specs/geodb/countries-details.yaml +207 -0
  46. package/dist/specs/geodb/countries.yaml +199 -0
  47. package/dist/specs/geodb/flags-supported.yaml +119 -0
  48. package/dist/specs/geodb/flags.yaml +170 -0
  49. package/dist/specs/geodb/regions.yaml +76 -0
  50. package/dist/specs/geodb/subregions.yaml +158 -0
  51. package/dist/specs/ip-intelligence/bulk-ip-lookup.yaml +895 -0
  52. package/dist/specs/ip-intelligence/bulk-ip-threat-intelligence.yaml +310 -0
  53. package/dist/specs/ip-intelligence/ip-locator.yaml +708 -0
  54. package/dist/specs/ip-intelligence/ip-threat-intelligence.yaml +230 -0
  55. package/dist/specs/other/astronomy-data.yaml +632 -0
  56. package/dist/specs/pdf/delete-pdf-page.yaml +193 -0
  57. package/dist/specs/pdf/linearize-pdf.yaml +187 -0
  58. package/dist/specs/pdf/merge-pdf.yaml +193 -0
  59. package/dist/specs/pdf/pdf-compress.yaml +208 -0
  60. package/dist/specs/pdf/pdf-decrypt.yaml +202 -0
  61. package/dist/specs/pdf/pdf-encrypt.yaml +213 -0
  62. package/dist/specs/pdf/pdf-extract-pages.yaml +199 -0
  63. package/dist/specs/pdf/pdf-file-status.yaml +148 -0
  64. package/dist/specs/pdf/pdf-file.yaml +136 -0
  65. package/dist/specs/pdf/pdf-files.yaml +85 -0
  66. package/dist/specs/pdf/pdf-resource-download.yaml +117 -0
  67. package/dist/specs/pdf/pdf-resource-upload-binary.yaml +152 -0
  68. package/dist/specs/pdf/pdf-resource-upload.yaml +163 -0
  69. package/dist/specs/pdf/pdf-restrict.yaml +246 -0
  70. package/dist/specs/pdf/pdf-split-pages.yaml +208 -0
  71. package/dist/specs/pdf/pdf-task-status.yaml +187 -0
  72. package/dist/specs/pdf/pdf-to-image.yaml +844 -0
  73. package/dist/specs/pdf/pdf-unrestrict.yaml +221 -0
  74. package/dist/specs/pdf/rotate-pdf-pages.yaml +207 -0
  75. package/dist/specs/phone-validation/bulk-phone-number-validation.yaml +374 -0
  76. package/dist/specs/phone-validation/phone-number-validation.yaml +344 -0
  77. package/dist/specs/scraper/web-scraper.yaml +479 -0
  78. package/dist/specs/screenshot/bulk-screenshot.yaml +728 -0
  79. package/dist/specs/screenshot/website-screenshot.yaml +822 -0
  80. package/dist/specs/ssl/ssl-certificate-chain-lookup.yaml +593 -0
  81. package/dist/specs/ssl/ssl-certificate-lookup.yaml +478 -0
  82. package/dist/specs/timezone/timezone-converter.yaml +249 -0
  83. package/dist/specs/timezone/timezone-lookup.yaml +712 -0
  84. package/dist/specs/user-agent/bulk-user-agent-parser.yaml +340 -0
  85. package/dist/specs/user-agent/user-agent-parser.yaml +271 -0
  86. package/dist/specs/weather/air-quality.yaml +590 -0
  87. package/dist/specs/weather/bulk-live-weather.yaml +654 -0
  88. package/dist/specs/weather/flood-forecast.yaml +519 -0
  89. package/dist/specs/weather/historical-weather.yaml +842 -0
  90. package/dist/specs/weather/live-weather.yaml +633 -0
  91. package/dist/specs/weather/marine-weather.yaml +806 -0
  92. package/dist/specs/weather/time-series-weather.yaml +821 -0
  93. package/dist/specs/weather/weather-forecast.yaml +935 -0
  94. package/dist/specs/whois/asn-lookup.yaml +618 -0
  95. package/dist/specs/whois/bulk-whois-lookup.yaml +827 -0
  96. package/dist/specs/whois/domain-whois-history-lookup.yaml +445 -0
  97. package/dist/specs/whois/reverse-whois.yaml +566 -0
  98. package/dist/specs/whois/whois-domain-lookup.yaml +537 -0
  99. package/dist/specs/whois/whois-ip-lookup.yaml +1123 -0
  100. package/dist/specs/zip-code/bulk-zip-code-lookup.yaml +232 -0
  101. package/dist/specs/zip-code/zip-code-api.yaml +216 -0
  102. package/dist/specs/zip-code/zip-code-distance-match.yaml +239 -0
  103. package/dist/specs/zip-code/zip-code-distance.yaml +233 -0
  104. package/dist/specs/zip-code/zip-codes-by-city.yaml +201 -0
  105. package/dist/specs/zip-code/zip-codes-by-region.yaml +200 -0
  106. package/dist/specs/zip-code/zip-codes-radius-search.yaml +262 -0
  107. package/package.json +6 -2
  108. package/specs/pdf/merge-pdf.json +2 -2
@@ -0,0 +1,230 @@
1
+ openapi: 3.1.1
2
+ info:
3
+ title: IP Threat Intelligence API - VPN, Proxy & Tor Detection with Threat Scoring
4
+ version: 1.0.0
5
+ description: Retrieve real-time threat intelligence and security signals for a single IPv4 or IPv6 address. Returns an aggregate `threat_score` (0-100) plus detection flags and provider names for VPNs, proxies (including residential proxies), Tor exit nodes, relays, known attackers, bots, spam sources, and cloud-provider ranges. Use `fields`/`excludes` with dot notation (e.g. `security.threat_score`) to trim the response to only the modules you need. If `ip` is omitted, the API returns threat data for the public IP of the requesting client. Bogon and reserved IP addresses return a `423` error, and malformed IP input returns a `400` error, instead of partial data.
6
+ contact:
7
+ name: APIFreaks Support
8
+ url: https://apifreaks.com/contact
9
+ email: support@apifreaks.com
10
+ servers:
11
+ - url: https://api.apifreaks.com/v1.0
12
+ description: IP Threat Intelligence API Server
13
+ paths:
14
+ /ip/security:
15
+ get:
16
+ tags:
17
+ - IP Geolocation APIs
18
+ summary: Retrieve real-time threat intelligence and security signals for an IPv4 or IPv6 address
19
+ description: Get a threat score along with VPN, proxy, Tor, relay, bot, spam, known-attacker, and cloud-provider detection flags for an IP address.
20
+ operationId: ipSecurityLookup
21
+ parameters:
22
+ - name: format
23
+ in: query
24
+ required: false
25
+ description: Format of the response.
26
+ schema:
27
+ type: string
28
+ enum:
29
+ - json
30
+ - xml
31
+ default: json
32
+ - name: ip
33
+ in: query
34
+ required: false
35
+ description: IPv4 or IPv6 address to check for threat intelligence and security signals. If omitted, the public IP of the requesting client is used.
36
+ schema:
37
+ type: string
38
+ - name: fields
39
+ in: query
40
+ required: false
41
+ description: Comma-separated list of fields to return. Supports dot notation (e.g. `security.threat_score`).
42
+ schema:
43
+ type: string
44
+ - name: excludes
45
+ in: query
46
+ required: false
47
+ description: Comma-separated list of fields to remove from the response. Supports dot notation (e.g. `security.is_tor`). The `ip` field is always included and cannot be excluded.
48
+ schema:
49
+ type: string
50
+ responses:
51
+ '200':
52
+ description: Successful threat intelligence response
53
+ content:
54
+ application/json:
55
+ schema:
56
+ $ref: '#/components/schemas/IpSecurityResponse'
57
+ examples:
58
+ typicalSuccess:
59
+ summary: Typical successful response
60
+ value:
61
+ ip: 8.8.8.8
62
+ security:
63
+ threat_score: 5
64
+ is_tor: false
65
+ is_proxy: false
66
+ proxy_provider_names: []
67
+ proxy_confidence_score: 0
68
+ proxy_last_seen: ''
69
+ is_residential_proxy: false
70
+ is_vpn: false
71
+ vpn_provider_names: []
72
+ vpn_confidence_score: 0
73
+ vpn_last_seen: ''
74
+ is_relay: false
75
+ relay_provider_name: ''
76
+ is_anonymous: false
77
+ is_known_attacker: false
78
+ is_bot: false
79
+ is_spam: false
80
+ is_cloud_provider: true
81
+ cloud_provider_name: Google LLC
82
+ '400':
83
+ description: Bad Request — Invalid or missing IP address
84
+ content:
85
+ application/json:
86
+ schema:
87
+ $ref: '#/components/schemas/ErrorResponse'
88
+ examples:
89
+ invalidIp:
90
+ summary: Malformed IP address
91
+ value:
92
+ message: Provided IP address 'invalid' is not valid
93
+ '423':
94
+ description: Locked — Bogon or reserved IP address
95
+ content:
96
+ application/json:
97
+ schema:
98
+ $ref: '#/components/schemas/ErrorResponse'
99
+ examples:
100
+ locked:
101
+ summary: Bogon or reserved IP address
102
+ value:
103
+ message: '''10.0.0.1'' is a bogon IP address.'
104
+ components:
105
+ securitySchemes:
106
+ ApiKeyAuthHeader:
107
+ type: apiKey
108
+ in: header
109
+ name: X-apiKey
110
+ description: Pass your API key via the X-apiKey request header.
111
+ ApiKeyAuthQuery:
112
+ type: apiKey
113
+ in: query
114
+ name: apiKey
115
+ description: Pass your API key via the apiKey query parameter.
116
+ schemas:
117
+ ErrorResponse:
118
+ type: object
119
+ required:
120
+ - message
121
+ properties:
122
+ error:
123
+ type: string
124
+ description: Short error category or exception type.
125
+ message:
126
+ type: string
127
+ description: Human-readable error message describing the failure.
128
+ path:
129
+ type: string
130
+ description: API endpoint path that produced the error.
131
+ status:
132
+ type: integer
133
+ description: HTTP status code returned with the error.
134
+ timestamp:
135
+ type: string
136
+ format: date-time
137
+ description: Timestamp when the error occurred (ISO 8601).
138
+ IpSecurityResponse:
139
+ type: object
140
+ description: Threat intelligence result for an IP address.
141
+ required:
142
+ - ip
143
+ properties:
144
+ ip:
145
+ type: string
146
+ description: The IP address used for the lookup (IPv4 or IPv6).
147
+ security:
148
+ $ref: '#/components/schemas/Security'
149
+ Security:
150
+ type: object
151
+ description: Threat intelligence and security information for the IP.
152
+ required:
153
+ - threat_score
154
+ - is_tor
155
+ - is_proxy
156
+ - proxy_confidence_score
157
+ - is_residential_proxy
158
+ - is_vpn
159
+ - vpn_confidence_score
160
+ - is_relay
161
+ - is_anonymous
162
+ - is_known_attacker
163
+ - is_bot
164
+ - is_spam
165
+ - is_cloud_provider
166
+ properties:
167
+ threat_score:
168
+ type: number
169
+ description: Aggregate risk score from 0 to 100.
170
+ is_tor:
171
+ type: boolean
172
+ description: true if the IP matches a Tor exit node.
173
+ is_proxy:
174
+ type: boolean
175
+ description: true if the IP is associated with a proxy service.
176
+ proxy_provider_names:
177
+ type: array
178
+ items:
179
+ type: string
180
+ description: Detected proxy provider names.
181
+ proxy_confidence_score:
182
+ type: number
183
+ description: Proxy detection confidence from 0 to 100.
184
+ proxy_last_seen:
185
+ type: string
186
+ description: Last observed proxy activity date in YYYY-MM-DD.
187
+ is_residential_proxy:
188
+ type: boolean
189
+ description: true if the IP is linked to a residential proxy network.
190
+ is_vpn:
191
+ type: boolean
192
+ description: true if the IP is associated with a VPN service.
193
+ vpn_provider_names:
194
+ type: array
195
+ items:
196
+ type: string
197
+ description: Detected VPN provider names.
198
+ vpn_confidence_score:
199
+ type: number
200
+ description: VPN detection confidence from 0 to 100.
201
+ vpn_last_seen:
202
+ type: string
203
+ description: Last observed VPN activity date in YYYY-MM-DD.
204
+ is_relay:
205
+ type: boolean
206
+ description: true if the IP is associated with a relay network.
207
+ relay_provider_name:
208
+ type: string
209
+ description: Relay provider name.
210
+ is_anonymous:
211
+ type: boolean
212
+ description: true if any anonymity signal is present.
213
+ is_known_attacker:
214
+ type: boolean
215
+ description: true if the IP is flagged for known attacker behavior.
216
+ is_bot:
217
+ type: boolean
218
+ description: true if the IP is associated with bot activity.
219
+ is_spam:
220
+ type: boolean
221
+ description: true if the IP is associated with spam activity.
222
+ is_cloud_provider:
223
+ type: boolean
224
+ description: true if the IP belongs to a cloud provider range.
225
+ cloud_provider_name:
226
+ type: string
227
+ description: Cloud provider name.
228
+ security:
229
+ - ApiKeyAuthHeader: []
230
+ - ApiKeyAuthQuery: []