# Time

The Time category of Blocks in the GraphLinq IDE focuses on obtaining time and date information and performing manipulations with timestamps. A timestamp serves as a unique label representing a specific moment in time, capturing the date and time when a particular event occurred or when data was created or modified.

GraphLinq utilizes Unix Timestamps to generate current time and date values. Unix timestamps count the number of seconds that have passed since a predefined reference point, known as the "Unix epoch," which is set at January 1, 1970, 00:00:00 UTC (Coordinated Universal Time).

Blocks for Generating Timestamps:

* The [Get Timestamp](https://docs.graphlinq.io/dev-tooling/blocks/time/get-timestamp) block provides the current Unix timestamp, indicating the present date and time.
* The [Get Millisecond Timestamp](https://docs.graphlinq.io/dev-tooling/blocks/time/get-milliseconds-timestamp) block is similar but includes milliseconds for greater precision in the timestamp.

Subtracting Time from Timestamps:

* To subtract time from the current timestamp, the [Get Timestamp Offset](https://docs.graphlinq.io/dev-tooling/blocks/time/get-timestamp-offset) block allows users to specify the desired time interval to deduct.
* The [Get Milliseconds Timestamp Offset](https://docs.graphlinq.io/dev-tooling/blocks/time/get-milliseconds-timestamp-offset) block performs the same operation but with milliseconds.

Formatting Timestamps:

* To convert a Unix timestamp into a human-readable date format, the [Format Date](https://docs.graphlinq.io/dev-tooling/blocks/time/format-date) block is utilized. Users can customize the date format as desired.
* The [Timestamp to Date](https://docs.graphlinq.io/dev-tooling/blocks/time/timestamp-to-date) block serves a similar purpose, enabling the conversion of Unix timestamps to human-readable date formats.
* The [Millisecond Timestamp to Date](https://docs.graphlinq.io/dev-tooling/blocks/time/millisecond-timestamp-to-date) block performs the same operation but includes milliseconds for precision.

Additional Time Blocks:

* The [Execution Time Interval](https://docs.graphlinq.io/dev-tooling/blocks/time/execution-time-interval) block calculates the time interval between the start and end of executing a specific part of the graph.
* The [Timer](https://docs.graphlinq.io/dev-tooling/blocks/time/timer) block can be used to trigger an event after a specified time interval, facilitating time-based operations.

These time-related blocks provide developers with the tools to work with timestamps, manipulate time and date data, and convert between Unix timestamps and human-readable formats, streamlining time-related operations in their graphs.
