Skip to main content
Every habitica.api.* operation is listed below with parameter shapes and return types from the plugin Zod schemas.
New to Corsair? See API access, authentication, and error handling.

Auth

login

auth.login Exchange a password for an API token Risk: read
Input Output

register

auth.register Register a new Habitica account and mint its credential Risk: write
Input Output

social

auth.social Authenticate through a social provider Risk: read
Input
Output

Challenges

clone

challenges.clone Duplicate a challenge Risk: write
Input Output

create

challenges.create Create a challenge in a group Risk: write
Input Output

delete

challenges.delete Permanently delete a challenge and its tasks Risk: destructive
Input Output: object

exportCsv

challenges.exportCsv Export a challenge as CSV Risk: read
Input Output

get

challenges.get Retrieve a challenge Risk: read
Input Output

join

challenges.join Join a challenge Risk: write
Input Output

leave

challenges.leave Leave a challenge Risk: write
Input Output: object

listByGroup

challenges.listByGroup List a group’s challenges Risk: read
Input Output: object[]

listForUser

challenges.listForUser List the challenges the account takes part in Risk: read
Input Output: object[]

Chat

deleteMessage

chat.deleteMessage Permanently delete a chat message Risk: destructive
Input Output: object

list

chat.list Read a group’s chat messages Risk: read
Input Output: object[]

markSeen

chat.markSeen Mark a group’s chat as read Risk: write
Input Output: object

Content

dismissNews

content.dismissNews Dismiss the current announcement Risk: write
Input: empty object Output: object

get

content.get Fetch the whole game content catalogue Risk: read
Input Output: object

getByType

content.getByType Fetch the content catalogue with named categories EXCLUDED Risk: read
Input Output: object

marketGear

content.marketGear List gear for sale in the market Risk: read
Input Output: object

modelPaths

content.modelPaths List a model’s field paths and types Risk: read
Input Output: object

news

content.news Read the latest Bailey announcement Risk: read
Input: empty object Output: object

status

content.status Check that the Habitica API is up Risk: read
Input: empty object Output: object

timeTravelers

content.timeTravelers List the Time Travellers shop stock Risk: read
Input Output: object

validateCoupon

content.validateCoupon Check whether a coupon code is valid Risk: read
Input Output: object

worldState

content.worldState Read world events and the world boss Risk: read
Input: empty object Output: object

Exports

history

exports.history Export task history as CSV Risk: read
Input: empty object Output

inbox

exports.inbox Export the inbox as HTML Risk: read
Input: empty object Output

userData

exports.userData Export the whole account as JSON (contains the account email) Risk: read
Input: empty object Output: object

Groups

create

groups.create Create a party or guild Risk: write
Input Output

get

groups.get Retrieve a group by id Risk: read
Input Output

getParty

groups.getParty Retrieve the account’s party Risk: read
Input: empty object Output

getTavern

groups.getTavern Retrieve the Tavern Risk: read
Input: empty object Output

invite

groups.invite Invite people to a group Risk: write
Input
Output: object[]

inviteToQuest

groups.inviteToQuest Invite the party to a quest Risk: write
Input Output: object

leave

groups.leave Leave a group Risk: write
Input Output: object

list

groups.list List groups by type Risk: read
Input Output: object[]

listMembers

groups.listMembers List a group’s members Risk: read
Input Output: object[]

removeMember

groups.removeMember Remove a member from the party Risk: write
Input Output: object

update

groups.update Update a group’s properties Risk: write
Input Output

Tags

create

tags.create Create a tag Risk: write
Input Output

delete

tags.delete Permanently delete a tag Risk: destructive
Input Output: object

list

tags.list List every tag on the account Risk: read
Input: empty object Output: object[]

update

tags.update Rename a tag Risk: write
Input Output

Tasks

addTag

tasks.addTag Apply an existing tag to a task Risk: write
Input Output

create

tasks.create Create a habit, daily, todo or reward Risk: write
Input
Output

createChallengeTask

tasks.createChallengeTask Add a task to a challenge Risk: write
Input
Output: object[]

delete

tasks.delete Permanently delete a task Risk: destructive
Input Output: object

deleteChecklistItem

tasks.deleteChecklistItem Remove a checklist item from a task Risk: write
Input Output

get

tasks.get Retrieve any task by id Risk: read
Input Output

list

tasks.list List the account’s tasks Risk: read
Input Output: object[]

listChallengeTasks

tasks.listChallengeTasks List a challenge’s tasks Risk: read
Input Output: object[]

move

tasks.move Move a task to a position in its list Risk: write
Input Output: string[]

score

tasks.score Score a task up or down Risk: write
Input Output

unlinkAllChallengeTasks

tasks.unlinkAllChallengeTasks Unlink every task of a challenge, optionally deleting members’ copies Risk: destructive
Input Output: object

update

tasks.update Update a task Risk: write
Input
Output

updateChecklistItem

tasks.updateChecklistItem Update a checklist item’s text Risk: write
Input Output

User

addPushDevice

user.addPushDevice Register a push-notification device Risk: write
Input Output: object[]

deleteMessage

user.deleteMessage Permanently delete an inbox message Risk: destructive
Input Output: object

deletePushDevice

user.deletePushDevice Unregister a push-notification device Risk: write
Input Output: object[]

equip

user.equip Equip or unequip gear, a pet, a mount or a costume Risk: write
Input Output: object

get

user.get Read the account’s user document Risk: read
Input Output: object

markNotificationSeen

user.markNotificationSeen Mark one notification as seen Risk: write
Input Output: object

markNotificationsSeen

user.markNotificationsSeen Mark several notifications as seen Risk: write
Input Output: object

movePinnedItem

user.movePinnedItem Reorder a pinned reward Risk: write
Input Output: object

readCard

user.readCard Mark a received card as read Risk: write
Input Output: object

reset

user.reset Reset the account, deleting every task and returning to level 1 Risk: destructive
Input: empty object Output: object

update

user.update Update user fields by dot path Risk: write
Input
Output: object

Webhooks

create

webhooks.create Register an outbound webhook Risk: write
Input
Output

list

webhooks.list List the account’s outbound webhooks Risk: read
Input: empty object Output: object[]

subscribe

webhooks.subscribe Enable an existing webhook Risk: write
Input Output