# Parse duration > Supported in: Batch Parses an ISO8601 string duration and start time to its length in a specific time unit. **Expression categories:** Datetime, String ## Declared arguments * **Duration:** The ISO8601 duration to parse. If invalid, the output will be null.
*Expression\* * **Start time:** Start timestamp of duration, used for determining the length of certain durations (e.g. months).
*Expression\* * **Unit:** Output time unit. The result will be the number of complete time units represented by the duration.
*Enum\* **Output type:** *Long* ## Examples ### Example 1: Base case **Argument values:** * **Duration:** PT1M30.5S * **Start time:** 2022-10-01T09:00:00Z * **Unit:** `SECONDS` **Output:** 90 *** ### Example 2: Base case **Argument values:** * **Duration:** P2DT6H * **Start time:** 2022-10-01T09:00:00Z * **Unit:** `HOURS` **Output:** 54 *** ### Example 3: Base case **Argument values:** * **Duration:** P1M2W * **Start time:** 2023-02-01T09:00:00Z * **Unit:** `DAYS` **Output:** 42 *** ### Example 4: Null case **Argument values:** * **Duration:** PT1Y6M * **Start time:** 2022-02-01T00:00:00Z * **Unit:** `YEARS` **Output:** *null* *** ### Example 5: Null case **Argument values:** * **Duration:** *null* * **Start time:** 2022-02-01T00:00:00Z * **Unit:** `MILLISECONDS` **Output:** *null* *** ### Example 6: Edge case **Argument values:** * **Duration:** P300000000000Y * **Start time:** 2022-02-01T00:00:00Z * **Unit:** `MILLISECONDS` **Output:** *null* ***