API documentation

Overview

With our API you can create kuests programatically

The base endpoint for all requests is: https://kuest.com/api/

The following header must be present on all requests:

  • Authorization: Bearer token

The following header must be added on all POST or PATCH requests:

  • Content-Type: application/json; charset=utf-8

Authentication

All requests to our API must be made with a bearer token authorization header. To create your API token, go to https://kuest.com/settings/security/api-tokens.

The API token will only be shown once, so make sure you copy it


Balance

Make an authenticated GET request to the endpoint:

https://kuest.com/api/balance

Request example:

curl "https://kuest.com/api/balance" \
     -H 'Authorization: Bearer ibBWpAL6vJW5ZBDshDRwoDqMluf7PwTc2b5mEvkO'

Response example (HTTP status 200):

{
  "data": {
    "nickname": "mynickname",
    "balance": {
      "currency": "USD",
      "as_worker": "0.10000000",
      "as_creator": "9975.16000000",
      "total": "9,975.26000000"
    }
  }
}

Possible HTTP statuses:

  • Successful: 200
  • Unauthenticated: 401
  • Forbidden: 403
  • Too many requests: 429
  • Internal error: 500

Templates

Get template by id

Templates are a quick way to fill your kuest details. You can use one of our predefined templates and just provide parameters like workes_needed and workers_earn, or you can customize your entire kuest using a custom template.

Make an authenticated GET request to the endpoint:

https://kuest.com/api/templates/{id}

Where {id} is the id of the template that you want to see details

Request example:

curl "https://kuest.com/api/templates/83" \
     -H 'Authorization: Bearer ibBWpAL6vJW5ZBDshDRwoDqMluf7PwTc2b5mEvkO'

Response example (HTTP status 200):

{
      "id": 83,
      "is_active": true,
      "title": {
        "br": "Backlink no Rodapé",
        "en": "Backlink in Footer"
      },
      "description": {
        "br": "Solicitar inclusão de backlink no rodapé de sites",
        "en": "Request backlink in website footer"
      },
      "min_workers_needed": 20,
      "min_workers_earn": "1.00",
      "steps": [
        {
          "title": {
            "br": "É preciso que você tenha um site ou blog",
            "en": "You must have a website or blog"
          },
          "parameter_placeholder": [],
          "parameter_is_hidden": false,
          "requires_parameter_from_creator": false
        },
        {
          "title": {
            "br": "Crie um link no rodapé do seu site com a palavra-chave",
            "en": "Create a link on your site's footer with the keyword"
          },
          "parameter_placeholder": {
            "br": "Digite aqui a palavra chave",
            "en": "Enter the keyword here"
          },
          "parameter_is_hidden": true,
          "requires_parameter_from_creator": true
        },
        {
          "title": {
            "br": "Apontando para o site:",
            "en": "Linking to the website:"
          },
          "parameter_placeholder": {
            "br": "Digite o link do site aqui",
            "en": "Enter the site URL here"
          },
          "parameter_is_hidden": true,
          "requires_parameter_from_creator": true
        }
      ],
      "proofs": [
        {
          "title": {
            "br": "Qual o link do seu site em que você adicionou o backlink?",
            "en": "What is the link on your site where you added the backlink?"
          },
          "requires_parameter_from_creator": false,
          "type": {
            "id": "Text",
            "title": "Text"
          }
        }
      ],
      "category": {
        "id": 51,
        "title": {
          "br": "Backlink",
          "en": "Backlink"
        },
        "path": "Advertising & SEO \/ Backlink",
        "friendly_title": {
          "br": "Backlink",
          "en": "Backlink"
        }
      }
    }

Possible HTTP statuses:

  • Successful: 200
  • Unauthenticated: 401
  • Forbidden: 403
  • Not found: 404
  • Too many requests: 429
  • Internal error: 500

Get template list

Make an authenticated GET request to the endpoint:

https://kuest.com/api/templates

Request example:

curl "https://kuest.com/api/templates" \
     -H 'Authorization: Bearer ibBWpAL6vJW5ZBDshDRwoDqMluf7PwTc2b5mEvkO'

Response example (HTTP status 200):

{
  "data": [
    {
      "id": 75,
      "is_active": true,
      "title": {
        "br": "Outras",
        "en": "Others"
      },
      "description": {
        "br": "Tarefas customizadas que não se encaixam nas outras categorias",
        "en": "Customized tasks that do not fit into the other categories"
      },
      "min_workers_needed": 20,
      "min_workers_earn": "0.10",
      "steps": [],
      "proofs": [],
      "category": {
        "id": 51,
        "title": {
          "br": "Backlink",
          "en": "Backlink"
        },
        "path": "Advertising & SEO \/ Backlink",
        "friendly_title": {
          "br": "Backlink",
          "en": "Backlink"
        }
      }
    },
    {
      "id": 83,
      "is_active": true,
      "title": {
        "br": "Backlink no Rodapé",
        "en": "Backlink in Footer"
      },
      "description": {
        "br": "Solicitar inclusão de backlink no rodapé de sites",
        "en": "Request backlink in website footer"
      },
      "min_workers_needed": 20,
      "min_workers_earn": "1.00",
      "steps": [
        {
          "title": {
            "br": "\u00c9 preciso que você tenha um site ou blog",
            "en": "You must have a website or blog"
          },
          "parameter_placeholder": [],
          "parameter_is_hidden": false,
          "requires_parameter_from_creator": false
        },
        {
          "title": {
            "br": "Crie um link no rodapé do seu site com a palavra-chave",
            "en": "Create a link on your site's footer with the keyword"
          },
          "parameter_placeholder": {
            "br": "Digite aqui a palavra chave",
            "en": "Enter the keyword here"
          },
          "parameter_is_hidden": true,
          "requires_parameter_from_creator": true
        },
        {
          "title": {
            "br": "Apontando para o site:",
            "en": "Linking to the website:"
          },
          "parameter_placeholder": {
            "br": "Digite o link do site aqui",
            "en": "Enter the site URL here"
          },
          "parameter_is_hidden": true,
          "requires_parameter_from_creator": true
        }
      ],
      "proofs": [
        {
          "title": {
            "br": "Qual o link do seu site em que você adicionou o backlink?",
            "en": "What is the link on your site where you added the backlink?"
          },
          "requires_parameter_from_creator": false,
          "type": {
            "id": "Text",
            "title": "Text"
          }
        }
      ],
      "category": {
        "id": 51,
        "title": {
          "br": "Backlink",
          "en": "Backlink"
        },
        "path": "Advertising & SEO \/ Backlink",
        "friendly_title": {
          "br": "Backlink",
          "en": "Backlink"
        }
      }
    },
    //...
  ],
  "links": {
    "first": "https:\/\/kuest.com\/api\/templates?page=1",
    "last": "https:\/\/kuest.com\/api\/templates?page=4",
    "prev": null,
    "next": "https:\/\/kuest.com\/api\/templates?page=2"
  },
  "meta": {
    "current_page": 1,
    "from": 1,
    "last_page": 4,
    "path": "https:\/\/kuest.com\/api\/templates",
    "per_page": 15,
    "to": 15,
    "total": 54
  }
}

Possible HTTP statuses:

  • Successful: 200
  • Unauthenticated: 401
  • Forbidden: 403
  • Too many requests: 429
  • Internal error: 500

Active templates

