- Notifications
You must be signed in to change notification settings - Fork 4.9k
Closed
Labels
area/connectorsConnector related issuesConnector related issuesautoteamteam/connectors-pythontype/bugSomething isn't workingSomething isn't working
Description
Connector Name
source-klaviyo
Connector Version
2.1.0
What step the error happened?
Updating the connector
Relevant information
Missing Fields
There are multiple missing fields in the stream schemas.
Abnormal State
The Klaviyo API throws an error if the date filter used in requests is set to a future date. There is currently logic to set the date used in the filter to the current date-time using pendulum.now() in such instances. However, this still results in the API throwing a fatal error, meaning our abnormal_state Incremental test cannot currently pass.
Relevant log output
{ "type": "LOG", "log": {"level": "ERROR", "message": "{\"errors\":[{\"id\":\"a64d72a1-a154-4419-9d12-8f266a1fa710\",\"status\":400,\"code\":\"invalid\",\"title\":\"Invalid input.\",\"detail\":\"End date may not be in the future: YYYY-mm-ddTHH:MM:SS\",\"source\":{\"pointer\":\"updated_at\"},\"meta\":{}}]}"}} {"type": "TRACE", "trace": {"type": "ERROR", "emitted_at": 1707354458177.758, "error": {"message": "End date may not be in the future: YYYY-mm-ddTHH:MM:SS", "internal_message": "400 Client Error: Bad Request for url: https://a.klaviyo.com/api/campaigns?filter=greater-than%28updated_at%2C2024-02-07T20%3A07%3A38.044959-05%3A00%29&sort=updated_at", "stack_trace": "Traceback (most recent call last):\n File \"/home/merquise/codebase/work/airbyte/airbyte-integrations/connectors/source-klaviyo/.venv/lib/python3.10/site-packages/airbyte_cdk/sources/abstract_source.py\", line 126, in read\n yield from self._read_stream(\n File \"/home/merquise/codebase/work/airbyte/airbyte-integrations/connectors/source-klaviyo/.venv/lib/python3.10/site-packages/airbyte_cdk/sources/abstract_source.py\", line 203, in _read_stream\n for record in record_iterator:\n File \"/home/merquise/codebase/work/airbyte/airbyte-integrations/connectors/source-klaviyo/.venv/lib/python3.10/site-packages/airbyte_cdk/sources/abstract_source.py\", line 239, in _read_incremental\n for record_data_or_message in stream_instance.read_incremental(\n File \"/home/merquise/codebase/work/airbyte/airbyte-integrations/connectors/source-klaviyo/.venv/lib/python3.10/site-packages/airbyte_cdk/sources/streams/core.py\", line 156, in read_incremental\n for record_data_or_message in records:\n File \"/home/merquise/codebase/work/airbyte/airbyte-integrations/connectors/source-klaviyo/source_klaviyo/streams.py\", line 238, in read_records\n yield from super().read_records(sync_mode, cursor_field, stream_slice, stream_state)\n File \"/home/merquise/codebase/work/airbyte/airbyte-integrations/connectors/source-klaviyo/source_klaviyo/streams.py\", line 116, in read_records\n yield from super().read_records(sync_mode, cursor_field, stream_slice, stream_state)\n File \"/home/merquise/codebase/work/airbyte/airbyte-integrations/connectors/source-klaviyo/.venv/lib/python3.10/site-packages/airbyte_cdk/sources/streams/http/http.py\", line 482, in read_records\n yield from self._read_pages(\n File \"/home/merquise/codebase/work/airbyte/airbyte-integrations/connectors/source-klaviyo/.venv/lib/python3.10/site-packages/airbyte_cdk/sources/streams/http/http.py\", line 498, in _read_pages\n request, response = self._fetch_next_page(stream_slice, stream_state, next_page_token)\n File \"/home/merquise/codebase/work/airbyte/airbyte-integrations/connectors/source-klaviyo/.venv/lib/python3.10/site-packages/airbyte_cdk/sources/streams/http/http.py\", line 524, in _fetch_next_page\n response = self._send_request(request, request_kwargs)\n File \"/home/merquise/codebase/work/airbyte/airbyte-integrations/connectors/source-klaviyo/.venv/lib/python3.10/site-packages/airbyte_cdk/sources/streams/http/http.py\", line 422, in _send_request\n return backoff_handler(user_backoff_handler)(request, request_kwargs)\n File \"/home/merquise/codebase/work/airbyte/airbyte-integrations/connectors/source-klaviyo/.venv/lib/python3.10/site-packages/backoff/_sync.py\", line 105, in retry\n ret = target(*args, **kwargs)\n File \"/home/merquise/codebase/work/airbyte/airbyte-integrations/connectors/source-klaviyo/.venv/lib/python3.10/site-packages/backoff/_sync.py\", line 105, in retry\n ret = target(*args, **kwargs)\n File \"/home/merquise/codebase/work/airbyte/airbyte-integrations/connectors/source-klaviyo/.venv/lib/python3.10/site-packages/airbyte_cdk/sources/streams/http/http.py\", line 381, in _send\n raise exc\n File \"/home/merquise/codebase/work/airbyte/airbyte-integrations/connectors/source-klaviyo/.venv/lib/python3.10/site-packages/airbyte_cdk/sources/streams/http/http.py\", line 378, in _send\n response.raise_for_status()\n File \"/home/merquise/codebase/work/airbyte/airbyte-integrations/connectors/source-klaviyo/.venv/lib/python3.10/site-packages/requests/models.py\", line 1021, in raise_for_status\n raise HTTPError(http_error_msg, response=self)\nrequests.exceptions.HTTPError: 400 Client Error: Bad Request for url: https://a.klaviyo.com/api/campaigns?filter=greater-than%28updated_at%2C2024-02-07T20%3A07%3A38.044959-05%3A00%29&sort=updated_at\n", "failure_type": "system_error"}}}Metadata
Metadata
Assignees
Labels
area/connectorsConnector related issuesConnector related issuesautoteamteam/connectors-pythontype/bugSomething isn't workingSomething isn't working