Forum Academy Marketplace Showcase Pricing Features

Error Request Should be Valid JSON object

I was experiencing some buggy behavior with the API connector setting up Zoom API calls. First started with the redirectURI for getting the access token. I kept getting an error after I had initialized the call and wanted to use it in my workflows. I came back the next day and reinitialized and everything works fine (didn’t make any changes to anything, just pressed re-initialize button again)

Now I am having an issue with the ‘Create Meeting’ API call in which I had been able to successfully initialize the call and have that new meeting show up in my Zoom account from the initialization process…however, now that I try to use that call in a workflow I get an error saying the JSON Body is not formatted properly, although it is as I tested in a JSON Validator

{
	"topic": "<topic>",
	"type": "<type>",
	"start_time": "<start_time>",
	"duration": "<duration>",
	"timezone": "<timezone>",
	"agenda": "<agenda>"
}

Looking through the forum the last few days I see other people having the same type of issue, although for them it is usually during initialization. All proposed solutions do not resolve the issue for me and it makes me believe that because I initialized the call and it created a meeting in my zoom account, there is likely some buggy behavior going on.

Do you have any insight into why I would get this error after I have already initialized the call?


Screen Shot 2021-05-30 at 2.19.01 PM

Hey,

Can you attach a screenshot from the logs of the JSON that you sent and has the issue, please?

Perhaps, you are sending a value with double quotes or line breaks that break the JSON structure.

This is how I have it setup in the workflow

I am unable to access logs in this application because it is a template plan and Bubble for some unknown reason restricts the developer access to the logs when using the template plan, which makes debugging very challenging at times.

This is the raw response I get when I initialize the call. In the results below I replaced the actual value with the word value…when there were quotes around the actual value I left them around the word value, and when no quotes existed in the response around the actual value I left the word value without quotes.

{
    "uuid": "value",
    "id": value,
    "host_id": "value",
    "host_email": "value",
    "topic": "null",
    "type": 2,
    "status": "waiting",
    "start_time": "2021-05-30T10:18:57Z",
    "duration": 60,
    "timezone": "Asia/Bangkok",
    "agenda": "null",
    "created_at": "2021-05-30T10:18:57Z",
    "start_url": "https://us05web.zoom.us/s/value?zak=value",
    "join_url": "https://us05web.zoom.us/j/89496504076?pwd=value",
    "password": "value",
    "h323_password": "value",
    "pstn_password": "value",
    "encrypted_password": "value",
    "settings": {
        "host_video": false,
        "participant_video": false,
        "cn_meeting": false,
        "in_meeting": false,
        "join_before_host": false,
        "jbh_time": 0,
        "mute_upon_entry": false,
        "watermark": false,
        "use_pmi": false,
        "approval_type": 2,
        "audio": "voip",
        "auto_recording": "none",
        "enforce_login": false,
        "enforce_login_domains": "",
        "alternative_hosts": "",
        "close_registration": false,
        "show_share_button": false,
        "allow_multiple_devices": false,
        "registrants_confirmation_email": true,
        "waiting_room": false,
        "request_permission_to_unmute_participants": false,
        "registrants_email_notification": true,
        "meeting_authentication": false,
        "encryption_type": "enhanced_encryption",
        "approved_or_denied_countries_or_regions": {
            "enable": false
        },
        "breakout_room": {
            "enable": false
        },
        "alternative_hosts_email_notification": true,
        "device_testing": false
    }
}

The idea of the quotes crossed my mind as I have been scouring the Zoom developers forum, which is riddled with this type of an issue, and have seen some Zoom staff responding about the use of quotes, especially around the duration, so I removed it from my API call, and it still initializes, but I still get the error when trying to use it in a workflow.

I’m going to send Bubble support a request to provide me with the logs of the API to try and see the values…no idea why the logs are restricted in a template plan.

This is what I see in the debugger as values.

Weird stuff. I’m having the same issue with SendinBlue API. Simple send email action. I wonder if this related to latest plan changes.

Testing this on Legacy Hobby

EDIT:

Just tested the same API on paid plan and it works. I thought there were no changes to legacy hobby plan

same issue getting the error about invalid JSON object?

Yes it was about invalid JSON object but its working for me now. How about you?

Still not. I’ve contacted support about it and they will be able to provide me the log details of what is being sent.

Did you have to make any changes or is it just something that went away on its own? From my experience during the initialization process I kept getting the error, then on one random try (when nothing had been changed, just continually pressing initialize button) it initialized.

I have not experienced the error during initialization again, but during use in preview mode when making the call I get the error.

Bubble Support sent me the logs details of what is being sent, although they cautioned the raw logs still have some formatting done to them, but at least the raw logs can give a sense of what is being sent.

“body”: “{\n\t"topic”: “New Meeting from NoCode Trainer”,\n\t"type": “Scheduled meeting.”,\n\t"start_time": “2021-05-30T19:00:26.407Z”,\n\t"duration": 120,\n\t"timezone": “Asia/Bangkok”,\n\t"agenda": “To discuss all the details we need to hash out.”\n}",

Update

I ended up getting this sorted by using Postman (first time I’ve tried it and took only about 30 minutes). Isolated the issue to the parameter “type” which looking closer at the Zoom docs is meant to be an integer rather than a string.

Made the adjustments to the quotation marks and values sent and everything is working now.

No issues during the initialization, preview mode was not working until it was - I didn’t change a thing.