IDSelect
1
Others
Researches
2
Others
Researches / Others
3
Others
Opinions (polls)
4
Others
Opinions (polls) / Others
5
Others
Advertising & SEO
6
Others
Advertising & SEO / Others
7
Others
Competition
8
Others
Competition / Others
9
Others
Form & Register
11
Others
Rating & Vote
12
Others
Rating & Vote / Others
13
Others
Social Media
14
Others
Social Media / Others
15
Others
Social Media / Instagram
16
Others
Social Media / Instagram / Others
17
Others
Social Media / Instagram / Like
21
Others
Social Media / Instagram / Follow
33
Others
Social Media / Instagram / Save
34
Vitae dolore unde esse doloremque quos.
Social Media / Instagram / Save
35
Voluptatum deserunt necessitatibus voluptas et.
Social Media / Instagram / Save
36
Architecto sint eveniet non est dolorem eum.
Social Media / Instagram / Save
37
Others
Social Media / Instagram / View
41
Others
Social Media / Instagram / Comment
42
Ex dignissimos hic earum quos odio ut delectus.
Social Media / Instagram / Comment
43
Deserunt atque qui distinctio quibusdam officiis ut nam quia.
Social Media / Instagram / Comment
44
Nobis qui et reprehenderit hic dolor sint.
Social Media / Instagram / Comment
45
Others
Social Media / Instagram / Share
49
Others
Social Media / Facebook
50
Others
Social Media / Facebook / Others
51
Others
Social Media / TikTok
52
Others
Social Media / TikTok / Others
53
Others
Try out
54
Others
Try out / Others
55
Others
Social Media / Twitter
56
Others
Social Media / Twitter / Like
57
Others
Social Media / Twitter / Follow
58
Others
Social Media / Twitter / Retweet
59
Others
Social Media / Twitter / Others
60
Others
Social Media / Youtube
61
Others
Social Media / Youtube / View
62
Others
Social Media / Youtube / Like
63
Others
Social Media / Facebook / Post Like
64
Others
Social Media / Facebook / Fanpage like
65
Others
Social Media / Youtube / Others
66
Others
Social Media / Youtube / Comment
67
Others
Social Media / Facebook / Follow Profile
70
Others
Researches / Search on Google
71
Others
Researches / Search on Yahoo
72
Others
Form & Register / Fill Typeform
73
Others
Form & Register / Fill Google Form
74
Others
Advertising & SEO / Blog Article
75
Others
Advertising & SEO / Backlink
78
Others
Rating & Vote / Rate Text
79
Others
Rating & Vote / Online vote
80
Others
Try out / Try App
81
Others
Try out / Try Website
82
Others
Social Media / Instagram / Use Filter
83
Backlink in Footer
Advertising & SEO / Backlink
84
Like latest Twitter post
Social Media / Twitter / Like
90
Search user and follow
Social Media / Twitter / Follow
100
Search, visit and engage
Researches / Search on Google
105
Search in the Yahoo website and access
Researches / Search on Yahoo
106
Others
Social Media / Youtube / Subscribe
107
Others
Form & Register / Register in Website
108
Register in site
Form & Register / Register in Website
109
Like latest Instagram post
Social Media / Instagram / Like
110
Search user and follow
Social Media / Instagram / Follow
111
Search user and follow
Social Media / TikTok / Follow
112
Others
Social Media / TikTok / Follow
119
Open channel url and subscribe
Social Media / Youtube / Subscribe
120
Others
Social Media / Instagram / Post
122
Others
Social Media / Facebook / View Video
124
Others
Social Media / TikTok / Like
125
Like last TikTok post
Social Media / TikTok / Like
127
Others
Social Media / TikTok / View
132
Others
Social Media / TikTok / Share
137
Others
Social Media / Twitter / View
138
Sed possimus hic veritatis esse dolores est ea.
Social Media / Twitter / View
139
Est deserunt quaerat est quo explicabo nemo.
Social Media / Twitter / View
140
Aliquid vel magnam fugiat velit possimus deleniti nihil.
Social Media / Twitter / View
142
Others
Social Media / Twitter / Comment
143
Ex dignissimos hic earum quos odio ut delectus.
Social Media / Twitter / Comment
144
Deserunt atque qui distinctio quibusdam officiis ut nam quia.
Social Media / Twitter / Comment
145
Nobis qui et reprehenderit hic dolor sint.
Social Media / Twitter / Comment
147
Others
Social Media / Facebook / Comment
148
Ex dignissimos hic earum quos odio ut delectus.
Social Media / Facebook / Comment
149
Deserunt atque qui distinctio quibusdam officiis ut nam quia.
Social Media / Facebook / Comment
150
Nobis qui et reprehenderit hic dolor sint.
Social Media / Facebook / Comment
152
Others
Social Media / TikTok / Comment
153
Ex dignissimos hic earum quos odio ut delectus.
Social Media / TikTok / Comment
154
Deserunt atque qui distinctio quibusdam officiis ut nam quia.
Social Media / TikTok / Comment
155
Nobis qui et reprehenderit hic dolor sint.
Social Media / TikTok / Comment
157
Others
Social Media / TikTok / Use Filter
159
Others
Try out / Try Software
160
Others
Others
161
Others
Forums & Chats
162
Others
Data Extraction
163
Others
Forums & Chats / Reddit
165
Others
Forums & Chats / Discord
167
Others
Forums & Chats / Telegram
169
Others
Forums & Chats / Whatsapp
171
Others
Data Extraction / Social Media Data
173
Others
Rating & Vote / Review Image Art
174
Others
Others / Others
175
Others
Form & Register / Others
176
Others
Forums & Chats / Others
177
Others
Data Extraction / Others
178
Article with Link
Advertising & SEO / Blog Article
179
Like from url
Social Media / Instagram / Like
180
Open link and follow
Social Media / Instagram / Follow
181
See video from url
Social Media / Instagram / View
182
Open link and follow
Social Media / TikTok / Follow
183
Like from url
Social Media / TikTok / Like
184
See video from url
Social Media / TikTok / View
185
Share from url
Social Media / TikTok / Share
186
Like page from url
Social Media / Facebook / Fanpage like
187
Follow from url
Social Media / Facebook / Follow Profile
188
Like post from url
Social Media / Facebook / Post Like
189
Watch video from url
Social Media / Facebook / View Video
190
Follow from url
Social Media / Twitter / Follow
191
Like from url
Social Media / Twitter / Like
192
Retweet from url
Social Media / Twitter / Retweet
193
Like from url
Social Media / Youtube / Like
194
Watch video from url
Social Media / Youtube / View
196
Others
Form & Register / Register in App
197
Register in app
Form & Register / Register in App

