Validation error caused by backslash "/"

Hi everyone,

Hope you’re going well.

Since a few days, I’m struggling with updating a reference item field in my Webflow CMS.

I have the error 400 (validation error). I then have tested all data one by one. It works. But when updating with 2+ items in the reference field. It doesn’t work.

So the problem concerns the data structure of the data sent. It mays consider the data as a string instead of an array.

In the image attached, you can see data sent is
'"62eaec0b5c0dae2ed61afa9e","62eaec0b5c0dae18bf1afb75","62eaec0b5c0dae59bb1afb8d" instead of '“62eaec0b5c0dae2ed61afa9e”,“62eaec0b5c0dae18bf1afb75”,“62eaec0b5c0dae59bb1afb8d”

How can I resolve this ?

Thank you in anticipation

Hi @Denys_Saisse, welcome to the community!

I am sorry to hear you’re having trouble. This error is coming from Webflow, so I won’t be able to say what exactly is wrong here straight away I am afraid.

Your workflow consists of quite a few Webflow nodes from the looks of it. Can you narrow down the problem down and shorten your workflow a bit so this can be reproduced more easily? Ideally something like a single Set node setting the data you’re having trouble with it followed by a single Webflow node throwing the error?

Also, if this requires a specific data structure in Webflow to reproduce, can you please describe how this structure needs to look like?

Thank you!

Thank you so much for your quick replies.

Ok, so here is the workflow:
1 - User books a time slot with a service provider
2 - n8n is triggered
3 - It appends data form data in Airtable
4 - I get the items Ids of updated avalaible time slots for the doctor
5 - I (try to) send data to webflow to update the reference item field. Again, with 1 data sent it works. When reference item contains multiple items separated by coma it doesn’t work.

Here is the data structure for Webflow reference field items:
Screenshot 2022-09-13 at 13.09.51

Instead it is sent like this

Here is a simplified workflow

Thanks for your help

So your field alldocslots would accept an individual value, but not an array-like string?

Which type of field is it on the Webflow side?

And would sending a real array work? Like so:

Webflow accepts Multi references, i simply don’t succeed to format the array the good way.

I tried with array static data such as below, but i still have the same validation error.

Thank you

Hey @Denys_Saisse, I am not familiar with Webflow I am afraid. Can you confirm how to configure the field type you are using in the Webflow UI?

As for sending a real array, can you try using an expression such as {{ ["62eaec0b5c0dae2ed61afa9e","62eaec0b5c0dae18bf1afb75","62eaec0b5c0dae59bb1afb8d"] }} as shown in my example workflow? You can see the difference in the preview, without the expression markers {{ and }}, your value would be treated as a string:

With these curly braces, the value is treated as a proper array by n8n:

THANK YOU SO MUCH

It works :slight_smile:

1 Like

Amazing, glad to hear that was it! Thanks a lot for confirming :slight_smile:

Sorry, but i don’t succeed with dynamic data

When I add “[{{” & “}}]”, the data is null. What formula should i use here ?

Line 1: Dynamic data with {{[ & }}} manually added (without formula)
Line 2: Coma separated data (from Webflow)
Line 3: Static Data (it works)

Thank you in anticipation

Can you share the full JSON output from your Airtable node? This will help greatly with udnerstanding the data structure you currently have. You can copy it like so:

Recording 2022-09-13 at 14.29.00

Feel free to redact the actual values, it’s just the structure I’d like to understand.

Here is the JSON from Airtable.

The data sent to Webflow is updatedDoctorAvalaibilities.

[
  {
    "id": "recJXClTtBWOBbWdq",
    "createdTime": "2022-09-13T12:34:31.000Z",
    "fields": {
      "Status": "meetingBooked",
      "link-to-doctor": [
        "recdKgiuUq5QxZFwy"
      ],
      "link-to-patient": [
        "rec5e2XojjeFACvw2"
      ],
      "link-to-timeSlot": [
        "recDiIurWBkjvJzrO"
      ],
      "Patient": [
        "Denys Patiente"
      ],
      "Doctor": [
        "Anubhav Rajput"
      ],
      "Name": "[day-7-10-00] Denys Patiente X Anubhav Rajput",
      "timeslotWebflowId": [
        "62eaec0b5c0dae57601afb9e"
      ],
      "Hour": [
        "10:00"
      ],
      "Increment Days": [
        "7"
      ],
      "BG Color": "#a3a3a3",
      "calendarRank": [
        149
      ],
      "textColor": "#763afe",
      "patientWebflowId": [
        "631bb19e06d2188548bfaa8b"
      ],
      "doctorWebflowId": [
        "62eaec0b5c0dae72911b002d"
      ],
      "doctorAvalaibilities": [
        "62eaec0b5c0dae5cb91afb9c,62eaec0b5c0dae417b1afa8f,62eaec0b5c0dae57601afb9e"
      ],
      "timeSlot": [
        "day-7-10-00"
      ],
      "timeSlotDoctors": [
        "recu6RIGpIVZ9lKK1",
        "recdKgiuUq5QxZFwy",
        "recLrdQWfAV0wAnnx"
      ],
      "allTimeSlotsDoctors": "haris-aghadi%20anubhav-rajput%20aditya-rout",
      "doctorSlug": [
        "anubhav-rajput"
      ],
      "comaDoctors": "haris-aghadi, anubhav-rajput, aditya-rout",
      "updatedDoctorAvalaibilities": [
        "62eaec0b5c0dae5cb91afb9c,62eaec0b5c0dae417b1afa8f"
      ]
    }
  }
]
1 Like

Thanks @Denys_Saisse! So it looks like what you’re getting from Airtable here is an array consisting of one item which itself is a comma separated string. That’s unlike any data structure I’ve seen before but I think we can handle this.

Here’s an example using .split() in a Set node to convert your string into a “real” array:

The exact expression used here is {{ $json["fields"]["updatedDoctorAvalaibilities"][0].split(',') }}:

image

Perhaps you can give the approach above a go on your end?

It works !!! Thank you so much!

Have a nice day.

1 Like

Excellent, thanks for confirming!

Have a great day as well :slight_smile: