Got Request Body should be a valid JSON object error while create a meeting

POST https://api.zoom.us/v2/users/51285889/meetings with the following request payload.

{
  "topic": "Ronald & Panda: Spanish",
  "type": 2,
  "start_time": "2019-12-11T10:35:01",
  "duration": 60,
  "timezone": "Asia/Shanghai",
  "password": "password",
  "agenda": "Agenda",
  "recurrence": {
    "type": 1,
    "repeat_interval": 1,
    "weekly_days": [1,2,3,4,5,6],
    "end_times": 50
  },
  "settings": {
    "host_video": true,
    "participant_video": true,
    "cn_meeting": true,
    "in_meeting": false,
    "join_before_host": true,
    "mute_upon_entry": false,
    "watermark": false,
    "use_pmi": false,
    "approval_type": 2,
    "registration_type": 3,
    "audio": "both",
    "auto_recording": "cloud",
    "enforce_login": false,
    "alternative_hosts": "",
    "global_dial_in_countries": [
      "US"
    ]
  }
}

Got

{
    "code": 300,
    "message": "Request Body should be a valid JSON object."
}

I don’t understand what is a valid JSON object.

Hey @vena, thanks for posting and using Zoom!

Apologies for the confusion, the "weekly_days" value needs to be a string not an array.

"1,2,3,4,5,6"

Here is the updated request payload:

{
  "topic": "Ronald & Panda: Spanish",
  "type": 2,
  "start_time": "2019-12-11T10:35:01",
  "duration": 60,
  "timezone": "Asia/Shanghai",
  "password": "password",
  "agenda": "Agenda",
  "recurrence": {
    "type": 1,
    "repeat_interval": 1,
    "weekly_days": "1,2,3,4,5,6",
    "end_times": 50
  },
  "settings": {
    "host_video": true,
    "participant_video": true,
    "cn_meeting": true,
    "in_meeting": false,
    "join_before_host": true,
    "mute_upon_entry": false,
    "watermark": false,
    "use_pmi": false,
    "approval_type": 2,
    "registration_type": 3,
    "audio": "both",
    "auto_recording": "cloud",
    "enforce_login": false,
    "alternative_hosts": "",
    "global_dial_in_countries": [
      "US"
    ]
  }
}

Thanks,
Tommy

I have the same error. and I try this payload. But I can not create meeting POST https://api.zoom.us/v2/users/me/meetings.
So I would like you to tell me which fields are the minimum required when creating the meeting.

{
  "topic": "Ronald & Panda: Spanish",
  "type": 2,
  "start_time": "2019-12-11T10:35:01",
  "duration": 60,
  "timezone": "Asia/Shanghai",
  "password": "password",
  "agenda": "Agenda",
  "recurrence": {
    "type": 1,
    "repeat_interval": 1,
    "weekly_days": "1,2,3,4,5,6",
    "end_times": 50
  },
  "settings": {
    "host_video": true,
    "participant_video": true,
    "cn_meeting": true,
    "in_meeting": false,
    "join_before_host": true,
    "mute_upon_entry": false,
    "watermark": false,
    "use_pmi": false,
    "approval_type": 2,
    "registration_type": 3,
    "audio": "both",
    "auto_recording": "cloud",
    "enforce_login": false,
    "alternative_hosts": "",
    "global_dial_in_countries": [
      "US"
    ]
  }
}

Referring to this comment, I tried again today with this payload, but it didn’t solve it. I’m sorry if this is a busy time for you, but please take care of it.

Reference Comments:

payload:

{
  "topic": "string",
  "type": 2,
  "start_time": format_start_time,
  "duration": 60,
  "schedule_for": "",
  "timezone": "Asia/Shanghai",
  "password": "",
  "agenda": "string",
  "recurrence": {
    "type": null,
    "repeat_interval": null,
    "weekly_days": null,
    "monthly_day": null,
    "monthly_week": null,
    "monthly_week_day": null,
    "end_times": null,
    "end_date_time": null
  },
  "settings": {
    "host_video": true,
    "participant_video": false,
    "cn_meeting": false,
    "in_meeting": false,
    "join_before_host": true,
    "mute_upon_entry": true,
    "watermark": false,
    "use_pmi": false,
    "approval_type": 2,
    "registration_type": 1,
    "audio": "both",
    "auto_recording": "none",
    "enforce_login": false,
    "enforce_login_domains": "",
    "alternative_hosts": "",
    "global_dial_in_countries": null,
    "registrants_email_notification": false
  }
}

Hi @tommy

I’m sorry if this is a busy time for you, but please take care of it.

Self-resolved. It wasn’t a field issue, it was a formatting issue in JSON.

1 Like

Happy to hear you figured out the issue! :slight_smile:

Thanks,
Tommy