Owner kuests

Create kuest

Make an authenticated POST request to the endpoint:

https://kuest.com/api/owner/tasks

You can create a kuest with a predefined template or with a custom template.

When you create a kuest using one of our predefined templates, you only need to send kuest details and fill the steps.proofs parameters if they have one. All kuests created using one of our predefined templates and without the "notes" parameter don't need to be analysed by our team, so they will be published at the same time they are created.

When you create a kuest with custom template, you must send all details, steps and proofs that you need for that task. These kuests will be analysed by our team.

Create kuest with predefined template

The available parameters are:

  • kuest_category_template_id integer, required
  • workers_needed integer, required, min: defined by choosen template, max: 1000000
  • workers_earn float, optional, min: defined by choosen template (min will be choosed if omitted), max: 9999.99
  • days_to_rate integer, optional, min: 1, max: 7, default: 7
  • pause_after_approval boolean, optional, default: false
  • title object, optional. When not present, the title will be copied from the friendy_title field of the category of the template. When present, The title object must contain at least one of the following keys
    • en
    • br

    You can send both languages or choose one and we will generate the other automatically

    Example of a valid title parameter:

    {
      "title": {
        "en": "Navigate for at least five minutes on my website"
      }
    }
  • steps array, optional. See the template list if any of your choosen template steps has the "requires_parameter_from_creator = true".

    If it has, you must send the steps parameter in this format: ['@myusername']

    If more than one step requires parameter from creator, just append it to the array: ['@myusername', 'second parameter']

  • proofs array, optional. See the template list if any of your choosen template proofs has the "requires_parameter_from_creator = true" parameter. Proofs of type "Validated text" and "Validated number" always will has this parameter, because this parameter will be the correct answer of autovalidated proofs.

    Example when one proof of the template has the "requires_parameter_from_creator = true" ['@myusername']

    Example when more than one proof of the template has the "requires_parameter_from_creator = true": ['@myusername', '727']

Request example:


curl -X "POST" "https://kuest.com/api/owner/tasks" \
     -H 'Authorization: Bearer ibBWpAL6vJW5ZBDshDRwoDqMluf7PwTc2b5mEvkO' \
     -H 'Content-Type: application/json; charset=utf-8' \
     -d $'{
  "workers_needed": "20",
  "kuest_category_template_id": 83,
  "workers_earn": "1.00",
  "steps": [
    "keyword", "myblog"
  ]
}'

Response example (HTTP status 200):

