Web Service Methods

API → Goals


search_goals

Will search goal names based on the q* parameter that you pass it.

*Arguments:
  • api_key (required)
  • q (required)
  • offset (optional, default is 0)
  • max (optional, default is 20 and can’t be higher than 20)
An Example Response:
<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://43things.com/xml/2005/rc#">
  <title>Goal search results for "web service" on 43 Things</title>
  <link href="http://www.43things.com/search/query?q=web+service" rel="alternate" type="text/html"/>
  <query>web service</query>
  <pagination>
    <offset>0</offset>
    <max>20</max>
    <total>234</total>
    <next_offset>20</next_offset>
  </pagination>
  <GOAL OBJECT>
  <GOAL OBJECT>
  <GOAL OBJECT>
</feed>

The response contains this common object: Goal

Demo: /service/search_goals?q=web+service


get_goal_by_id

Retrieve information for a particular goal, by its id.

Arguments:
  • api_key (required)
  • id (required)
An Example Response:
<?xml version="1.0" encoding="UTF-8"?>
<goal goal_id="255">
  <name>Try out 43 Things</name>
  <link href="http://www.43things.com/things/view/255" rel="alternate" type="text/html"/>
  <num_registered_people>900</num_registered_people>
  <num_unregistered_people>152</num_unregistered_people>
  <worth_it_data>
    <num_say_worth_it>305</num_say_worth_it>
    <num_say_not_worth_it>20</num_say_not_worth_it>
    <percentage_worth_it>93</percentage_worth_it>
  </worth_it_data>
  <tags>
    <tag>43 things</tag>
    <tag>testing</tag>
    <tag>beta</tag>
    <tag>beta test</tag>
    <tag>blog</tag>
  </tags>
  <id>tag:43things.com:goal:255</id>
</goal>

Demo: /service/get_goal_by_id?id=255


get_goal_by_name

Retrieve information for a particular goal, by its name.

Arguments:
  • api_key (required)
  • name (required)
An Example Response:
<?xml version="1.0" encoding="UTF-8"?>
<goal goal_id="255">
  <name>Try out 43 Things</name>
  <link href="http://www.43things.com/things/view/255" rel="alternate" type="text/html"/>
  <num_registered_people>900</num_registered_people>
  <num_unregistered_people>152</num_unregistered_people>
  <worth_it_data>
    <num_say_worth_it>305</num_say_worth_it>
    <num_say_not_worth_it>20</num_say_not_worth_it>
    <percentage_worth_it>93</percentage_worth_it>
  </worth_it_data>
  <tags>
    <tag>43 things</tag>
    <tag>testing</tag>
    <tag>beta</tag>
    <tag>beta test</tag>
    <tag>blog</tag>
  </tags>
  <id>tag:43things.com:goal:255</id>
</goal>

Demo: /service/get_goal_by_name?name=Try+out+43+things


get_goals_similarities

This will return a list of up to 5 goals are displayed in the “People who are doing this are also doing these things” section of a goal’s detail page.

Arguments:
  • api_key (required)
  • id (required)
An Example Response:
<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://43things.com/xml/2005/rc#">
  <title>Goals similar to "Try out 43 Things" on 43 Things</title>
  <link href="http://www.43things.com/thing/view/255" rel="alternate" type="text/html"/>
  <GOAL OBJECT>
  <GOAL OBJECT>
  <GOAL OBJECT>
</feed>

The response contains this common object: Goal

Demo: /service/get_goals_similarities?id=255


get_goals_people

This will return up to 20 people at a time that have added this particular goal to their list. People will be ordered primarily by the number of entries that they’ve written about the goal, and secondarily by their most recent log in date.

Arguments:
  • api_key (required)
  • id (required)
  • offset (optional, default is 0)
  • max (optional, default is 20 and can’t be higher than 20)
An Example Response:
<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://43things.com/xml/2005/rc#">
  <title>People who want to Try out 43 Things on 43 Things</title>
  <link href="http://erik-hugster.coop.robotcoop.com/things/people/255" rel="alternate" type="text/html"/>
  <view>in_progress</view>
  <goal goal_id="255">
    <name>Try out 43 Things</name>
    <link href="http://erik-hugster.coop.robotcoop.com/things/view/255" rel="alternate" type="text/html"/>
    <num_registered_people>818</num_registered_people>
    <num_unregistered_people>35</num_unregistered_people>
    <worth_it_data>
      <num_say_worth_it>163</num_say_worth_it>
      <num_say_not_worth_it>21</num_say_not_worth_it>
      <percentage_worth_it>88</percentage_worth_it>
    </worth_it_data>
    <id>tag:43things.com:goal:255</id>
  </goal>
  <pagination>
    <offset>0</offset>
    <max>20</max>
    <total>818</total>
    <next_offset>20</next_offset>
  </pagination>
  <PERSON OBJECT>
  <PERSON OBJECT>
  <PERSON OBJECT>
</feed>

The response contains this common object: Person

Demo: /service/get_goals_people?id=255


get_goals_entries

This will return up to 20 entries at a time that have been written about this goal. Entries will be returned in reverse chronological order. By default, all entries will be returned, but you can optionally filter them by passing a view argument.

Arguments:
  • api_key (required)
  • id (required)
  • view (optional, can be set to “all” (default), “done”, or “pleas”)
    • all: all entries
    • done: entries that have been written after a goal has been marked complete
    • pleas: pleas for help
  • offset (optional, default is 0)
  • max (optional, default is 20 and can’t be higher than 20)
An Example Response:
<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://43things.com/xml/2005/rc#">
  <title>Try out 43 Things on 43 Things</title>
  <link href="http://www.43things.com/things/entries/255" rel="alternate" type="text/html"/>
  <view>all</view>
  <goal goal_id="255">
    <name>Try out 43 Things</name>
    <link href="http://www.43things.com/things/view/255" rel="alternate" type="text/html"/>
    <num_registered_people>900</num_registered_people>
    <num_unregistered_people>152</num_unregistered_people>
    <worth_it_data>
      <num_say_worth_it>305</num_say_worth_it>
      <num_say_not_worth_it>20</num_say_not_worth_it>
      <percentage_worth_it>93</percentage_worth_it>
    </worth_it_data>
    <id>tag:43things.com:goal:255</id>
  </goal>
  <pagination>
    <offset>0</offset>
    <max>20</max>
    <total>276</total>
    <next_offset>20</next_offset>
  </pagination>
  <ENTRY OBJECT>
  <ENTRY OBJECT>
  <ENTRY OBJECT>
</feed>

The response contains this common object: Entry

Demo: /service/get_goals_entries?id=255