Beeminder

Like Habitica, Beeminder is a service that helps keep people motivated and accountable for their tasks. However, Beeminder does this through the use of a "yellow brick road" tracking system.
== What is Beeminder? ==
Beeminder lets you track your progress for any goal that can be measured with a number (e.g. number of pages of a book read, amount of weight lost, distance run, number of Habitica To Do's completed). Beeminder plots your progress towards your goal along a "yellow brick road" on a graph. What keeps you accountable? Well, Beeminder packs a significant "sting" – if you fall off track, they take your real-life money.
For more information, see Beeminder's Overview.
===How does the "Yellow Brick Road" tracking system work?===
When you create a goal on Beeminder you tell it what you want to commit to, which is represented by the steepness of the yellow brick road. If you want to complete 8 To Do's per week, then 8 is the slope on the graph. The y-axis shows the cumulative total To Do's completed. Or if you are beeminding the number of remaining To Do's, then the graph starts at your current number and slopes downward at the rate you specify, say, -3 To Do's per week. In the case of beeminding more To Do's completed, you have to stay on or above that yellow brick road. In the case of reducing remaining To Do's, you have to stay on or below it.
There are also fancy interfaces for scheduling breaks in the road, throwing away excess "safety buffer" you may have built up, and changing what you've committed to. The catch is that any changes you make, take a week to take effect.
===They take my money?? Is it safe?===
The Beeminder and Habitica founders know each other in real life so there’s no doubt that Beeminder is reliable. But even apart from that, there are several Beeminder features that should help put your mind at ease about deputizing them to enforce your habits:
*Beeminder takes your money only when your goal derails and it gives you clear warnings when you are close to derailing by changing the color of the goal and sending you emails.
*When your goal derails, Beeminder will immediately send you an automatic email to notify you. You can reply to tell them if the derailment should not have happened (e.g., if Beeminder made a mistake, or you didn't have internet access to see your goal, or if Habitica had an outage that prevented Beeminder from fetching your data, etc.). They will not take your money, or will refund your money if they have already taken it.
*When you sign up to Beeminder, your first few goals are "freebees" — you can start a goal without pledging any money at all and without providing credit card details. If the goal derails, you don't lose money. If you want to continue with that goal, you can do so by pledging $5, but you can also choose to abandon the goal with no penalty.
*When you start a new goal (whether it's a freebee or not), you can choose to start with the first week being "flat", which means that no matter how poorly you perform, you cannot derail in the first week. This gives you time to get used to having the goal as part of your life before your money is at risk.
*After you create a goal, you can change its "steepness" (i.e., how much you need to do each day to avoid derailing). However to protect yourself from your own akrasia (procrastination, lack of self-control, etc.), any changes you make don't take effect until a week later.
==Beeminder-Habitica Integration==
#Change the "Day Start"-time in the settings to 00:00 (this will allow you to track Dailies in addition to To Do's).
#Go to Beeminder's Habitica page — it will prompt you to create a Beeminder account if you don't have one.
#Enter your Habitica Unique User ID (UID) and API Token. These are not the same as your Habitica username and password. The Beeminder page links to the Habitica page (API Options) where you can find them. Just be sure to be signed in to Habitica.
#Click the "Habitualize" button.
#Choose the appropriate options:
#*Decide whether you want to beemind more completed To Do's or to beemind whittling down a backlog of remaining To Do's.
#*Select one tag to beemind, or use the default of "All To Do's" (all tags).
#*Enter the number of To Do's per week that you would like to be accountable for (e.g., have 10 more complete To Do's every week, or have 10 fewer ("-10") remaining To Do's each week).
#*Leave the "Start with a week of safety buffer" checkbox ticked if you are not sure what it means (it will give you a week to get used to the goal before you are put at risk of derailing).
#*Enter a name for your goal.
#*Optionally, adjust the URL of the goal (this is the URL you will use to access that goal in your browser; you do not need to change this if you don't want to).
#Click the "Submit" button.
For more details, refer to Beeminder's blog post, Beeminder ♥ HabitRPG.
==Deleting Completed To Do's Without Confusing Beeminder==
It is safe to delete completed To Do's at any time.
Previously, deleting completed To Do's could cause problems with the "more completed To Do's" goal type, however the problems were removed on 31st January, 2016.
==Beeminder and Challenge To Do's==
Currently, the only Beeminder-Habitica goals are for tracking how many active or completed To Do's you have. To Do's from challenges are not included. This is because you have much less control over challenge To Do's than you have over your own To Do's. New challenge To Do's can be added to your task list at any time if the challenge creator decides to add more To Do's to the challenge, which could cause you to derail on a "Fewer Remaining To Do's" goal. The creator can also close the challenge at any time, which gives you the option to delete the challenge tasks and if you do that before Beeminder has registered any completed To Do's, you could derail on a "More Completed To Do's" goal.
==Tracking All Task Types using IFTTT==
The Beeminder-Habitica integration can be used for tracking Dailies or To Do's or both. If you want to track all of your clicks on all task types together, you can use an IFTTT webhook as described below. 
It is not possible to use the method below to track only some task types; this method records every click you make on:
* positive Habits
* negative Habits
* completed Dailies
* completed To Do's
* purchased Rewards
If you want to track only some of those task types, you would need to write a custom script for parsing data from Habitica and updating your Beeminder goal.
To track all the task types listed above using IFTTT:
# Create a "Do More" Beeminder goal for recording your task clicks.
# Create an IFTTT account or log in to an existing account.
# Use IFTTT's search form to search for "beeminder" then click on the "Services" subheading and click the Beeminder box that appears under that. Follow through the process for authorizing IFTTT to use your Beeminder account.
# Use IFTTT's search form to search for "webhooks" then click on the "Services" subheading and click the Webhooks box under that. Follow through the process for enabling the webhooks service for your IFTTT account.
# Visit the Creating your own Applet article and read it for background information about the process described below.
# Visit https://ifttt.com/create (you'll also find that link on the "Creating your own Applet" page).
# You'll notice the word "This" is a different colour (grey) than the other words there (black) and has a "+" before it. That indicates it's a link. Click "This" or the "+" button.
# The page that appears will have a "Search services" box. Use it to search for "webhooks" and click the webhooks box that appears.
# You'll now be on the "Choose trigger" page. Click the "Receive a web request" box.
# You'll now be on the "Complete trigger fields" page. In the "Event Name" box, enter something like "habitica_tasks" (it can be anything you like but don't use spaces or advanced punctuation and remember what you entered). Click the "Create trigger" button
# You'll now be back at the "create" page with "That" showing as grey with a "+" button. Click it.
# In the "Search services" box, type "beeminder". Click the "Add datapoint" box that appears.
# You'll now be on a "Complete action fields" screen.
## Select your Beeminder goal.
## Enter 1 in the "Datapoint value" field (you can use a different number if you wish). Click the "Add ingredient" button.
## In the "Datapoint comment" field, change the comment if desired and click the "Add ingredient" button.
## Click the "Create action" button.
# You'll now be on the "Review and finish" screen. Turn off "Receive notifications when this Applet runs" if desired. Click "Finish".
# Go to the IFTTT home page and click on the Webhooks box there.
# Click the "Documentation" button on the Webhooks page.
# You'll see a URL that looks like this: https://maker.ifttt.com/trigger/{event}/with/key/randomstringofcharacters (note that the random string of characters at the end is your private IFTTT webhooks key and it should not be shared with other people).
# Copy the URL to your clipboard.
# Log in to your Habitica account on Habitica's website.
# Click on User Icon > Settings and then on the API subheading.
# On the right-hand side of the page is the Webhooks section. In the "Webhook URL" field, paste your https://maker.ifttt.com/trigger/{event}/with/key/randomstringofcharacters URL and replace {event} with habitica_tasks (or whatever Event Name you chose earlier).
# Click the "Add" button.
You will now find that a datapoint is added to your Beeminder goal whenever you use any task (including negative clicks on Habits and purchases of Rewards).
==How to get Help==
If you're having trouble using the Beeminder-Habitica integration or using the IFTTT process described above, first read all of this page and if that doesn't solve your problem, go to the Beeminder forum and search for "habitica" and "habitrpg" to see if there are any relevant threads that already answer your problem or that you can post in to ask a related question. Create a new thread if none of the existing ones are relevant. 
If you'd prefer to ask for help within Habitica, you can post to the Beeminder guild. Please don't post to both the guild and the forum at the same time as that will duplicate the efforts to help you.
If you are writing a custom script to update a Beeminder goal using your Habitica data and need help with Habitica's API specifically, the Aspiring Comrades guild is the best place to post.
==Links==
Beeminder Guild in Habitica
HabitRPG's blog post about the integration between Beeminder and Habitica
Beeminder's blog post about the integration between Beeminder and Habitica
Beeminder's Habitica goal creation page
Beeminder's main Habitica forum post (the forum contains other Habitica / HabitRPG posts too)
fr:Beeminder
pt-br:Beeminder
zh:蜜蜂守卫
Category:Extensions, Add-Ons, and Customizations
Category:Pages with files missing alt tags