User

The User Quest API provides a comprehensive set of endpoints for users to interact with quests you have created. These endpoints provide current and historical quest data and quest participation data.

The Quest Details API provides detailed information about a specific quest, including its type, status, rewards, and more.

Get quest details

get
Path parameters
questIdstringRequired
Query parameters
includeStreakbooleanOptional

Include the users current streak (if quest is recurring)

Responses
400
Generic Client Error
application/json
get
GET /v1/quests/{questId} HTTP/1.1
Host: 
Accept: */*
{
  "code": 10002,
  "message": "generic_client_error"
}

Quests

The User Quests API returns a users quests.

User quests

get
Query parameters
tagsstring[]Required
includeGamerCardstringRequired
featuredstringRequired
querystringRequired
pagenumberRequired
limitnumberRequired
Responses
400
Generic Client Error
application/json
get
GET /v1/quests?tags=text&includeGamerCard=text&featured=text&query=text&page=1&limit=1 HTTP/1.1
Host: 
Accept: */*
{
  "code": 10002,
  "message": "generic_client_error"
}

Quests History

The User Quest History API returns historical data about quests a user has participated in.

User quest history

get
Query parameters
tagsstring[]Optional

Only fetch quests associated with these tags

userIdstringOptional

User info to load quests against (default: authenticated user)

containerIdsstring[]Optional

Relevant Container IDs

limitnumberOptional

Pagination Limit

pagenumberOptional

Pagination Page

questFilterobjectOptional

Filter params against quest relation

entryFilterobjectOptional

Filter params against quest entry relation

templateFilterobjectOptional

Filter params against template relation

Responses
400
Generic Client Error
application/json
get
GET /v1/quests/history HTTP/1.1
Host: 
Accept: */*
{
  "code": 10002,
  "message": "generic_client_error"
}

Quest Tags

Allows to retrieve the quests tag for a user for a given community

List quest tags (paginated)

get
Query parameters
containerIdstringRequired

The containerId of your community

excludeTemplateTagsbooleanOptional

When true, tags specific to a template will not be returned.

Responses
400
Generic Client Error
application/json
get
GET /v1/quests/tags?containerId=text HTTP/1.1
Host: 
Accept: */*
{
  "code": 10002,
  "message": "generic_client_error"
}

Accept a quest

post

Used to initiate the stat tracking on a quest that requires it

Path parameters
questIdstringRequired
Body
objectOptional
Responses
400
Generic Client Error Errors related to quest completion: - `QUEST_ALREADY_COMPLETED`: Quest has already been completed. - `ATTEMPT_LIMIT_REACHED`: You have reached the maximum number of attempts for this quest. - `QUEST_CONDITION_NOT_COMPLETED`: Quest condition has not been completed. - `QUEST_CONDITION_CHECK_FAILED`: Failed to check quest condition. - `BATTLENET_AUTH_EXPIRED`: Battle.net authentication has expired. - `HANDLER_BAD_REQUEST`: Invalid request to handler. - `GAME_QUEST_BAD_REQUEST`: Invalid game quest request. - `QUEST_BAD_REQUEST`: Invalid quest request. - `CHARACTER_DATA_NOT_FOUND`: Character data could not be found. - `SOCIAL_NOT_FOUND`: Social data not found. - `INVALID_SNAPSHOT`: The received api snapshot is invalid. - `HANDLER_INVALID_SNAPSHOT`: The provided snapshot is invalid. - `SNAPSHOT_ACCOUNTS_DONT_MATCH`: The snapshot accounts do not match. - `HANDLER_DATA_NOT_FOUND`: Handler data could not be found. - `QUEST_CLOSED`: Quest is closed. - `QUEST_UNPUBLISHED`: Quest is not published. - `QUEST_NOT_COMPLETED`: Quest requirements not met. - `HANDLER_EMPTY_TEXT`: Empty text provided. - `HANDLER_FORBIDDEN`: Action forbidden. - `OAUTH_TOKEN_REFRESH_FAILED`: OAuth token refresh failed. - `DATA_NOT_PUBLIC`: User data is not publicly accessible. - `NEW_OR_NOT_PUBLIC_DATA`: User is new or data is not publicly accessible. - `HANDLER_AUTH_EXPIRED`: Game handler authentication has expired.
application/json
post
POST /v1/quests/{questId}/accept HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 2

{}
{
  "code": 10002,
  "message": "generic_client_error"
}

Refresh a quests stats

post

Used to refresh the stat tracking on a previously accepted quest

Path parameters
questIdstringRequired
Responses
400
Generic Client Error Errors related to quest completion: - `QUEST_ALREADY_COMPLETED`: Quest has already been completed. - `ATTEMPT_LIMIT_REACHED`: You have reached the maximum number of attempts for this quest. - `QUEST_CONDITION_NOT_COMPLETED`: Quest condition has not been completed. - `QUEST_CONDITION_CHECK_FAILED`: Failed to check quest condition. - `BATTLENET_AUTH_EXPIRED`: Battle.net authentication has expired. - `HANDLER_BAD_REQUEST`: Invalid request to handler. - `GAME_QUEST_BAD_REQUEST`: Invalid game quest request. - `QUEST_BAD_REQUEST`: Invalid quest request. - `CHARACTER_DATA_NOT_FOUND`: Character data could not be found. - `SOCIAL_NOT_FOUND`: Social data not found. - `INVALID_SNAPSHOT`: The received api snapshot is invalid. - `HANDLER_INVALID_SNAPSHOT`: The provided snapshot is invalid. - `SNAPSHOT_ACCOUNTS_DONT_MATCH`: The snapshot accounts do not match. - `HANDLER_DATA_NOT_FOUND`: Handler data could not be found. - `QUEST_CLOSED`: Quest is closed. - `QUEST_UNPUBLISHED`: Quest is not published. - `QUEST_NOT_COMPLETED`: Quest requirements not met. - `HANDLER_EMPTY_TEXT`: Empty text provided. - `HANDLER_FORBIDDEN`: Action forbidden. - `OAUTH_TOKEN_REFRESH_FAILED`: OAuth token refresh failed. - `DATA_NOT_PUBLIC`: User data is not publicly accessible. - `NEW_OR_NOT_PUBLIC_DATA`: User is new or data is not publicly accessible. - `HANDLER_AUTH_EXPIRED`: Game handler authentication has expired.
application/json
post
POST /v1/quests/{questId}/refresh HTTP/1.1
Host: 
Accept: */*
{
  "code": 10002,
  "message": "generic_client_error"
}

Complete a quest

post

Used to complete any quest whose conditions have been met.

Path parameters
questIdstringRequired
Body
objectOptional
Responses
400
Generic Client Error Errors related to quest completion: - `QUEST_ALREADY_COMPLETED`: Quest has already been completed. - `ATTEMPT_LIMIT_REACHED`: You have reached the maximum number of attempts for this quest. - `QUEST_CONDITION_NOT_COMPLETED`: Quest condition has not been completed. - `QUEST_CONDITION_CHECK_FAILED`: Failed to check quest condition. - `BATTLENET_AUTH_EXPIRED`: Battle.net authentication has expired. - `HANDLER_BAD_REQUEST`: Invalid request to handler. - `GAME_QUEST_BAD_REQUEST`: Invalid game quest request. - `QUEST_BAD_REQUEST`: Invalid quest request. - `CHARACTER_DATA_NOT_FOUND`: Character data could not be found. - `SOCIAL_NOT_FOUND`: Social data not found. - `INVALID_SNAPSHOT`: The received api snapshot is invalid. - `HANDLER_INVALID_SNAPSHOT`: The provided snapshot is invalid. - `SNAPSHOT_ACCOUNTS_DONT_MATCH`: The snapshot accounts do not match. - `HANDLER_DATA_NOT_FOUND`: Handler data could not be found. - `QUEST_CLOSED`: Quest is closed. - `QUEST_UNPUBLISHED`: Quest is not published. - `QUEST_NOT_COMPLETED`: Quest requirements not met. - `HANDLER_EMPTY_TEXT`: Empty text provided. - `HANDLER_FORBIDDEN`: Action forbidden. - `OAUTH_TOKEN_REFRESH_FAILED`: OAuth token refresh failed. - `DATA_NOT_PUBLIC`: User data is not publicly accessible. - `NEW_OR_NOT_PUBLIC_DATA`: User is new or data is not publicly accessible. - `HANDLER_AUTH_EXPIRED`: Game handler authentication has expired.
application/json
post
POST /v1/quests/{questId}/complete HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 2

{}
{
  "code": 10002,
  "message": "generic_client_error"
}

Quest Rewards

Upon successful completion of a quest a user will be allocated tickets that can be used to claim rewards associated to the quest. The allocation endpoints return information about these tickets and previously submitted requirement data that fulfils configured requirements.

List rewards allocated to a user for a quest

get
Path parameters
questIdstringRequired
Responses
400
Generic Client Error
application/json
get
GET /v1/quests/{questId}/reward/allocations HTTP/1.1
Host: 
Accept: */*
{
  "code": 10002,
  "message": "generic_client_error"
}

Claim a reward allocation for a quest

post
Path parameters
rewardAllocationIdstringRequired
Body
emailstringOptional
walletAddressstringOptional
Responses
400
Generic Client Error
application/json
post
POST /v1/quests/{questId}/reward/allocations/claim/{rewardAllocationId} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 202

{
  "email": "text",
  "walletAddress": "text",
  "address": {
    "addressId": "text",
    "addressLine1": "text",
    "addressLine2": "text",
    "addressLine3": "text",
    "city": "text",
    "state": "text",
    "postalCode": "text",
    "country": "text"
  }
}
{
  "code": 10002,
  "message": "generic_client_error"
}

Last updated