> For the complete documentation index, see [llms.txt](https://docs.driffle.com/driffle-seller-api-legacy/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.driffle.com/driffle-seller-api-legacy/reference/api-reference/offers-auction/bulk-update-offers.md).

# Bulk Update Offers

The following API allow you to update multiple offers/auctions at once on Driffle. &#x20;

> Maximum of 100 offers can be updated in a single API call.

{% hint style="warning" %}
Rate Limiting applies to this API endpoint and is set to 1 request per 5 seconds.
{% endhint %}

<mark style="color:green;">`PATCH`</mark> `/offer/bulk-update`

**Headers**

| Name          | Value              |
| ------------- | ------------------ |
| Content-Type  | `application/json` |
| Authorization | `Bearer <token>`   |

**Body**

```json
{
  "offers": [
    {
      "offerId": 0,
      "yourPrice": 0,
      "retailPrice": 0,
      "toggleOffer": "disable",
      "declaredStock": 100000,
      "auctionedKeys": 100,
      "wholesale": {
        "enabled": true,
        "tiers": [
            {
                "level": 1,
                "discount": 10
            },
            {
                "level": 2,
                "discount": 15
            }
          ]
       }
    }
  ]
}
```

<table data-full-width="false"><thead><tr><th>Param</th><th>Description</th><th>Param Type</th><th>Type</th><th>Required</th></tr></thead><tbody><tr><td>offerId</td><td>ID of the Offer</td><td>body</td><td>number</td><td>Yes</td></tr><tr><td>yourPrice</td><td>"You get" price. commission will be applied to this price.</td><td>body</td><td>number</td><td>No</td></tr><tr><td>retailPrice</td><td>"Retail Price" is the price after commission. Buyers will see this price</td><td>body</td><td>number</td><td>No</td></tr><tr><td>toggleOffer</td><td>"enable" or "disable" offer</td><td>body</td><td>string</td><td>No</td></tr><tr><td>declaredStock</td><td>Number of keys to sell through declared stock feature -  optional </td><td>body</td><td>number</td><td>No</td></tr><tr><td>auctionedKeys</td><td>Maximum number of orders you can accept for a product - optional (Only in preReleased products)</td><td>body</td><td>number</td><td>No</td></tr><tr><td>wholesale</td><td>Specifies wholesale enable status and tier-based discounts by purchase quantity.<br><a data-mention href="/driffle-seller-api-legacy/reference/wholesale-pricing-feature.md">Wholesale Pricing Feature</a></td><td>body</td><td>{"enabled":true,"tiers":[{"level":1,"discount":10},{"level":2,"discount":15}]}</td><td>No</td></tr></tbody></table>

**Response**

{% tabs %}
{% tab title="200" %}

```json
{
  "message": "string",
  "statusCode": 200,
  "data": {
    "successOffers": [
      {
        "offerId": 0,
        "status": true,
        "message": "string",
        "data": "string"
      }
    ],
    "failedOffers": [
      {
        "offerId": 0,
        "status": true,
        "message": "string",
        "data": "string"
      }
    ]
  }
}
```

{% endtab %}

{% tab title="400" %}

```json
{
    "message": "Bad Request. Wrong/Invalid params format.",
    "statusCode": 400 
}
```

{% endtab %}

{% tab title="401" %}

```
{
    "message": "UnAuthorized request. Invalid/Expired token",
    "statusCode": 401
}
```

{% endtab %}

{% tab title="403" %}

```
{
    "message": "Forbidden Request. Action not allowed or Rate Limit exhausted.", 
    "statusCode": 403
}
```

{% endtab %}

{% tab title="500" %}

```
{
    "message": "Internal Server Error",
    "statusCode": 500
}
```

{% endtab %}
{% endtabs %}
