1.8 Release API Schedule Time Format?

I am attempting to use the API(1.8 release) to POST a Schedule Event but running into a problem with the fromDt and toDt.
What is the format that is desired?
I have tried it as a Unix Timestamp, and in ISO Format 2017-03-28 08:00:00. Both of them return an error code.

I have been looking for a log with some type of information but coming up empty.

    "error": {
        "message": "Expecting a date in fromDt but received  2017-03-28 08:00:00.",
        "code": 422,
        "data": [


The date format is correct, example call in postman:

the response that will be

  "eventId": 2,
  "eventTypeId": 1,
  "campaignId": 1,
  "commandId": null,
  "displayGroups": [
      "displayGroupId": 327,
      "displayGroup": "POSTMANDISPLAY",
      "description": null,
      "isDisplaySpecific": 1,
      "isDynamic": 0,
      "dynamicCriteria": null,
      "userId": 0
  "userId": 1,
  "fromDt": "1490688000",
  "toDt": "1490774400",
  "isPriority": 1,
  "displayOrder": 1,
  "recurrenceType": null,
  "recurrenceDetail": null,
  "recurrenceRange": null,
  "recurrenceRepeatsOn": null,
  "campaign": null,
  "command": null,
  "dayPartId": 0,
  "syncTimezone": 0

As you can see in the response it is converted to unix timestamp

In code it can be also passed as, for example
'fromDt' => date('Y-m-d H:i:s', $timestamp)

where $timestamp is unix timestamp, but if you pass the date already in that format then it should work as well

that is the format that I am using and it is not happy at all about it.
I turned on the logs but nothing is showing up.

Not sure if this is relevant to the error or not. If the error messages above was copied, it looks to have an extra space before date time.

I finally got it to work correctly, I was simply testing with the bare minimum, ie REQUIRED fields that are outlined in the Swagger-UI documentation, I built a test using the data that Peter used (with today date) and it worked, after I added in the campaigId key.

campaignID is not noted as a required key, but when you think about it that data has to be there. On to more testing

Yeah it can be confusing, but it is like that because of the eventId.

if eventId is set to 1 then campaignId is required but
if eventId is set to 2 then commandId is required

there is also eventId 3 (overlay layout) then campaignId is also required.

Which means that campaignId and commandId need to be either both set as required (which is not quite correct, as you need one of them) or both set as not required.

We could improve the description of those two parameters, so it would be clearer, in any case, I’m glad it works for you now.

This should work with using the standard Unix TimeStamp ?

In postman it needs to be 2017-07-03 08:00:00 format I believe

In ‘normal’ code as I mentioned you can convert the unix timestamp to this format