# set\_baker

An entrypoint that setups a new baker for whom all TEZ tokens on the contract will be delegated after setup. Also admin can remove a baker. For this he need to pass `None` as the call parameter.

### Call parameters

| Field | Type              | Description            |
| ----- | ----------------- | ---------------------- |
| baker | option(key\_hash) | A baker for delegation |

### Usage

{% tabs %}
{% tab title="🌮 Taquito" %}

```javascript
const auctionAddress = "KT1...";
const baker = "tz1..."; // or null, or undefined to remove a baker
const auction = await tezos.contract.at(auctionAddress);
const operation = await auction.methods.set_baker(baker).send();

await operation.confirmation();
```

{% endtab %}
{% endtabs %}

### Errors

* `400` - `sender` of the transaction is not current administrator.
* `412` - non payable entrypoint (can't accept TEZ tokens during call of an entrypoint).
* operation also fails when the `option(key_hash)` parameter is not a registered delegate (standard Tezos error).


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.quipuswap.com/smart-contracts/dex-2.0/auction-contract/entrypoints-overview/admin-entrypoints/set_baker.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
