def get_ulid_timestamp(ulid):
    """
    Get the time from an ULID as an UNIX timestamp.

    :param ulid: An ULID (either as UUID, base32 ULID or binary)
    :return: UNIX timestamp
    :rtype: float
    """
    ts_bytes = ulid_to_binary(ulid)[:6]
    ts_bytes = b'\0\0' + ts_bytes
    assert len(ts_bytes) == 8
    return (struct.unpack(b'!Q', ts_bytes)[0] / 1000.)