wordlift-client 1.127.0__py3-none-any.whl → 1.129.0__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.
- wordlift_client/__init__.py +3 -3
- wordlift_client/api/__init__.py +1 -1
- wordlift_client/api/query_fan_out_api.py +326 -0
- wordlift_client/api_client.py +1 -1
- wordlift_client/configuration.py +1 -1
- wordlift_client/models/__init__.py +1 -1
- wordlift_client/models/ai_visibility_analysis_result.py +3 -3
- wordlift_client/models/query_coverage_output.py +92 -0
- {wordlift_client-1.127.0.dist-info → wordlift_client-1.129.0.dist-info}/METADATA +1 -1
- {wordlift_client-1.127.0.dist-info → wordlift_client-1.129.0.dist-info}/RECORD +13 -11
- {wordlift_client-1.127.0.dist-info → wordlift_client-1.129.0.dist-info}/LICENSE +0 -0
- {wordlift_client-1.127.0.dist-info → wordlift_client-1.129.0.dist-info}/WHEEL +0 -0
- {wordlift_client-1.127.0.dist-info → wordlift_client-1.129.0.dist-info}/top_level.txt +0 -0
wordlift_client/__init__.py
CHANGED
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
""" # noqa: E501
|
|
16
16
|
|
|
17
17
|
|
|
18
|
-
__version__ = "1.
|
|
18
|
+
__version__ = "1.129.0"
|
|
19
19
|
|
|
20
20
|
# import apis into sdk package
|
|
21
21
|
from wordlift_client.api.account_api import AccountApi
|
|
@@ -73,6 +73,7 @@ from wordlift_client.api.platform_consumptions_api import PlatformConsumptionsAp
|
|
|
73
73
|
from wordlift_client.api.platform_limits_api import PlatformLimitsApi
|
|
74
74
|
from wordlift_client.api.plugin_diagnostics_api import PluginDiagnosticsApi
|
|
75
75
|
from wordlift_client.api.plugin_events_api import PluginEventsApi
|
|
76
|
+
from wordlift_client.api.query_fan_out_api import QueryFanOutApi
|
|
76
77
|
from wordlift_client.api.questions_and_answers_api import QuestionsAndAnswersApi
|
|
77
78
|
from wordlift_client.api.redeem_codes_api import RedeemCodesApi
|
|
78
79
|
from wordlift_client.api.rules_api import RulesApi
|
|
@@ -87,7 +88,6 @@ from wordlift_client.api.web_asyncs_metadata_api import WebAsyncsMetadataApi
|
|
|
87
88
|
from wordlift_client.api.web_asyncs_responses_api import WebAsyncsResponsesApi
|
|
88
89
|
from wordlift_client.api.web_pages_imports_api import WebPagesImportsApi
|
|
89
90
|
from wordlift_client.api.web_pages_api import WebPagesApi
|
|
90
|
-
from wordlift_client.api.ai_visibility_api import AiVisibilityApi
|
|
91
91
|
|
|
92
92
|
# import ApiClient
|
|
93
93
|
from wordlift_client.api_response import ApiResponse
|
|
@@ -234,7 +234,7 @@ from wordlift_client.models.problem_detail import ProblemDetail
|
|
|
234
234
|
from wordlift_client.models.project_type import ProjectType
|
|
235
235
|
from wordlift_client.models.properties import Properties
|
|
236
236
|
from wordlift_client.models.properties1 import Properties1
|
|
237
|
-
from wordlift_client.models.
|
|
237
|
+
from wordlift_client.models.query_coverage_output import QueryCoverageOutput
|
|
238
238
|
from wordlift_client.models.question_and_answer import QuestionAndAnswer
|
|
239
239
|
from wordlift_client.models.question_and_answer_request import QuestionAndAnswerRequest
|
|
240
240
|
from wordlift_client.models.quick_win import QuickWin
|
wordlift_client/api/__init__.py
CHANGED
|
@@ -56,6 +56,7 @@ from wordlift_client.api.platform_consumptions_api import PlatformConsumptionsAp
|
|
|
56
56
|
from wordlift_client.api.platform_limits_api import PlatformLimitsApi
|
|
57
57
|
from wordlift_client.api.plugin_diagnostics_api import PluginDiagnosticsApi
|
|
58
58
|
from wordlift_client.api.plugin_events_api import PluginEventsApi
|
|
59
|
+
from wordlift_client.api.query_fan_out_api import QueryFanOutApi
|
|
59
60
|
from wordlift_client.api.questions_and_answers_api import QuestionsAndAnswersApi
|
|
60
61
|
from wordlift_client.api.redeem_codes_api import RedeemCodesApi
|
|
61
62
|
from wordlift_client.api.rules_api import RulesApi
|
|
@@ -70,5 +71,4 @@ from wordlift_client.api.web_asyncs_metadata_api import WebAsyncsMetadataApi
|
|
|
70
71
|
from wordlift_client.api.web_asyncs_responses_api import WebAsyncsResponsesApi
|
|
71
72
|
from wordlift_client.api.web_pages_imports_api import WebPagesImportsApi
|
|
72
73
|
from wordlift_client.api.web_pages_api import WebPagesApi
|
|
73
|
-
from wordlift_client.api.ai_visibility_api import AiVisibilityApi
|
|
74
74
|
|
|
@@ -0,0 +1,326 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
WordLift API
|
|
5
|
+
|
|
6
|
+
WordLift API
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 1.0
|
|
9
|
+
Contact: hello@wordlift.io
|
|
10
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
|
+
|
|
12
|
+
Do not edit the class manually.
|
|
13
|
+
""" # noqa: E501
|
|
14
|
+
|
|
15
|
+
import warnings
|
|
16
|
+
from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
|
|
17
|
+
from typing import Any, Dict, List, Optional, Tuple, Union
|
|
18
|
+
from typing_extensions import Annotated
|
|
19
|
+
|
|
20
|
+
from pydantic import StrictStr
|
|
21
|
+
from typing import Optional
|
|
22
|
+
from wordlift_client.models.ai_visibility_analysis_result import AIVisibilityAnalysisResult
|
|
23
|
+
from wordlift_client.models.analyze_url_request import AnalyzeURLRequest
|
|
24
|
+
|
|
25
|
+
from wordlift_client.api_client import ApiClient, RequestSerialized
|
|
26
|
+
from wordlift_client.api_response import ApiResponse
|
|
27
|
+
from wordlift_client.rest import RESTResponseType
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
class QueryFanOutApi:
|
|
31
|
+
"""NOTE: This class is auto generated by OpenAPI Generator
|
|
32
|
+
Ref: https://openapi-generator.tech
|
|
33
|
+
|
|
34
|
+
Do not edit the class manually.
|
|
35
|
+
"""
|
|
36
|
+
|
|
37
|
+
def __init__(self, api_client=None) -> None:
|
|
38
|
+
if api_client is None:
|
|
39
|
+
api_client = ApiClient.get_default()
|
|
40
|
+
self.api_client = api_client
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
@validate_call
|
|
44
|
+
async def create_ai_visibility_audit(
|
|
45
|
+
self,
|
|
46
|
+
analyze_url_request: AnalyzeURLRequest,
|
|
47
|
+
authorization: Optional[StrictStr] = None,
|
|
48
|
+
_request_timeout: Union[
|
|
49
|
+
None,
|
|
50
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
51
|
+
Tuple[
|
|
52
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
53
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
54
|
+
]
|
|
55
|
+
] = None,
|
|
56
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
57
|
+
_content_type: Optional[StrictStr] = None,
|
|
58
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
59
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
60
|
+
) -> AIVisibilityAnalysisResult:
|
|
61
|
+
"""Create AI visibility audits for Query Fan-Out
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
:param analyze_url_request: (required)
|
|
65
|
+
:type analyze_url_request: AnalyzeURLRequest
|
|
66
|
+
:param authorization:
|
|
67
|
+
:type authorization: str
|
|
68
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
69
|
+
number provided, it will be total request
|
|
70
|
+
timeout. It can also be a pair (tuple) of
|
|
71
|
+
(connection, read) timeouts.
|
|
72
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
73
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
74
|
+
request; this effectively ignores the
|
|
75
|
+
authentication in the spec for a single request.
|
|
76
|
+
:type _request_auth: dict, optional
|
|
77
|
+
:param _content_type: force content-type for the request.
|
|
78
|
+
:type _content_type: str, Optional
|
|
79
|
+
:param _headers: set to override the headers for a single
|
|
80
|
+
request; this effectively ignores the headers
|
|
81
|
+
in the spec for a single request.
|
|
82
|
+
:type _headers: dict, optional
|
|
83
|
+
:param _host_index: set to override the host_index for a single
|
|
84
|
+
request; this effectively ignores the host_index
|
|
85
|
+
in the spec for a single request.
|
|
86
|
+
:type _host_index: int, optional
|
|
87
|
+
:return: Returns the result object.
|
|
88
|
+
""" # noqa: E501
|
|
89
|
+
|
|
90
|
+
_param = self._create_ai_visibility_audit_serialize(
|
|
91
|
+
analyze_url_request=analyze_url_request,
|
|
92
|
+
authorization=authorization,
|
|
93
|
+
_request_auth=_request_auth,
|
|
94
|
+
_content_type=_content_type,
|
|
95
|
+
_headers=_headers,
|
|
96
|
+
_host_index=_host_index
|
|
97
|
+
)
|
|
98
|
+
|
|
99
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
100
|
+
'200': "AIVisibilityAnalysisResult",
|
|
101
|
+
'422': "HTTPValidationError",
|
|
102
|
+
}
|
|
103
|
+
response_data = await self.api_client.call_api(
|
|
104
|
+
*_param,
|
|
105
|
+
_request_timeout=_request_timeout
|
|
106
|
+
)
|
|
107
|
+
await response_data.read()
|
|
108
|
+
return self.api_client.response_deserialize(
|
|
109
|
+
response_data=response_data,
|
|
110
|
+
response_types_map=_response_types_map,
|
|
111
|
+
).data
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
@validate_call
|
|
115
|
+
async def create_ai_visibility_audit_with_http_info(
|
|
116
|
+
self,
|
|
117
|
+
analyze_url_request: AnalyzeURLRequest,
|
|
118
|
+
authorization: Optional[StrictStr] = None,
|
|
119
|
+
_request_timeout: Union[
|
|
120
|
+
None,
|
|
121
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
122
|
+
Tuple[
|
|
123
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
124
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
125
|
+
]
|
|
126
|
+
] = None,
|
|
127
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
128
|
+
_content_type: Optional[StrictStr] = None,
|
|
129
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
130
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
131
|
+
) -> ApiResponse[AIVisibilityAnalysisResult]:
|
|
132
|
+
"""Create AI visibility audits for Query Fan-Out
|
|
133
|
+
|
|
134
|
+
|
|
135
|
+
:param analyze_url_request: (required)
|
|
136
|
+
:type analyze_url_request: AnalyzeURLRequest
|
|
137
|
+
:param authorization:
|
|
138
|
+
:type authorization: str
|
|
139
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
140
|
+
number provided, it will be total request
|
|
141
|
+
timeout. It can also be a pair (tuple) of
|
|
142
|
+
(connection, read) timeouts.
|
|
143
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
144
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
145
|
+
request; this effectively ignores the
|
|
146
|
+
authentication in the spec for a single request.
|
|
147
|
+
:type _request_auth: dict, optional
|
|
148
|
+
:param _content_type: force content-type for the request.
|
|
149
|
+
:type _content_type: str, Optional
|
|
150
|
+
:param _headers: set to override the headers for a single
|
|
151
|
+
request; this effectively ignores the headers
|
|
152
|
+
in the spec for a single request.
|
|
153
|
+
:type _headers: dict, optional
|
|
154
|
+
:param _host_index: set to override the host_index for a single
|
|
155
|
+
request; this effectively ignores the host_index
|
|
156
|
+
in the spec for a single request.
|
|
157
|
+
:type _host_index: int, optional
|
|
158
|
+
:return: Returns the result object.
|
|
159
|
+
""" # noqa: E501
|
|
160
|
+
|
|
161
|
+
_param = self._create_ai_visibility_audit_serialize(
|
|
162
|
+
analyze_url_request=analyze_url_request,
|
|
163
|
+
authorization=authorization,
|
|
164
|
+
_request_auth=_request_auth,
|
|
165
|
+
_content_type=_content_type,
|
|
166
|
+
_headers=_headers,
|
|
167
|
+
_host_index=_host_index
|
|
168
|
+
)
|
|
169
|
+
|
|
170
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
171
|
+
'200': "AIVisibilityAnalysisResult",
|
|
172
|
+
'422': "HTTPValidationError",
|
|
173
|
+
}
|
|
174
|
+
response_data = await self.api_client.call_api(
|
|
175
|
+
*_param,
|
|
176
|
+
_request_timeout=_request_timeout
|
|
177
|
+
)
|
|
178
|
+
await response_data.read()
|
|
179
|
+
return self.api_client.response_deserialize(
|
|
180
|
+
response_data=response_data,
|
|
181
|
+
response_types_map=_response_types_map,
|
|
182
|
+
)
|
|
183
|
+
|
|
184
|
+
|
|
185
|
+
@validate_call
|
|
186
|
+
async def create_ai_visibility_audit_without_preload_content(
|
|
187
|
+
self,
|
|
188
|
+
analyze_url_request: AnalyzeURLRequest,
|
|
189
|
+
authorization: Optional[StrictStr] = None,
|
|
190
|
+
_request_timeout: Union[
|
|
191
|
+
None,
|
|
192
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
193
|
+
Tuple[
|
|
194
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
195
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
196
|
+
]
|
|
197
|
+
] = None,
|
|
198
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
199
|
+
_content_type: Optional[StrictStr] = None,
|
|
200
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
201
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
202
|
+
) -> RESTResponseType:
|
|
203
|
+
"""Create AI visibility audits for Query Fan-Out
|
|
204
|
+
|
|
205
|
+
|
|
206
|
+
:param analyze_url_request: (required)
|
|
207
|
+
:type analyze_url_request: AnalyzeURLRequest
|
|
208
|
+
:param authorization:
|
|
209
|
+
:type authorization: str
|
|
210
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
211
|
+
number provided, it will be total request
|
|
212
|
+
timeout. It can also be a pair (tuple) of
|
|
213
|
+
(connection, read) timeouts.
|
|
214
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
215
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
216
|
+
request; this effectively ignores the
|
|
217
|
+
authentication in the spec for a single request.
|
|
218
|
+
:type _request_auth: dict, optional
|
|
219
|
+
:param _content_type: force content-type for the request.
|
|
220
|
+
:type _content_type: str, Optional
|
|
221
|
+
:param _headers: set to override the headers for a single
|
|
222
|
+
request; this effectively ignores the headers
|
|
223
|
+
in the spec for a single request.
|
|
224
|
+
:type _headers: dict, optional
|
|
225
|
+
:param _host_index: set to override the host_index for a single
|
|
226
|
+
request; this effectively ignores the host_index
|
|
227
|
+
in the spec for a single request.
|
|
228
|
+
:type _host_index: int, optional
|
|
229
|
+
:return: Returns the result object.
|
|
230
|
+
""" # noqa: E501
|
|
231
|
+
|
|
232
|
+
_param = self._create_ai_visibility_audit_serialize(
|
|
233
|
+
analyze_url_request=analyze_url_request,
|
|
234
|
+
authorization=authorization,
|
|
235
|
+
_request_auth=_request_auth,
|
|
236
|
+
_content_type=_content_type,
|
|
237
|
+
_headers=_headers,
|
|
238
|
+
_host_index=_host_index
|
|
239
|
+
)
|
|
240
|
+
|
|
241
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
242
|
+
'200': "AIVisibilityAnalysisResult",
|
|
243
|
+
'422': "HTTPValidationError",
|
|
244
|
+
}
|
|
245
|
+
response_data = await self.api_client.call_api(
|
|
246
|
+
*_param,
|
|
247
|
+
_request_timeout=_request_timeout
|
|
248
|
+
)
|
|
249
|
+
return response_data.response
|
|
250
|
+
|
|
251
|
+
|
|
252
|
+
def _create_ai_visibility_audit_serialize(
|
|
253
|
+
self,
|
|
254
|
+
analyze_url_request,
|
|
255
|
+
authorization,
|
|
256
|
+
_request_auth,
|
|
257
|
+
_content_type,
|
|
258
|
+
_headers,
|
|
259
|
+
_host_index,
|
|
260
|
+
) -> RequestSerialized:
|
|
261
|
+
|
|
262
|
+
_host = None
|
|
263
|
+
|
|
264
|
+
_collection_formats: Dict[str, str] = {
|
|
265
|
+
}
|
|
266
|
+
|
|
267
|
+
_path_params: Dict[str, str] = {}
|
|
268
|
+
_query_params: List[Tuple[str, str]] = []
|
|
269
|
+
_header_params: Dict[str, Optional[str]] = _headers or {}
|
|
270
|
+
_form_params: List[Tuple[str, str]] = []
|
|
271
|
+
_files: Dict[str, Union[str, bytes]] = {}
|
|
272
|
+
_body_params: Optional[bytes] = None
|
|
273
|
+
|
|
274
|
+
# process the path parameters
|
|
275
|
+
# process the query parameters
|
|
276
|
+
# process the header parameters
|
|
277
|
+
if authorization is not None:
|
|
278
|
+
_header_params['authorization'] = authorization
|
|
279
|
+
# process the form parameters
|
|
280
|
+
# process the body parameter
|
|
281
|
+
if analyze_url_request is not None:
|
|
282
|
+
_body_params = analyze_url_request
|
|
283
|
+
|
|
284
|
+
|
|
285
|
+
# set the HTTP header `Accept`
|
|
286
|
+
_header_params['Accept'] = self.api_client.select_header_accept(
|
|
287
|
+
[
|
|
288
|
+
'application/json'
|
|
289
|
+
]
|
|
290
|
+
)
|
|
291
|
+
|
|
292
|
+
# set the HTTP header `Content-Type`
|
|
293
|
+
if _content_type:
|
|
294
|
+
_header_params['Content-Type'] = _content_type
|
|
295
|
+
else:
|
|
296
|
+
_default_content_type = (
|
|
297
|
+
self.api_client.select_header_content_type(
|
|
298
|
+
[
|
|
299
|
+
'application/json'
|
|
300
|
+
]
|
|
301
|
+
)
|
|
302
|
+
)
|
|
303
|
+
if _default_content_type is not None:
|
|
304
|
+
_header_params['Content-Type'] = _default_content_type
|
|
305
|
+
|
|
306
|
+
# authentication setting
|
|
307
|
+
_auth_settings: List[str] = [
|
|
308
|
+
'ApiKey'
|
|
309
|
+
]
|
|
310
|
+
|
|
311
|
+
return self.api_client.param_serialize(
|
|
312
|
+
method='POST',
|
|
313
|
+
resource_path='/ai-visibility-audits',
|
|
314
|
+
path_params=_path_params,
|
|
315
|
+
query_params=_query_params,
|
|
316
|
+
header_params=_header_params,
|
|
317
|
+
body=_body_params,
|
|
318
|
+
post_params=_form_params,
|
|
319
|
+
files=_files,
|
|
320
|
+
auth_settings=_auth_settings,
|
|
321
|
+
collection_formats=_collection_formats,
|
|
322
|
+
_host=_host,
|
|
323
|
+
_request_auth=_request_auth
|
|
324
|
+
)
|
|
325
|
+
|
|
326
|
+
|
wordlift_client/api_client.py
CHANGED
|
@@ -89,7 +89,7 @@ class ApiClient:
|
|
|
89
89
|
self.default_headers[header_name] = header_value
|
|
90
90
|
self.cookie = cookie
|
|
91
91
|
# Set default User-Agent.
|
|
92
|
-
self.user_agent = 'OpenAPI-Generator/1.
|
|
92
|
+
self.user_agent = 'OpenAPI-Generator/1.129.0/python'
|
|
93
93
|
self.client_side_validation = configuration.client_side_validation
|
|
94
94
|
|
|
95
95
|
async def __aenter__(self):
|
wordlift_client/configuration.py
CHANGED
|
@@ -426,7 +426,7 @@ conf = wordlift_client.Configuration(
|
|
|
426
426
|
"OS: {env}\n"\
|
|
427
427
|
"Python Version: {pyversion}\n"\
|
|
428
428
|
"Version of the API: 1.0\n"\
|
|
429
|
-
"SDK Package Version: 1.
|
|
429
|
+
"SDK Package Version: 1.129.0".\
|
|
430
430
|
format(env=sys.platform, pyversion=sys.version)
|
|
431
431
|
|
|
432
432
|
def get_host_settings(self):
|
|
@@ -148,7 +148,7 @@ from wordlift_client.models.problem_detail import ProblemDetail
|
|
|
148
148
|
from wordlift_client.models.project_type import ProjectType
|
|
149
149
|
from wordlift_client.models.properties import Properties
|
|
150
150
|
from wordlift_client.models.properties1 import Properties1
|
|
151
|
-
from wordlift_client.models.
|
|
151
|
+
from wordlift_client.models.query_coverage_output import QueryCoverageOutput
|
|
152
152
|
from wordlift_client.models.question_and_answer import QuestionAndAnswer
|
|
153
153
|
from wordlift_client.models.question_and_answer_request import QuestionAndAnswerRequest
|
|
154
154
|
from wordlift_client.models.quick_win import QuickWin
|
|
@@ -20,7 +20,7 @@ import json
|
|
|
20
20
|
|
|
21
21
|
from pydantic import BaseModel, ConfigDict, StrictFloat, StrictInt, StrictStr
|
|
22
22
|
from typing import Any, ClassVar, Dict, List, Union
|
|
23
|
-
from wordlift_client.models.
|
|
23
|
+
from wordlift_client.models.query_coverage_output import QueryCoverageOutput
|
|
24
24
|
from typing import Optional, Set
|
|
25
25
|
from typing_extensions import Self
|
|
26
26
|
|
|
@@ -35,7 +35,7 @@ class AIVisibilityAnalysisResult(BaseModel):
|
|
|
35
35
|
query_reasoning: StrictStr
|
|
36
36
|
covered_count: StrictInt
|
|
37
37
|
total_queries: StrictInt
|
|
38
|
-
query_details: List[
|
|
38
|
+
query_details: List[QueryCoverageOutput]
|
|
39
39
|
content_chunks_count: StrictInt
|
|
40
40
|
coverage_score: Union[StrictFloat, StrictInt]
|
|
41
41
|
__properties: ClassVar[List[str]] = ["url", "num_queries_requested", "coverage_threshold", "entity_name", "query_reasoning", "covered_count", "total_queries", "query_details", "content_chunks_count", "coverage_score"]
|
|
@@ -107,7 +107,7 @@ class AIVisibilityAnalysisResult(BaseModel):
|
|
|
107
107
|
"query_reasoning": obj.get("query_reasoning"),
|
|
108
108
|
"covered_count": obj.get("covered_count"),
|
|
109
109
|
"total_queries": obj.get("total_queries"),
|
|
110
|
-
"query_details": [
|
|
110
|
+
"query_details": [QueryCoverageOutput.from_dict(_item) for _item in obj["query_details"]] if obj.get("query_details") is not None else None,
|
|
111
111
|
"content_chunks_count": obj.get("content_chunks_count"),
|
|
112
112
|
"coverage_score": obj.get("coverage_score")
|
|
113
113
|
})
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
WordLift API
|
|
5
|
+
|
|
6
|
+
WordLift API
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 1.0
|
|
9
|
+
Contact: hello@wordlift.io
|
|
10
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
|
+
|
|
12
|
+
Do not edit the class manually.
|
|
13
|
+
""" # noqa: E501
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
from __future__ import annotations
|
|
17
|
+
import pprint
|
|
18
|
+
import re # noqa: F401
|
|
19
|
+
import json
|
|
20
|
+
|
|
21
|
+
from pydantic import BaseModel, ConfigDict, StrictBool, StrictFloat, StrictInt, StrictStr
|
|
22
|
+
from typing import Any, ClassVar, Dict, List, Union
|
|
23
|
+
from typing import Optional, Set
|
|
24
|
+
from typing_extensions import Self
|
|
25
|
+
|
|
26
|
+
class QueryCoverageOutput(BaseModel):
|
|
27
|
+
"""
|
|
28
|
+
QueryCoverageOutput
|
|
29
|
+
""" # noqa: E501
|
|
30
|
+
query: StrictStr
|
|
31
|
+
is_covered: StrictBool
|
|
32
|
+
similarity: Union[StrictFloat, StrictInt]
|
|
33
|
+
__properties: ClassVar[List[str]] = ["query", "is_covered", "similarity"]
|
|
34
|
+
|
|
35
|
+
model_config = ConfigDict(
|
|
36
|
+
populate_by_name=True,
|
|
37
|
+
validate_assignment=True,
|
|
38
|
+
protected_namespaces=(),
|
|
39
|
+
)
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
def to_str(self) -> str:
|
|
43
|
+
"""Returns the string representation of the model using alias"""
|
|
44
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
|
45
|
+
|
|
46
|
+
def to_json(self) -> str:
|
|
47
|
+
"""Returns the JSON representation of the model using alias"""
|
|
48
|
+
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
|
49
|
+
return json.dumps(self.to_dict())
|
|
50
|
+
|
|
51
|
+
@classmethod
|
|
52
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
53
|
+
"""Create an instance of QueryCoverageOutput from a JSON string"""
|
|
54
|
+
return cls.from_dict(json.loads(json_str))
|
|
55
|
+
|
|
56
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
57
|
+
"""Return the dictionary representation of the model using alias.
|
|
58
|
+
|
|
59
|
+
This has the following differences from calling pydantic's
|
|
60
|
+
`self.model_dump(by_alias=True)`:
|
|
61
|
+
|
|
62
|
+
* `None` is only added to the output dict for nullable fields that
|
|
63
|
+
were set at model initialization. Other fields with value `None`
|
|
64
|
+
are ignored.
|
|
65
|
+
"""
|
|
66
|
+
excluded_fields: Set[str] = set([
|
|
67
|
+
])
|
|
68
|
+
|
|
69
|
+
_dict = self.model_dump(
|
|
70
|
+
by_alias=True,
|
|
71
|
+
exclude=excluded_fields,
|
|
72
|
+
exclude_none=True,
|
|
73
|
+
)
|
|
74
|
+
return _dict
|
|
75
|
+
|
|
76
|
+
@classmethod
|
|
77
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
78
|
+
"""Create an instance of QueryCoverageOutput from a dict"""
|
|
79
|
+
if obj is None:
|
|
80
|
+
return None
|
|
81
|
+
|
|
82
|
+
if not isinstance(obj, dict):
|
|
83
|
+
return cls.model_validate(obj)
|
|
84
|
+
|
|
85
|
+
_obj = cls.model_validate({
|
|
86
|
+
"query": obj.get("query"),
|
|
87
|
+
"is_covered": obj.get("is_covered"),
|
|
88
|
+
"similarity": obj.get("similarity")
|
|
89
|
+
})
|
|
90
|
+
return _obj
|
|
91
|
+
|
|
92
|
+
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
wordlift_client/__init__.py,sha256=
|
|
2
|
-
wordlift_client/api_client.py,sha256=
|
|
1
|
+
wordlift_client/__init__.py,sha256=B2n4l32fOKsB3X5G5b0qA_ehedWszZW4Bl8OKL3i8ew,20231
|
|
2
|
+
wordlift_client/api_client.py,sha256=SlVFX6qowDnb4wey2RkGQuhqX4rvQBEvAyOhxlYZSrY,26397
|
|
3
3
|
wordlift_client/api_response.py,sha256=eMxw1mpmJcoGZ3gs9z6jM4oYoZ10Gjk333s9sKxGv7s,652
|
|
4
|
-
wordlift_client/configuration.py,sha256=
|
|
4
|
+
wordlift_client/configuration.py,sha256=q63XovesVq-8I_tTOhYtZJPMzmmOsNJO6EWaN1fed0c,15932
|
|
5
5
|
wordlift_client/exceptions.py,sha256=KvTu-E964XhAzMXOSfVycfOL1Eeraob5bgD4CfElD7M,5912
|
|
6
6
|
wordlift_client/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
7
7
|
wordlift_client/rest.py,sha256=3D4hicZkeSFLxmhmgnlH63K7P39ToGyPk_3aQlHGznI,6817
|
|
8
|
-
wordlift_client/api/__init__.py,sha256=
|
|
8
|
+
wordlift_client/api/__init__.py,sha256=00uCiqDr1Zy46jLIRGqLj0uWx5455yDLnJ7fRIhdDYY,5096
|
|
9
9
|
wordlift_client/api/account_api.py,sha256=wxVhHEPyMfNpC1_sBLp2nECfvyGIVwlqqM2Xu3EGSHI,10288
|
|
10
10
|
wordlift_client/api/account_google_search_console_api.py,sha256=QruHrGZ1LMRhVrVt5k1UOAQZSkMY8zMZWkQ2DdeD5Dw,12119
|
|
11
11
|
wordlift_client/api/account_stats_api.py,sha256=tQshIfkbME-WMY-sBMwUUZdSTDBeoaV0wnrtAnaFv_g,10480
|
|
@@ -64,6 +64,7 @@ wordlift_client/api/platform_consumptions_api.py,sha256=o6HVj9-BvLB2lEOunCSNTHYe
|
|
|
64
64
|
wordlift_client/api/platform_limits_api.py,sha256=TpcTfw04rEYGctHe5rMNzdV0HRDN1JeNkh78WyjqEOI,55869
|
|
65
65
|
wordlift_client/api/plugin_diagnostics_api.py,sha256=qB3JbZSYIKPIcwVOYWD8EsBflldHkaTGkXw9q72A59g,12536
|
|
66
66
|
wordlift_client/api/plugin_events_api.py,sha256=knq7Bab7ukTANLRZF-UCNm8Nftoueoc0oWZkEF8GqPo,25860
|
|
67
|
+
wordlift_client/api/query_fan_out_api.py,sha256=-hEIpbEtbRFJdTCddAphukFzx-ERQtofcuPvXynS2hY,12392
|
|
67
68
|
wordlift_client/api/questions_and_answers_api.py,sha256=OME5ucn7_fwj5vHBJgbXC64US58uE-kNDK46pzz5Y8A,75218
|
|
68
69
|
wordlift_client/api/redeem_codes_api.py,sha256=GG7LIFHqCL--KH6hEtXO-Gn1NQKa5w4qYJIhjlZVuZU,11462
|
|
69
70
|
wordlift_client/api/rules_api.py,sha256=6ESuYM5gHzdzIs1LO69CcnODUXRqnloiHLB6TaGio-M,68256
|
|
@@ -81,7 +82,7 @@ wordlift_client/api/web_asyncs_metadata_api.py,sha256=cpDQmIGc6uHu5rFXwZAy1cVgcW
|
|
|
81
82
|
wordlift_client/api/web_asyncs_responses_api.py,sha256=h91xI3iIgGoMUcZ7Oft5xiLy0rHh_2qzZDrFTRz3P8w,10889
|
|
82
83
|
wordlift_client/api/web_pages_api.py,sha256=VKPLIaQRxxDn3daP0zvXRiHj2eegsZIjxUmHKzxZXoc,10839
|
|
83
84
|
wordlift_client/api/web_pages_imports_api.py,sha256=yPhNLZ1jV2dEDnYuHb7OpiFH3K2ROrRYHG4ZrAf4VMU,11719
|
|
84
|
-
wordlift_client/models/__init__.py,sha256=
|
|
85
|
+
wordlift_client/models/__init__.py,sha256=fukxe5AI1gLrRZmG3rqXizo3Zy3rJIS7wvornkwFlWo,14628
|
|
85
86
|
wordlift_client/models/account.py,sha256=trGNzy3ZBGE1VsSke4aoXBQem-3jK60xVz0OWOOMWso,5523
|
|
86
87
|
wordlift_client/models/account_config.py,sha256=_4YZ8IGS4h16wa9aSaL9rpeoZYR8faiwEAtovP4eBVI,2592
|
|
87
88
|
wordlift_client/models/account_info.py,sha256=tCqVHqfeK5u1cQkLOBgJRUTs-e8vmGCjqZ4wgfmNIuw,7750
|
|
@@ -89,7 +90,7 @@ wordlift_client/models/account_stats.py,sha256=hMtiIDYGGMp4ytKgvgBIx40U5EyWr6-IJ
|
|
|
89
90
|
wordlift_client/models/account_subscription.py,sha256=hJNuMXCDt9EqLvp3vfgv2xMc1Uk7UQ7gzTM320MsPbk,2858
|
|
90
91
|
wordlift_client/models/active_account.py,sha256=rFDPX3X2hwMQfMnURcLEPgb9W5NGE1xmDIQhPZRMXQA,5707
|
|
91
92
|
wordlift_client/models/add_on_configuration.py,sha256=8sEIAr91rjmj-A3B1vGUVlZkc_hVxOSmO_Irt4irhz4,3731
|
|
92
|
-
wordlift_client/models/ai_visibility_analysis_result.py,sha256=
|
|
93
|
+
wordlift_client/models/ai_visibility_analysis_result.py,sha256=mAAQA8cJxKooYYGNNnK7agxtvjnEsFtvCKCoBD8j8tg,4120
|
|
93
94
|
wordlift_client/models/analyses_request.py,sha256=_D_X2nN1Dkq835XUs8rinSSNOgQf5nXrFUV_YFbUI6E,4553
|
|
94
95
|
wordlift_client/models/analyses_response.py,sha256=Nd7Tm2Cll3zqLCAx6KpgaY-dqQgmYLwKxnICOBBdmhU,2924
|
|
95
96
|
wordlift_client/models/analyses_response_item.py,sha256=A-Xu3xm-XsOLfcxQa4ULb6p_T3CUXcrz7jVmzg3cBvM,3906
|
|
@@ -221,6 +222,7 @@ wordlift_client/models/project_type.py,sha256=nUZ2YFzVSArByM6HMCzVdR7GH2cab22Rcw
|
|
|
221
222
|
wordlift_client/models/properties.py,sha256=MiXOK8WyyBI_n-SCFq0ZFzyiNesx3IRud9FHculCk4g,2657
|
|
222
223
|
wordlift_client/models/properties1.py,sha256=bcVIqb9yCa3bLztYT3Z8hwcTbNhz_FuBvzwnES6s05s,2712
|
|
223
224
|
wordlift_client/models/query_coverage.py,sha256=O3_omdnagA9UyMU8DrZHgxzqRXim0KxCQof4ovB5LZc,2775
|
|
225
|
+
wordlift_client/models/query_coverage_output.py,sha256=Q25HcSN60ihgDx5g2OWBAEXXdP1QXPD7V4FzYw7BP18,2678
|
|
224
226
|
wordlift_client/models/question_and_answer.py,sha256=y2-ZyG-KKlRQZzG-u8GX2QB_w8FiWKS24x5ngbJOQMs,5655
|
|
225
227
|
wordlift_client/models/question_and_answer_request.py,sha256=yPMv-dFIkCkyMD0mwfYujvecVo0TAhEVy6gkHKOCwzc,3111
|
|
226
228
|
wordlift_client/models/quick_win.py,sha256=WVcvUhh0uii0QYbEF-7CGvs-NtUO6lbZzLkcu8tZhgc,3187
|
|
@@ -280,8 +282,8 @@ wordlift_client/models/with_limits.py,sha256=rSzDb_If8APxR2Rw2U6cfFRFubnnai3Vj3-
|
|
|
280
282
|
wordlift_client/models/word.py,sha256=FPCGb6ohwdfydE5_qG4PT-UrnMzaTktAWqEEnezwaso,3922
|
|
281
283
|
wordlift_client/models/word_repetition_data.py,sha256=CQnxCnhakt12czl6a_AQIPgHlJtvR9YGBIjGV22rq14,2659
|
|
282
284
|
wordlift_client/models/word_request.py,sha256=ZD13xNRYCZmF14jxEDrRRyEMAd-quDT-HsqkbUP_xWU,2627
|
|
283
|
-
wordlift_client-1.
|
|
284
|
-
wordlift_client-1.
|
|
285
|
-
wordlift_client-1.
|
|
286
|
-
wordlift_client-1.
|
|
287
|
-
wordlift_client-1.
|
|
285
|
+
wordlift_client-1.129.0.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
|
286
|
+
wordlift_client-1.129.0.dist-info/METADATA,sha256=zdgD9AOZ-hpGVX2DOZmp3OpthmT31ItQ3nir0ga31Oo,530
|
|
287
|
+
wordlift_client-1.129.0.dist-info/WHEEL,sha256=iAkIy5fosb7FzIOwONchHf19Qu7_1wCWyFNR5gu9nU0,91
|
|
288
|
+
wordlift_client-1.129.0.dist-info/top_level.txt,sha256=p7KFYU869ksxkpP7ADvg8baPgWkTYCzcOpDl1qrJdHk,16
|
|
289
|
+
wordlift_client-1.129.0.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|