in reply to Help with getopt::long and GetOptionsFromArray

The timestamp option seems to be a boolean option when you seem to intend to make it take a value.

Did you mean to write

GetOptionsFromArray ( \@args, \%query_params, 'timestamp:s' );

?