Converting Unix timestamp to date from field in record

Summary

How to convert a Unix timestamp to date from a field in a record


Question

convert unix timestamp to date from field in record <@U04SE163WC8>



This topic has been created from a Slack thread to give it more visibility.
It will be on Read-Only mode here. Click here if you want to access the original thread.

Join the conversation on Slack

["convert", "unix-timestamp", "date", "field", "record"]

To convert UNIX timestamps to date from a field in a record, you can override the behavior of the stream slicer in Airbyte. The stream slicer by default supports standard datetime formats, but you can alter this to handle UNIX timestamps. Here’s an example of how you can configure the DeclarativeStream to handle UNIX timestamps: yaml incremental_sync: type: DatetimeBasedCursor cursor_field: "created" datetime_format: "%s" cursor_granularity: "PT1S" start_datetime: datetime: "{{ config['start_date'] }}" datetime_format: "%Y-%m-%d %H:%M:%S" end_datetime: datetime: "{{ today_utc() }}" datetime_format: "%Y-%m-%d" step: "P1W" start_time_option: field_name: "created_after" inject_into: "request_parameter" end_time_option: field_name: "created_before" inject_into: "request_parameter" In this configuration, the datetime_format is set to "%s", which is the format for UNIX timestamps. The cursor_field is set to "created", which is the field that contains the UNIX timestamps. The start_time_option and end_time_option are set to "created_after" and "created_before" respectively, which could be used to set up incremental syncing. This configuration was used in the Delighted connector to handle a similar situation. Source: Forum Post: Handling UNIX timestamps with Low-Code CDK

how about split string in connector builder <@U04SE163WC8>

A message from http://kapa.ai|kapa.ai

I’m sorry, but the provided extracts do not contain information on how to split a string in the connector builder in Airbyte. It’s important to note that the connector builder is primarily used for defining how to access an API or a database, structuring requests, and extracting records from responses. It’s not typically used for data transformation tasks like splitting strings. For more complex data transformation tasks, you might need to use the low-code CDK or Python CDK. You can find more information about these in the Airbyte documentation.

how do i prevent this error? <@U04SE163WC8> ISO time too short

The error message “Invalid timestamp: ‘2020-06-08T13:15’” suggests that the timestamp format you’re using is not complete. It seems to be missing the seconds component. A complete ISO 8601 timestamp should look like this: 2020-06-08T13:15:00. If you’re getting this error during a sync operation in Airbyte, it could be due to the source data not having a complete timestamp. You might need to adjust the data at the source or use a transformation step to ensure the timestamps are in the correct format. If you’re using a database as a source, you might need to adjust the way you’re extracting the timestamp data. If you’re using an API, you might need to adjust the way you’re parsing the timestamp data. In the case of a forum post about a similar issue with the Amazon Seller Partner source, the user suspected that the issue was due to the ISO 8601 date formatting. The colon (:slight_smile: in the date was being changed to %3A. If you’re experiencing a similar issue, you might need to adjust the way you’re encoding the timestamp data. Source: Forum Post: Invalid Timestamp in basic normalization (source-postgres) Forum Post: :white_check_mark: SOURCE: Amazon Seller Partner - Error: InvalidInput - ISO 8601

how to convert datetime to string <@U04SE163WC8>

In Airbyte, the conversion of datetime to string is handled automatically by the source connectors. For example, in the case of the MS SQL Server Source Connector, it converts every Dateformat to String. Similarly, the MySQL connector also replicates Datetime columns as string. However, if you need to manually convert a datetime to a string in a specific format, you would typically use a transformation step after the data has been extracted by Airbyte. This could be done using a tool like dbt (Data Build Tool) or in the destination itself if it supports SQL or a similar language. Here’s an example of how you might do this in SQL: sql SELECT FORMAT(your_datetime_column, 'yyyy-MM-dd HH:mm:ss') as formatted_datetime FROM your_table This would convert the datetime values in your_datetime_column to strings in the format ‘yyyy-MM-dd HH:mm:ss’. Please note that the specific function and syntax you would use to format the datetime as a string can vary depending on the SQL dialect used by your destination. Sources: - Forum Post: MS SQL Server: How to keep a Date being a Date - Forum Post: Source MySQL Datetime column is replicated with microseconds