Game concepts
Tasks

Tasks

Tasks assign you random objectives (such as killing monsters, collecting resources, bringing back items) and when you complete tasks, you get some gold and a currency: tasks coins. Tasks coins can be exchanged at all Tasks Masters. For 6 coins, you can get a random reward. Rewards include exclusive resources you can't get any other way.

You can check your objective and its progress directly on your character by using this request (opens in a new tab).

Tasks

You can use this GET request to view the list of all existing tasks.

cURL
curl --location --request GET 'https://api.artifactsmmo.com/tasks/all' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json'
Javascript
var myHeaders = new Headers();
myHeaders.append("Accept", "application/json");
myHeaders.append("Content-Type", "application/json");
 
var requestOptions = {
   method: 'GET',
   headers: myHeaders,
   redirect: 'follow'
}; 
 
fetch("https://api.artifactsmmo.com/tasks/all", requestOptions)
   .then(response => response.text())
   .then(result => console.log(result))
   .catch(error => console.log('error', error));

View the API Reference (opens in a new tab)

Rewards

You can use this GET request to see the list of all the rewards you can get when you exchange 6 coins at a Tasks Master.

cURL
curl --location --request GET 'https://api.artifactsmmo.com/tasks/rewards' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json'
Javascript
var myHeaders = new Headers();
myHeaders.append("Accept", "application/json");
myHeaders.append("Content-Type", "application/json");
 
var requestOptions = {
   method: 'GET',
   headers: myHeaders,
   redirect: 'follow'
}; 
 
fetch("https://api.artifactsmmo.com/tasks/rewards", requestOptions)
   .then(response => response.text())
   .then(result => console.log(result))
   .catch(error => console.log('error', error));

View the API Reference (opens in a new tab)

Actions

To get a new task or to complete it, you need to be on a map with a tasks master.

You can use this POST request to accept a new task.

cURL
curl --request POST \
  --url https://api.artifactsmmo.com/my/{name}/action/task/new \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer INSERT_YOUR_TOKEN_HERE' \
  --header 'Content-Type: application/json' \
Javascript
const url = 'https://api.artifactsmmo.com/my/{name}/action/task/new';
const options = {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    Accept: 'application/json',
    Authorization: 'Bearer INSERT_YOUR_TOKEN_HERE'
  }
}; 
 
try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}

View the API Reference (opens in a new tab)

You can use this POST request to complete a task

cURL
curl --request POST \
  --url https://api.artifactsmmo.com/my/{name}/action/task/complete \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer INSERT_YOUR_TOKEN_HERE' \
  --header 'Content-Type: application/json' \
Javascript
const url = 'https://api.artifactsmmo.com/my/{name}/action/task/complete';
const options = {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    Accept: 'application/json',
    Authorization: 'Bearer INSERT_YOUR_TOKEN_HERE'
  }
};
 
try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}

View the API Reference (opens in a new tab)

You can use this POST request to exchange 6 coins tasks for a random reward.

cURL
curl --request POST \
  --url https://api.artifactsmmo.com/my/{name}/action/task/exchange \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer INSERT_YOUR_TOKEN_HERE' \
  --header 'Content-Type: application/json' \
Javascript
const url = 'https://api.artifactsmmo.com/my/{name}/action/task/exchange';
const options = {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    Accept: 'application/json',
    Authorization: 'Bearer INSERT_YOUR_TOKEN_HERE'
  }
};
 
try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}

View the API Reference (opens in a new tab)

You can use this POST request to trade items at a Task Master (Items).

cURL
curl --location -g --request POST 'https://api.artifactsmmo.com/my/{name}/action/tasks/trade' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer INSERT_YOUR_TOKEN_HERE' \
--data-raw '{
  "item": "name",
  "quantity":0
}' 
Javascript
var myHeaders = new Headers();
myHeaders.append("Accept", "application/json");
myHeaders.append("Content-Type", "application/json");
myHeaders.append("Authorization", "Bearer INSERT_YOUR_TOKEN_HERE");
 
var raw = JSON.stringify({
  "item": "name",
  "quantity":0
});
 
var requestOptions = {
   method: 'POST',
   headers: myHeaders,
   body: raw,
   redirect: 'follow'
};
 
fetch("https://api.artifactsmmo.com/my/{name}/action/tasks/trade", requestOptions)
   .then(response => response.text())
   .then(result => console.log(result))
   .catch(error => console.log('error', error));
 
[View the API Reference](https://api.artifactsmmo.com/docs/#/operations/action_task_trade_my__name__action_task_trade_post)
 
 
You can use this POST request to cancel a task at the cost of a task coin.
 
```http filename="cURL" copy
curl --request POST \
  --url https://api.artifactsmmo.com/my/{name}/action/task/cancel \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer INSERT_YOUR_TOKEN_HERE' \
  --header 'Content-Type: application/json' \
Javascript
const url = 'https://api.artifactsmmo.com/my/{name}/action/task/cancel';
const options = {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    Accept: 'application/json',
    Authorization: 'Bearer INSERT_YOUR_TOKEN_HERE'
  }
};
 
try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}

View the API Reference (opens in a new tab)