{
  "data": {
    "id": "37892062816763904",
    "title": {
      "br": "Backlink",
      "en": "Backlink"
    },
    "slug": {
      "br": "backlink",
      "en": "backlink"
    },
    "notes": [],
    "template": {
      "id": 83,
      "title": {
        "br": "Backlink no Rodapé",
        "en": "Backlink in Footer"
      },
      "description": {
        "br": "Solicitar inclus\u00e3o de backlink no rodapé de sites",
        "en": "Request backlink in website footer"
      },
      "category": {
        "id": 51,
        "title": {
          "br": "Backlink",
          "en": "Backlink"
        },
        "path": "Advertising & SEO \/ Backlink",
        "friendly_title": {
          "br": "Backlink",
          "en": "Backlink"
        }
      }
    },
    "workers_needed": 20,
    "workers_earn": "1.00",
    "works_done": 0,
    "progress": "0\/20",
    "progress_percentage": 0,
    "days_to_rate": 7,
    "pause_after_approval": false,
    "workers_not_rated_count": 0,
    "has_reserved_slots": false,
    "created_at": "2022-04-15T13:29:31.776690Z",
    "speed": "Normal",
    "status": "Active",
    "steps": [
      {
        "id": "37892062867095552",
        "title": {
          "br": "É preciso que você tenha um site ou blog",
          "en": "You must have a website or blog"
        },
        "parameter": null
      },
      {
        "id": "37892062900649984",
        "title": {
          "br": "Crie um link no rodapé do seu site com a palavra-chave",
          "en": "Create a link on your site's footer with the keyword"
        },
        "parameter": "example.com"
      },
      {
        "id": "37892062921621504",
        "title": {
          "br": "Apontando para o site:",
          "en": "Linking to the website:"
        },
        "parameter": "example.com"
      }
    ],
    "proofs": [
      {
        "id": "37892063332663296",
        "title": {
          "br": "Qual o link do seu site em que você adicionou o backlink?",
          "en": "What is the link on your site where you added the backlink?"
        },
        "type": "Text"
      }
    ],
    "contracts": []
  }
}

Create kuest with custom template

The available parameters are:

  • kuest_category_template_id integer, required
  • days_to_rate integer, optional, min: 1, max: 7, default: 7
  • pause_after_approval boolean, optional, default: false
  • workers_needed integer, required, min: defined by choosen template, max: 1000000
  • workers_earn float, required, min: defined by choosen template, max: 9999.99
  • title object, required. The title object must contain at least one of the following keys:
    • en
    • br

    You can send both languages or choose one and we will generate the other automatically

    Example of a valid title parameter:

    {
      "title": {
        "en": "Navigate for at least five minutes on my website"
      }
    }
  • notes object, optional.

    The "notes" parameter is optional, but if you send it, it must contain at least one of the following keys:

    • en
    • br

    You can send both languages or choose one and we will generate the other automatically

    Example of a valid notes parameter:

    {
      "notes": {
        "en": "Please stay at least one minute per page."
      }
    }

    Attention

    If you send the "title" parameter with english language, the "notes" parameter will only be accepted with english language too. Otherwise, the "notes" parameter will be ignored.

  • steps array, required.

    Each step must contain an object with the follow parameters:

    • title object, required. The title parameter must contain at least one of the following keys:
      • en (must be present if you are sending title with english language)
      • br (must be present if you are sending title with portuguese language)
    • is_hidden boolean, required.

    Example of a valid steps parameter:

    {
      "steps": [
        {
          "title": {
            "en": "Go to google and search for..."
          },
          "is_hidden": false
        },
        {
          "title": {
            "en": "Click on the first AD link"
          },
          "is_hidden": false
        }
      ]
    }
  • proofs array, required.

    Each proof must contain an object with the follow parameters:

    • title object, required. The title parameter must contain at least one of the following keys:
      • en (must be present if you are sending title with english language)
      • br (must be present if you are sending title with portuguese language)
    • type string, required.
    • correct_answer string, required only if type is ValidatedText or ValidatedNumber or ValidatedMultipleOptions (auto validated text or auto validated number).

    Example of a valid proofs parameter:

    {
      "proofs": [
        {
          "title": {
            "en": "What is the text of first paid promotion (google ad)?"
          },
          "type": "ValidatedText",
          "correct_answer": "The text of the first paid promotion"
        }
      ]
    }

Request example:


