# Unikura Market

This Contract is for managing tokenization orders from users of the collection.

## Methods

### cancel

```solidity
function cancel(uint256 tokenId) external override
```

* Only a sender of the specific order can call.
* When a sender calls this method, this contract refund the amount paid by sender.
* This method is used when there are duplicate orders with the same tokenId. It can be called after the regular order is complete.

### complete

```solidity
function complete(uint256 tokenId, address account, address salesAddress) external override onlyAdmin
```

* Only admins can call.
* When admins call this method, this contract call mint method in Unikura Collectibles.

### order

```solidity
function order(uint256 tokenId, uint256 mintPrice) external payable override
```

### reject

```solidity
function reject(uint256 tokenId, address account) external override onlyAdmin
```

* Only admins can call.
* When admins call this method, this contract refund the amount paid by sender.

### setAdmin

```solidity
function setAdmin(address account, bool status) external override onlyOwner
```

* Only the contract owner can call.

### setCollection

```solidity
function setCollection(address token) external override onlyOwner
```

* Only the contract owner can call.

### setFeePercentage

```solidity
function setFeePercentage(uint256 percent) external override onlyOwner
```

* Only the contract owner can call.
* When the contract owner call this method, the service fee in Unikura will be changed.

### setFeeRecipient

```solidity
function setFeeRecipient(address account) external override onlyOwner
```

* Only the contract owner can call.


---

# 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.unikura.xyz/technology/smart-contract-reference/unikura-market.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.
