0

With the help of the dolibarr swagger I generated the client code in rust with openAPI. I end up with a method with the following signature to add a member:

pub async fn create_members(configuration: &configuration::Configuration, create_members_model: Option<crate::models::CreateMembersModel>) -> Result<i64, Error<CreateMembersError>>

Here is the structure of create_members_model :

pub struct CreateMembersModel {
    /// Request data
    #[serde(rename = "request_data", skip_serializing_if = "Option::is_none")]
    pub request_data: Option<Vec<String>>,
}

To create a new member I do :

let dolibarr_info = String::from("{\"field1\":\"value1\",\"field2\":\"value2\",\"field3\":\"value3\"}");
let mut vec = Vec::new();
vec.push(my_string_json);
let member_model = create_members_model::CreateMembersModel {
    request_data: Some(vec),
};

And I end up with the following error:

Bad Request: Invalid value specified for `request_data`

When I am in the interface, it offers me the following interface:

{
    "request_data": [
      "string"
    ]
}

And it only works when I enter the values in this way:

{
    "field1": "value1",
    "field2": "value2",
    "field3": "value3",
}

I'm sure all the required fields are there and I don't understand what's wrong with the query.

tyler
  • 13
  • 6

0 Answers0