curl -X "POST" "https://kuest.com/api/owner/tasks" \
     -H 'Authorization: Bearer ibBWpAL6vJW5ZBDshDRwoDqMluf7PwTc2b5mEvkO' \
     -H 'Content-Type: application/json; charset=utf-8' \
     -d $'{
  "kuest_category_template_id": 2,
  "workers_needed": "20",
  "workers_earn": "1.00",
  "title": {
    "en": "Navigate for at least five minutes on my website"
  },
  "notes": {
    "en": "Please stay at least one minute per page."
  }
  "steps": [
    {
      "title": {
        "en": "Go to google and search for..."
      },
      "is_hidden": false
    },
    {
      "title": {
        "en": "Click on the first AD link"
      },
      "is_hidden": false
    }
  ],
  "proofs": [
    {
      "title": {
        "en": "What is the text of first paid promotion (google ad)?"
      },
      "type": "ValidatedText",
      "correct_answer": "The text of the first paid promotion"
    }
  ]
}'

Response example (HTTP status 200):

{
  "data": {
    "id": "37892062816763904",
    "title": {
      "br": "Backlink",
      "en": "Backlink"
    },
    "slug": {
      "br": "backlink",
      "en": "backlink"
    },
    "notes": [],
    "template": {
      "id": 83,
      "title": {
        "br": "Backlink no Rodapé",
        "en": "Backlink in Footer"
      },
      "description": {
        "br": "Solicitar inclus\u00e3o de backlink no rodapé de sites",
        "en": "Request backlink in website footer"
      },
      "category": {
        "id": 51,
        "title": {
          "br": "Backlink",
          "en": "Backlink"
        },
        "path": "Advertising & SEO \/ Backlink",
        "friendly_title": {
          "br": "Backlink",
          "en": "Backlink"
        }
      }
    },
    "workers_needed": 20,
    "workers_earn": "1.00",
    "works_done": 0,
    "progress": "0\/20",
    "progress_percentage": 0,
    "days_to_rate": 7,
    "pause_after_approval": false,
    "workers_not_rated_count": 0,
    "has_reserved_slots": false,
    "created_at": "2022-04-15T13:29:31.776690Z",
    "speed": "Normal",
    "status": "Active",
    "steps": [
      {
        "id": "37892062867095552",
        "title": {
          "br": "É preciso que você tenha um site ou blog",
          "en": "You must have a website or blog"
        },
        "parameter": null
      },
      {
        "id": "37892062900649984",
        "title": {
          "br": "Crie um link no rodapé do seu site com a palavra-chave",
          "en": "Create a link on your site's footer with the keyword"
        },
        "parameter": "example.com"
      },
      {
        "id": "37892062921621504",
        "title": {
          "br": "Apontando para o site:",
          "en": "Linking to the website:"
        },
        "parameter": "example.com"
      }
    ],
    "proofs": [
      {
        "id": "37892063332663296",
        "title": {
          "br": "Qual o link do seu site em que você adicionou o backlink?",
          "en": "What is the link on your site where you added the backlink?"
        },
        "type": "Text"
      }
    ],
    "contracts": []
  }
}

Possible HTTP statuses:

  • Created: 201
  • Unauthenticated: 401
  • Forbidden: 403
  • Unprocessable Entity: 422
  • Too many requests: 429
  • Internal error: 500

Upgrade kuest

Make an authenticated PATCH request to the endpoint:

https://kuest.com/api/owner/tasks/{id}

Where {id} is the id of your kuest that you want to upgrade.

The available parameters to upgrade are:

  • workers_needed integer, can only be increased
  • workers_earn string or float, can only be increased
  • days_to_rate integer, min: 1, max: 7
  • speed string, Normal OR Slow OR Fast

All parameters are optional, except if you're upgrading a kuest with status "Finished". In this case, you'll need to increase the number of workers_needed to reactivate the kuest.

Request example:

curl -X "PATCH" "https://kuest.com/api/owner/tasks/37892062816763904" \
     -H 'Authorization: Bearer ibBWpAL6vJW5ZBDshDRwoDqMluf7PwTc2b5mEvkO' \
     -H 'Content-Type: application/json; charset=utf-8' \
     -d $'{
  "days_to_rate": "2",
  "workers_needed": "30",
  "workers_earn": "1.50"
}'

Response example (HTTP status 200):

