webscout 8.3.2__py3-none-any.whl → 8.3.3__py3-none-any.whl

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.

Potentially problematic release.


This version of webscout might be problematic. Click here for more details.

Files changed (94) hide show
  1. webscout/AIutel.py +146 -37
  2. webscout/Bing_search.py +1 -2
  3. webscout/Provider/AISEARCH/__init__.py +1 -0
  4. webscout/Provider/AISEARCH/stellar_search.py +132 -0
  5. webscout/Provider/ExaChat.py +84 -58
  6. webscout/Provider/HeckAI.py +85 -80
  7. webscout/Provider/Jadve.py +56 -50
  8. webscout/Provider/MiniMax.py +207 -0
  9. webscout/Provider/Nemotron.py +41 -13
  10. webscout/Provider/Netwrck.py +34 -51
  11. webscout/Provider/OPENAI/BLACKBOXAI.py +0 -1
  12. webscout/Provider/OPENAI/MiniMax.py +298 -0
  13. webscout/Provider/OPENAI/README.md +30 -29
  14. webscout/Provider/OPENAI/TogetherAI.py +4 -17
  15. webscout/Provider/OPENAI/__init__.py +3 -1
  16. webscout/Provider/OPENAI/autoproxy.py +752 -17
  17. webscout/Provider/OPENAI/base.py +7 -76
  18. webscout/Provider/OPENAI/deepinfra.py +42 -108
  19. webscout/Provider/OPENAI/flowith.py +179 -166
  20. webscout/Provider/OPENAI/friendli.py +233 -0
  21. webscout/Provider/OPENAI/monochat.py +329 -0
  22. webscout/Provider/OPENAI/pydantic_imports.py +1 -172
  23. webscout/Provider/OPENAI/toolbaz.py +1 -0
  24. webscout/Provider/OPENAI/typegpt.py +1 -1
  25. webscout/Provider/OPENAI/utils.py +19 -42
  26. webscout/Provider/OPENAI/x0gpt.py +14 -2
  27. webscout/Provider/OpenGPT.py +54 -32
  28. webscout/Provider/PI.py +58 -84
  29. webscout/Provider/StandardInput.py +32 -13
  30. webscout/Provider/TTI/README.md +9 -9
  31. webscout/Provider/TTI/__init__.py +2 -1
  32. webscout/Provider/TTI/aiarta.py +92 -78
  33. webscout/Provider/TTI/infip.py +212 -0
  34. webscout/Provider/TTI/monochat.py +220 -0
  35. webscout/Provider/TeachAnything.py +11 -3
  36. webscout/Provider/TextPollinationsAI.py +78 -70
  37. webscout/Provider/TogetherAI.py +32 -48
  38. webscout/Provider/Venice.py +37 -46
  39. webscout/Provider/VercelAI.py +27 -24
  40. webscout/Provider/WiseCat.py +35 -35
  41. webscout/Provider/WrDoChat.py +22 -26
  42. webscout/Provider/WritingMate.py +26 -22
  43. webscout/Provider/__init__.py +2 -2
  44. webscout/Provider/granite.py +48 -57
  45. webscout/Provider/koala.py +51 -39
  46. webscout/Provider/learnfastai.py +49 -64
  47. webscout/Provider/llmchat.py +79 -93
  48. webscout/Provider/llmchatco.py +63 -78
  49. webscout/Provider/multichat.py +51 -40
  50. webscout/Provider/oivscode.py +1 -1
  51. webscout/Provider/scira_chat.py +159 -96
  52. webscout/Provider/scnet.py +13 -13
  53. webscout/Provider/searchchat.py +13 -13
  54. webscout/Provider/sonus.py +12 -11
  55. webscout/Provider/toolbaz.py +25 -8
  56. webscout/Provider/turboseek.py +41 -42
  57. webscout/Provider/typefully.py +27 -12
  58. webscout/Provider/typegpt.py +41 -46
  59. webscout/Provider/uncovr.py +55 -90
  60. webscout/Provider/x0gpt.py +33 -17
  61. webscout/Provider/yep.py +79 -96
  62. webscout/auth/__init__.py +12 -1
  63. webscout/auth/providers.py +27 -5
  64. webscout/auth/routes.py +128 -104
  65. webscout/auth/server.py +367 -312
  66. webscout/client.py +121 -116
  67. webscout/litagent/Readme.md +68 -55
  68. webscout/litagent/agent.py +99 -9
  69. webscout/version.py +1 -1
  70. {webscout-8.3.2.dist-info → webscout-8.3.3.dist-info}/METADATA +102 -90
  71. {webscout-8.3.2.dist-info → webscout-8.3.3.dist-info}/RECORD +75 -87
  72. webscout/Provider/TTI/fastflux.py +0 -233
  73. webscout/Provider/Writecream.py +0 -246
  74. webscout/auth/static/favicon.svg +0 -11
  75. webscout/auth/swagger_ui.py +0 -203
  76. webscout/auth/templates/components/authentication.html +0 -237
  77. webscout/auth/templates/components/base.html +0 -103
  78. webscout/auth/templates/components/endpoints.html +0 -750
  79. webscout/auth/templates/components/examples.html +0 -491
  80. webscout/auth/templates/components/footer.html +0 -75
  81. webscout/auth/templates/components/header.html +0 -27
  82. webscout/auth/templates/components/models.html +0 -286
  83. webscout/auth/templates/components/navigation.html +0 -70
  84. webscout/auth/templates/static/api.js +0 -455
  85. webscout/auth/templates/static/icons.js +0 -168
  86. webscout/auth/templates/static/main.js +0 -784
  87. webscout/auth/templates/static/particles.js +0 -201
  88. webscout/auth/templates/static/styles.css +0 -3353
  89. webscout/auth/templates/static/ui.js +0 -374
  90. webscout/auth/templates/swagger_ui.html +0 -170
  91. {webscout-8.3.2.dist-info → webscout-8.3.3.dist-info}/WHEEL +0 -0
  92. {webscout-8.3.2.dist-info → webscout-8.3.3.dist-info}/entry_points.txt +0 -0
  93. {webscout-8.3.2.dist-info → webscout-8.3.3.dist-info}/licenses/LICENSE.md +0 -0
  94. {webscout-8.3.2.dist-info → webscout-8.3.3.dist-info}/top_level.txt +0 -0
@@ -1,237 +0,0 @@
1
- <div id="authentication-panel" class="tab-content" role="tabpanel" aria-labelledby="authentication-tab">
2
- <div class="endpoint-section">
3
- <h2 class="section-title">Authentication Guide</h2>
4
- <p class="section-description">
5
- Learn how to authenticate with the WebScout API using API keys. All API requests require proper authentication.
6
- </p>
7
-
8
- <div class="auth-info-card premium-card">
9
- <div class="auth-info-header">
10
- <h3 class="auth-title">
11
- <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" class="auth-icon">
12
- <rect x="3" y="11" width="18" height="11" rx="2" ry="2"/>
13
- <path d="M7 11V7a5 5 0 0 1 10 0v4"/>
14
- </svg>
15
- API Key Authentication
16
- </h3>
17
- </div>
18
- <div class="auth-info-content">
19
- <p>
20
- WebScout employs industry-standard API key authentication with Bearer token authorization. Secure your requests with encrypted API keys and enjoy enterprise-grade protection.
21
- </p>
22
-
23
- <div class="code-block">
24
- <div class="code-header">
25
- <span class="code-title">Header Format</span>
26
- <button class="copy-btn" onclick="copyToClipboard('Authorization: Bearer YOUR_API_KEY')">
27
- 📋 Copy
28
- </button>
29
- </div>
30
- <pre><code>Authorization: Bearer YOUR_API_KEY</code></pre>
31
- </div>
32
-
33
- <div class="steps-container">
34
- <h4>📝 Getting Started</h4>
35
- <ol class="steps-list">
36
- <li>Generate an API key using the form below</li>
37
- <li>Include the API key in the Authorization header of your requests</li>
38
- <li>Make requests to the protected endpoints</li>
39
- <li>Monitor your usage and rate limits</li>
40
- </ol>
41
- </div>
42
- </div>
43
- </div>
44
-
45
- <div class="endpoint-card">
46
- <div class="endpoint-header" onclick="toggleEndpoint(this)">
47
- <div class="endpoint-method">
48
- <span class="method-badge method-post">POST</span>
49
- <span class="endpoint-path">/v1/auth/generate-key</span>
50
- <span class="endpoint-summary">Generate API Key</span>
51
- </div>
52
- <span class="expand-icon">▼</span>
53
- </div>
54
-
55
- <div class="endpoint-body">
56
- <div class="endpoint-description">
57
- Generate a new API key for accessing the WebScout API. Each key has configurable rate limits and permissions.
58
- </div>
59
-
60
- <div class="parameter-section">
61
- <h4>Request Parameters</h4>
62
- <div class="parameter-list">
63
- <div class="parameter-item">
64
- <div class="parameter-header">
65
- <span class="parameter-name">username</span>
66
- <span class="parameter-type">string</span>
67
- <span class="parameter-required">required</span>
68
- </div>
69
- <div class="parameter-description">
70
- Unique username for the API key holder.
71
- </div>
72
- </div>
73
-
74
- <div class="parameter-item">
75
- <div class="parameter-header">
76
- <span class="parameter-name">name</span>
77
- <span class="parameter-type">string</span>
78
- <span class="parameter-required">required</span>
79
- </div>
80
- <div class="parameter-description">
81
- Display name or description for the API key.
82
- </div>
83
- </div>
84
-
85
- <div class="parameter-item">
86
- <div class="parameter-header">
87
- <span class="parameter-name">rate_limit</span>
88
- <span class="parameter-type">integer</span>
89
- <span class="parameter-optional">optional</span>
90
- </div>
91
- <div class="parameter-description">
92
- Requests per minute limit. Default: 60
93
- </div>
94
- </div>
95
- </div>
96
- </div>
97
-
98
- <div class="try-it-section">
99
- <h4 class="try-it-title">
100
- <span>🔑</span>
101
- Generate API Key
102
- </h4>
103
-
104
- <div class="form-group">
105
- <label class="form-label" for="auth-username">Username</label>
106
- <input type="text" id="auth-username" class="form-input" placeholder="your-username" required>
107
- </div>
108
-
109
- <div class="form-group">
110
- <label class="form-label" for="auth-name">Display Name</label>
111
- <input type="text" id="auth-name" class="form-input" placeholder="My API Key" required>
112
- </div>
113
-
114
- <div class="form-group">
115
- <label class="form-label" for="auth-rate-limit">Rate Limit (requests/minute)</label>
116
- <input type="number" id="auth-rate-limit" class="form-input" value="60" min="1" max="1000">
117
- </div>
118
-
119
- <button class="btn btn-primary" onclick="testGenerateKey()">
120
- <span>🔑</span>
121
- Generate Key
122
- </button>
123
-
124
- <div id="auth-response" class="response-display"></div>
125
- </div>
126
- </div>
127
- </div>
128
-
129
- <div class="endpoint-card">
130
- <div class="endpoint-header" onclick="toggleEndpoint(this)">
131
- <div class="endpoint-method">
132
- <span class="method-badge method-post">POST</span>
133
- <span class="endpoint-path">/v1/auth/validate-key</span>
134
- <span class="endpoint-summary">Validate API Key</span>
135
- </div>
136
- <span class="expand-icon">▼</span>
137
- </div>
138
-
139
- <div class="endpoint-body">
140
- <div class="endpoint-description">
141
- Validate an existing API key and retrieve information about its permissions and usage.
142
- </div>
143
-
144
- <div class="try-it-section">
145
- <h4 class="try-it-title">
146
- <span>✅</span>
147
- Validate Key
148
- </h4>
149
-
150
- <div class="form-group">
151
- <label class="form-label" for="validate-key">API Key</label>
152
- <input type="password" id="validate-key" class="form-input" placeholder="Enter your API key">
153
- </div>
154
-
155
- <button class="btn btn-secondary" onclick="testValidateKey()">
156
- <span>✅</span>
157
- Validate Key
158
- </button>
159
-
160
- <div id="validate-response" class="response-display"></div>
161
- </div>
162
- </div>
163
- </div>
164
-
165
- <div class="security-tips">
166
- <h3>🛡️ Security Best Practices</h3>
167
- <div class="tips-grid">
168
- <div class="tip-card">
169
- <div class="tip-icon">🔒</div>
170
- <h4>Keep Keys Secret</h4>
171
- <p>Never expose your API keys in client-side code or public repositories.</p>
172
- </div>
173
-
174
- <div class="tip-card">
175
- <div class="tip-icon">🔄</div>
176
- <h4>Rotate Regularly</h4>
177
- <p>Regularly rotate your API keys to maintain security.</p>
178
- </div>
179
-
180
- <div class="tip-card">
181
- <div class="tip-icon">📊</div>
182
- <h4>Monitor Usage</h4>
183
- <p>Keep track of your API usage and set appropriate rate limits.</p>
184
- </div>
185
-
186
- <div class="tip-card">
187
- <div class="tip-icon">🌐</div>
188
- <h4>Use HTTPS</h4>
189
- <p>Always use HTTPS when making API requests to protect your keys in transit.</p>
190
- </div>
191
- </div>
192
- </div>
193
-
194
- <div class="rate-limit-info">
195
- <h3>⚡ Rate Limiting</h3>
196
- <div class="rate-limit-content">
197
- <p>
198
- API requests are subject to rate limiting to ensure fair usage and system stability.
199
- Rate limits are enforced per API key and are measured in requests per minute.
200
- </p>
201
-
202
- <div class="rate-limit-table">
203
- <div class="table-header">
204
- <div class="table-cell">Tier</div>
205
- <div class="table-cell">Rate Limit</div>
206
- <div class="table-cell">Description</div>
207
- </div>
208
- <div class="table-row">
209
- <div class="table-cell">Free</div>
210
- <div class="table-cell">60/min</div>
211
- <div class="table-cell">Default rate limit for new keys</div>
212
- </div>
213
- <div class="table-row">
214
- <div class="table-cell">Premium</div>
215
- <div class="table-cell">300/min</div>
216
- <div class="table-cell">Higher limits for premium users</div>
217
- </div>
218
- <div class="table-row">
219
- <div class="table-cell">Enterprise</div>
220
- <div class="table-cell">1000/min</div>
221
- <div class="table-cell">Custom limits for enterprise</div>
222
- </div>
223
- </div>
224
-
225
- <div class="rate-limit-headers">
226
- <h4>Rate Limit Headers</h4>
227
- <p>Each API response includes headers with rate limit information:</p>
228
- <ul>
229
- <li><code>X-RateLimit-Limit</code> - Your rate limit ceiling for that given request</li>
230
- <li><code>X-RateLimit-Remaining</code> - Number of requests left for the time window</li>
231
- <li><code>X-RateLimit-Reset</code> - UTC epoch seconds when the rate limit resets</li>
232
- </ul>
233
- </div>
234
- </div>
235
- </div>
236
- </div>
237
- </div>
@@ -1,103 +0,0 @@
1
- <!DOCTYPE html>
2
- <html lang="en">
3
- <head>
4
- <meta charset="UTF-8">
5
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <title>{{ title }} - Swagger UI</title>
7
- <link rel="icon" type="image/x-icon" href="/static/favicon.ico">
8
-
9
- <!-- Google Fonts -->
10
- <link rel="preconnect" href="https://fonts.googleapis.com">
11
- <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
12
- <link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
13
-
14
- <!-- Highlight.js for syntax highlighting -->
15
- <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/styles/github-dark.min.css">
16
- <script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/highlight.min.js"></script>
17
-
18
- <!-- Custom Styles -->
19
- <link rel="stylesheet" href="/static/styles.css">
20
-
21
- <!-- Favicon and App Icons -->
22
- <link rel="apple-touch-icon" sizes="180x180" href="/static/apple-touch-icon.png">
23
- <link rel="icon" type="image/png" sizes="32x32" href="/static/favicon-32x32.png">
24
- <link rel="icon" type="image/png" sizes="16x16" href="/static/favicon-16x16.png">
25
- <link rel="manifest" href="/static/site.webmanifest">
26
- <meta name="theme-color" content="#6366f1">
27
-
28
- <!-- SEO Meta Tags -->
29
- <meta name="description" content="{{ description }} - Modern OpenAI API compatible interface with comprehensive documentation">
30
- <meta name="keywords" content="API, OpenAI, Swagger, Documentation, REST, WebScout">
31
- <meta name="author" content="WebScout">
32
-
33
- <!-- Open Graph Meta Tags -->
34
- <meta property="og:title" content="{{ title }} - Swagger UI">
35
- <meta property="og:description" content="{{ description }}">
36
- <meta property="og:type" content="website">
37
- <meta property="og:url" content="{{ base_url }}">
38
-
39
- <!-- Twitter Card Meta Tags -->
40
- <meta name="twitter:card" content="summary_large_image">
41
- <meta name="twitter:title" content="{{ title }} - Swagger UI">
42
- <meta name="twitter:description" content="{{ description }}">
43
- </head>
44
- <body>
45
- <!-- Loading Screen -->
46
- <div id="loading-screen" class="loading-screen">
47
- <div class="loading-content">
48
- <div class="loading-spinner"></div>
49
- <h2>Loading WebScout API Documentation</h2>
50
- <p>Preparing your API experience...</p>
51
- </div>
52
- </div>
53
-
54
- <!-- Main Application -->
55
- <div id="app" class="app">
56
- {% include 'components/header.html' %}
57
-
58
- <main class="main-content">
59
- <div class="container">
60
- {% include 'components/navigation.html' %}
61
-
62
- <div class="tab-container">
63
- {% include 'components/endpoints.html' %}
64
- {% include 'components/authentication.html' %}
65
- {% include 'components/models.html' %}
66
- {% include 'components/examples.html' %}
67
- </div>
68
- </div>
69
- </main>
70
-
71
- {% include 'components/footer.html' %}
72
- </div>
73
-
74
- <!-- Toast Notifications -->
75
- <div id="toast-container" class="toast-container"></div>
76
-
77
- <!-- Modal Container -->
78
- <div id="modal-container" class="modal-container"></div>
79
-
80
- <!-- Scripts -->
81
- <script src="/static/ui.js"></script>
82
- <script src="/static/api.js"></script>
83
- <script src="/static/main.js"></script>
84
-
85
- <!-- Initialize Application -->
86
- <script>
87
- // Global configuration
88
- window.WEBSCOUT_CONFIG = {
89
- title: '{{ title }}',
90
- description: '{{ description }}',
91
- version: '{{ version }}',
92
- baseUrl: '{{ base_url }}',
93
- modelCount: {{ model_count|tojson }},
94
- providerCount: {{ provider_count|tojson }}
95
- };
96
-
97
- // Initialize app when DOM is loaded
98
- document.addEventListener('DOMContentLoaded', function() {
99
- WebScoutApp.init();
100
- });
101
- </script>
102
- </body>
103
- </html>