Skip to the content.



jc - JSON Convert ISO 8601 Datetime string parser

This parser supports standard ISO 8601 strings that include both date and time. If no timezone or offset information is available in the string, then UTC timezone is used.

Usage (cli):

$ echo "2022-07-20T14:52:45Z" | jc --iso-datetime

Usage (module):

import jc
result = jc.parse('iso_datetime', iso_8601_string)


  "year":               integer,
  "month":              string,
  "month_num":          integer,
  "day":                integer,
  "weekday":            string,
  "weekday_num":        integer,
  "hour":               integer,
  "hour_24":            integer,
  "minute":             integer,
  "second":             integer,
  "microsecond":        integer,
  "period":             string,
  "utc_offset":         string,
  "day_of_year":        integer,
  "week_of_year":       integer,
  "iso":                string,
  "timestamp":          integer  # [0]

[0] timezone aware UNIX timestamp expressed in UTC


$ echo "2022-07-20T14:52:45Z" | jc --iso-datetime -p
  "year": 2022,
  "month": "Jul",
  "month_num": 7,
  "day": 20,
  "weekday": "Wed",
  "weekday_num": 3,
  "hour": 2,
  "hour_24": 14,
  "minute": 52,
  "second": 45,
  "microsecond": 0,
  "period": "PM",
  "utc_offset": "+0000",
  "day_of_year": 201,
  "week_of_year": 29,
  "iso": "2022-07-20T14:52:45+00:00",
  "timestamp": 1658328765


def parse(data, raw=False, quiet=False)

Main text parsing function


data:        (string)  text data to parse
raw:         (boolean) unprocessed output if True
quiet:       (boolean) suppress warning messages if True


Dictionary. Raw or processed structured data.

Parser Information

Compatibility: linux, aix, freebsd, darwin, win32, cygwin

Source: jc/parsers/

This parser can be used with the --slurp command-line option.

Version 1.1 by Kelly Brazil (