{
  "data": {
    "id": "37892062816763904",
    "title": {
      "br": "Backlink",
      "en": "Backlink"
    },
    "slug": {
      "br": "backlink",
      "en": "backlink"
    },
    "notes": [],
    "template": {
      "id": 83,
      "title": {
        "br": "Backlink no Rodapé",
        "en": "Backlink in Footer"
      },
      "description": {
        "br": "Solicitar inclus\u00e3o de backlink no rodapé de sites",
        "en": "Request backlink in website footer"
      },
      "category": {
        "id": 51,
        "title": {
          "br": "Backlink",
          "en": "Backlink"
        },
        "path": "Advertising & SEO \/ Backlink",
        "friendly_title": {
          "br": "Backlink",
          "en": "Backlink"
        }
      }
    },
    "workers_needed": 20,
    "workers_earn": "1.00",
    "works_done": 0,
    "progress": "0\/20",
    "progress_percentage": 0,
    "days_to_rate": 7,
    "pause_after_approval": false,
    "workers_not_rated_count": 0,
    "has_reserved_slots": false,
    "created_at": "2022-04-15T13:29:31.776690Z",
    "speed": "Normal",
    "status": "Active",
    "steps": [
      {
        "id": "37892062867095552",
        "title": {
          "br": "É preciso que você tenha um site ou blog",
          "en": "You must have a website or blog"
        },
        "parameter": null
      },
      {
        "id": "37892062900649984",
        "title": {
          "br": "Crie um link no rodapé do seu site com a palavra-chave",
          "en": "Create a link on your site's footer with the keyword"
        },
        "parameter": "example.com"
      },
      {
        "id": "37892062921621504",
        "title": {
          "br": "Apontando para o site:",
          "en": "Linking to the website:"
        },
        "parameter": "example.com"
      }
    ],
    "proofs": [
      {
        "id": "37892063332663296",
        "title": {
          "br": "Qual o link do seu site em que você adicionou o backlink?",
          "en": "What is the link on your site where you added the backlink?"
        },
        "type": "Text"
      }
    ],
    "contracts": []
  }
}

If you don't send any parameters you'll receive the following response with HTTP status 422:

{
  "message": "The given data was invalid.",
  "errors": {
    "message": [
      "No data provided."
    ]
  }
}

If you send invalid parameters you'll receive a detailed response with HTTP status 422:

{
  "message": "The given data was invalid.",
  "errors": {
    "workers_needed": [
      "The workers needed must be at least 31."
    ],
    "workers_earn": [
      "The workers earn must be at least 1.50."
    ]
  }
}

If you don't have enough balance you'll receive the following response with HTTP status 422:

{
  "message": "The given data was invalid.",
  "errors": {
    "message": [
      "You don't have USD 4.7450 to upgrade this kuest. Make a deposit and try again."
    ]
  }
}

Possible HTTP statuses:

  • Successful: 200
  • Unauthenticated: 401
  • Forbidden: 403
  • Unprocessable Entity: 422
  • Too many requests: 429
  • Internal error: 500

Get kuest list

Make an authenticated GET request to the endpoint:

https://kuest.com/api/owner/tasks

Request example:

curl "https://kuest.com/api/owner/tasks" \
-H 'Authorization: Bearer ibBWpAL6vJW5ZBDshDRwoDqMluf7PwTc2b5mEvkO'

Response example (HTTP status 200):

{
    "data": [
    {
      "id": "37892062816763904",
      "title": {
        "br": "Backlink",
        "en": "Backlink"
      },
      "slug": {
        "br": "backlink",
        "en": "backlink"
      },
      "workers_needed": 20,
      "workers_earn": "1.00",
      "works_done": 0,
      "progress": "0\/20",
      "progress_percentage": 0,
      "workers_not_rated_count": 0,
      "status": "Active"
    },
    //...
  ],
  "links": {
    "first": "https:\/\/kuest\.com\/api\/owner\/tasks?page=1",
    "last": "https:\/\/kuest\.com\/api\/owner\/tasks?page=3",
    "prev": null,
    "next": "https:\/\/kuest\.com\/api\/owner\/tasks?page=2"
  },
  "meta": {
    "current_page": 1,
    "from": 1,
    "last_page": 3,
    "path": "https:\/\/kuest\.com\/api\/owner\/tasks",
    "per_page": 15,
    "to": 15,
    "total": 37
  }
}

Possible HTTP statuses:

  • Successful: 200
  • Unauthenticated: 401
  • Forbidden: 403
  • Too many requests: 429
  • Internal error: 500

Get kuest by id

Make an authenticated GET request to the endpoint:

https://kuest.com/api/owner/tasks/{id}

Where {id} is the id of your kuest that you want to see details.

