# Passing body parameter to Swagger API datasource PUT method

**URL:** <https://forum.radzen.com/t/passing-body-parameter-to-swagger-api-datasource-put-method/5519>\
**Category:** Blazor Server\
**Created:** [November 5, 2020, 12:05pm UTC](https://forum.radzen.com/t/passing-body-parameter-to-swagger-api-datasource-put-method/5519 "2020-11-05T12:05:12Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![pat.stave](https://forum.radzen.com/user_avatar/forum.radzen.com/pat.stave/32/4923_2.png) [@pat.stave](https://forum.radzen.com/u/pat.stave)\
**Post date:** [November 5, 2020, 12:05pm UTC](https://forum.radzen.com/t/passing-body-parameter-to-swagger-api-datasource-put-method/5519/1 "2020-11-05T12:05:12Z")

</div>

What syntax do i use to pass parameters to the auto-generated body parameter "PutV0AdditivesAdditiveId"?

I need to pass two parameters, "AdditiveName" and "ValidityEnd" as defined in AdditiveResponse.  
How can i do this in expression form?

 ![image](https://forum.radzen.com/uploads/default/original/2X/2/2a14b8354ba804eca75622ff9a1b27509e8ef87e.png)

**Auto generated method for PUT additive:**

```
...
    public async Task<HttpResponseMessage> PutV0AdditivesAdditiveId(Int64 additiveId, AdditiveValueParameter body)
    {
        var uri = new Uri(baseUri, $"v0/Additives/{additiveId}");

        var message = new HttpRequestMessage(HttpMethod.Put, uri);

        message.Content = new StringContent(JsonSerializer.Serialize(body), Encoding.UTF8, "application/json");

        OnPutV0AdditivesAdditiveId(message);

        var response = await httpClient.SendAsync(message);

        response.EnsureSuccessStatusCode();

        return response;
    }

```

**AdditiveValueParameter class:**

```
public partial class AdditiveValueParameter
{
    [JsonPropertyName("additiveName")]
    public string AdditiveName
    {
        get;
        set;
    }

    [JsonPropertyName("validityEnd")]
    public DateTime? ValidityEnd
    {
        get;
        set;
    }
}

```

}

---

<div class="post-metadata">

**Author:** ![enchev](https://forum.radzen.com/user_avatar/forum.radzen.com/enchev/32/16_2.png) [@enchev](https://forum.radzen.com/u/enchev)\
**Post date:** [November 5, 2020, 12:12pm UTC](https://forum.radzen.com/t/passing-body-parameter-to-swagger-api-datasource-put-method/5519/2 "2020-11-05T12:12:45Z")

</div>

> [@pat.stave](#):
>
> `AdditiveValueParameter`

You need to create an object from this class and set the object properties.

---

<div class="post-metadata">

**Author:** ![pat.stave](https://forum.radzen.com/user_avatar/forum.radzen.com/pat.stave/32/4923_2.png) [@pat.stave](https://forum.radzen.com/u/pat.stave)\
**Post date:** [November 6, 2020, 7:29am UTC](https://forum.radzen.com/t/passing-body-parameter-to-swagger-api-datasource-put-method/5519/3 "2020-11-06T07:29:10Z")

</div>

Thank you for your reply. I ended up with an expression like this:  
`${new AdditiveValueParameter(){AdditiveName = this.additiveresponse.AdditiveName}}`

Is this according to your suggestion, and best practice?