Request example:

curl "https://kuest.com/api/owner/tasks/37892062816763904" \
-H 'Authorization: Bearer ibBWpAL6vJW5ZBDshDRwoDqMluf7PwTc2b5mEvkO'

Response example (HTTP status 200):

{
  "data": {
    "id": "37892062816763904",
    "title": {
      "br": "Backlink",
      "en": "Backlink"
    },
    "slug": {
      "br": "backlink",
      "en": "backlink"
    },
    "notes": [],
    "template": {
      "id": 83,
      "title": {
        "br": "Backlink no Rodapé",
        "en": "Backlink in Footer"
      },
      "description": {
        "br": "Solicitar inclus\u00e3o de backlink no rodapé de sites",
        "en": "Request backlink in website footer"
      },
      "category": {
        "id": 51,
        "title": {
          "br": "Backlink",
          "en": "Backlink"
        },
        "path": "Advertising & SEO \/ Backlink",
        "friendly_title": {
          "br": "Backlink",
          "en": "Backlink"
        }
      }
    },
    "workers_needed": 20,
    "workers_earn": "1.00",
    "works_done": 0,
    "progress": "0\/20",
    "progress_percentage": 0,
    "days_to_rate": 7,
    "pause_after_approval": false,
    "workers_not_rated_count": 0,
    "has_reserved_slots": false,
    "created_at": "2022-04-15T13:29:31.776690Z",
    "speed": "Normal",
    "status": "Active",
    "steps": [
      {
        "id": "37892062867095552",
        "title": {
          "br": "É preciso que você tenha um site ou blog",
          "en": "You must have a website or blog"
        },
        "parameter": null
      },
      {
        "id": "37892062900649984",
        "title": {
          "br": "Crie um link no rodapé do seu site com a palavra-chave",
          "en": "Create a link on your site's footer with the keyword"
        },
        "parameter": "example.com"
      },
      {
        "id": "37892062921621504",
        "title": {
          "br": "Apontando para o site:",
          "en": "Linking to the website:"
        },
        "parameter": "example.com"
      }
    ],
    "proofs": [
      {
        "id": "37892063332663296",
        "title": {
          "br": "Qual o link do seu site em que você adicionou o backlink?",
          "en": "What is the link on your site where you added the backlink?"
        },
        "type": "Text"
      }
    ],
    "contracts": []
  }
}

Possible HTTP statuses:

  • Successful: 200
  • Unauthenticated: 401
  • Forbidden: 403
  • Not found: 404
  • Too many requests: 429
  • Internal error: 500

Get multiple kuests by id

Make an authenticated GET request to the endpoint:

https://kuest.com/api/owner/tasks?ids=kuestid1,kuestid2

Request example:

curl "https://kuest.com/api/owner/tasks?ids=32802862975156224,32802862975156223" \
-H 'Authorization: Bearer ibBWpAL6vJW5ZBDshDRwoDqMluf7PwTc2b5mEvkO'

Response example (HTTP status 207):

{
    "data": [
    {
      "id": "32802862975156224",
      "title": {
        "br": "Backlink",
        "en": "Backlink"
      },
      "slug": {
        "br": "backlink",
        "en": "backlink"
      },
      "workers_needed": 20,
      "workers_earn": "1.00",
      "works_done": 0,
      "progress": "0\/20",
      "progress_percentage": 0,
      "workers_not_rated_count": 0,
      "status": "Active"
    },
    {
      "id": "32802862975156223",
      "error": "Kuest not found."
    }
    //...
  ],
  "links": {
    "first": "https:\/\/kuest\.com\/api\/owner\/tasks?page=1",
    "last": "https:\/\/kuest\.com\/api\/owner\/tasks?page=3",
    "prev": null,
    "next": "https:\/\/kuest\.com\/api\/owner\/tasks?page=2"
  },
  "meta": {
    "current_page": 1,
    "from": 1,
    "last_page": 3,
    "path": "https:\/\/kuest\.com\/api\/owner\/tasks",
    "per_page": 15,
    "to": 15,
    "total": 37
  }
}

Possible HTTP statuses:

  • Successful: 200
  • Multi status: 207
  • Unauthenticated: 401
  • Forbidden: 403
  • Not found: 404
  • Too many requests: 429
  • Internal error: 500