API: comment
Use http://www.reddit.com/api/comment
to post a comment.
field | sample value | explanation |
---|---|---|
thing_id or parent
|
t3_hzko5 , t1_c1znqz2
|
The FULLNAME (see glossary on the API page) of the thing or comment you are commenting on. |
text |
Hey!\n\n**[search!](http://www.google.com/)** |
The markdown content of the comment you are posting. |
uh |
f0f0f0f0 ... |
The currently logged in user's modhash (see glossary on the API page). |
If the reddit_session
cookie and uh
POST Data are not present in the request, the API will return something like the following:
{
"jquery": [
[0, 1, "attr", "refresh"],
[1, 2, "call", []],
[0, 3, "attr", "find"],
[3, 4, "call", [".error.USER_REQUIRED"]],
[4, 5, "attr", "show"],
[5, 6, "call", []],
[6, 7, "attr", "text"],
[7, 8, "call", ["please login to do that"]],
[8, 9, "attr", "end"],
[9, 10, "call", []]
]
}
Otherwise, the API will return JSON data with a series of serialized jquery commands to append the new comment to the page. The following is an example:
{
"jquery":[
[0, 1, "call", ["#form-t3_iqhw5ili"]],
[1, 2, "attr", "find"],
[2, 3, "call", [".status"]],
[3, 4, "attr", "hide"],
[4, 5, "call", []],
[5, 6, "attr", "html"],
[6, 7, "call", [""]],
[7, 8, "attr", "end"],
[8, 9, "call", []],
[1, 10, "attr", "find"],
[10, 11, "call", ["textarea"]],
[11, 12, "attr", "attr"],
[12, 13, "call", ["rows", 3]],
[13, 14, "attr", "html"],
[14, 15, "call", [""]],
[15, 16, "attr", "val"],
[16, 17, "call", [""]],
[0, 18, "attr", "insert_things"],
[18, 19, "call", [
[{
"data":{
"content":"<div class=\\"thing id-t1_c25u9i3 even odd comment \\" onclick=\\"click_thing(this)\\"><p class=\\"parent\\"><a name=\\"c25u9i3\\" ></a></p><div class=\\"midcol likes\\" ><div class=\\"arrow upmod\\" onclick=\\"$(this).vote('f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0', null, event)\\" ></div><div class=\\"arrow down\\" onclick=\\"$(this).vote('f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0', null, event)\\" ></div></div><div class=\\"entry likes\\"><div class=\\"collapsed\\" style='display:none'><a href=\\"#\\" class=\\"expand\\" onclick=\\"return showcomment(this)\\">[+]</a><a href=\\"http://www.reddit.com/user/KerrickLong\\" class=\\"author gray submitter id-t2_4appr\\" >KerrickLong</a><span class=\\"userattrs\\"> [<a class=\\"submitter\\" title=\\"submitter\\" href=\\"/r/MostlyHarmless/comments/iqhw5/changelog_mostly_harmless_v041_released/\\">S</a>]</span> <span class=\\"score dislikes\\">-1 points</span><span class=\\"score unvoted\\">0 points</span><span class=\\"score likes\\">1 point</span> <time title=\\"Fri Jul 15 16:57:16 2011 GMT\\" datetime=\\"2011-07-15T16:57:16.209277+00:00\\">91 milliseconds</time> ago <a href=\\"#\\" class=\\"expand\\" onclick=\\"return showcomment(this)\\">(0 children)</a></div><div class=\\"noncollapsed\\" ><p class=\\"tagline\\"><a href=\\"#\\" class=\\"expand\\" onclick=\\"return hidecomment(this)\\">[–]</a><a href=\\"http://www.reddit.com/user/KerrickLong\\" class=\\"author submitter id-t2_4appr\\" >KerrickLong</a><span class=\\"userattrs\\"> [<a class=\\"submitter\\" title=\\"submitter\\" href=\\"/r/MostlyHarmless/comments/iqhw5/changelog_mostly_harmless_v041_released/\\">S</a>]</span> <span class=\\"score dislikes\\">-1 points</span><span class=\\"score unvoted\\">0 points</span><span class=\\"score likes\\">1 point</span> <time title=\\"Fri Jul 15 16:57:16 2011 GMT\\" datetime=\\"2011-07-15T16:57:16.209277+00:00\\">91 milliseconds</time> ago</p><form action=\\"#\\" class=\\"usertext\\" onsubmit=\\"return post_form(this, 'editusertext')\\" id=\\"form-t1_c25u9i38va\\"><input type=\\"hidden\\" name=\\"thing_id\\" value=\\"t1_c25u9i3\\"/><div class=\\"usertext-body\\"><div class=\\"md\\"><p>Hey!</p><p><strong><a href=\\"http://www.google.com/\\">search!</a></strong></p></div>\\n</div><div class=\\"usertext-edit\\" style=\\"display: none\\"><div><textarea rows=\\"1\\" cols=\\"1\\" name=\\"text\\" >test comment</textarea></div><div class=\\"bottom-area\\"><span class=\\"help-toggle toggle\\" style=\\"display: none\\"><a class=\\"option active \\" href=\\"#\\" tabindex=\\"100\\" onclick=\\"return toggle(this, helpon, helpoff)\\" >formatting help</a><a class=\\"option \\" href=\\"#\\">hide help</a></span><span class=\\"error TOO_LONG field-text\\" style=\\"display:none\\"></span><span class=\\"error RATELIMIT field-ratelimit\\" style=\\"display:none\\"></span><span class=\\"error NO_TEXT field-text\\" style=\\"display:none\\"></span><span class=\\"error TOO_OLD field-parent\\" style=\\"display:none\\"></span><span class=\\"error DELETED_COMMENT field-parent\\" style=\\"display:none\\"></span><span class=\\"error DELETED_LINK field-parent\\" style=\\"display:none\\"></span><span class=\\"error USER_BLOCKED field-parent\\" style=\\"display:none\\"></span><div class=\\"usertext-buttons\\"><button type=\\"submit\\" onclick=\\"\\" class=\\"save\\" style='display:none'>save</button><button type=\\"button\\" onclick=\\"cancel_usertext(this)\\" class=\\"cancel\\" style='display:none'>cancel</button><span class=\\"status\\"></span></div></div><table class=\\"markhelp md\\" style=\\"display: none\\"><tr style=\\"background-color: #ffff99; text-align: center\\"><td><em>you type:</em></td><td><em>you see:</em></td></tr><tr><td>*italics*</td><td><em>italics</em></td></tr><tr><td>**bold**</td><td><b>bold</b></td></tr><tr><td>[reddit!](http://reddit.com)</td><td><a href=\\"http://reddit.com\\">reddit!</a></td></tr><tr><td>* item 1<br/>* item 2<br/>* item 3</td><td><ul><li>item 1</li><li>item 2</li><li>item 3</li></ul></td></tr><tr><td>> quoted text</td><td><blockquote>quoted text</blockquote></td></tr><tr><td>Lines starting with four spaces<br/>are treated like code:<br/><br/><span class=\\"spaces\\"> </span>if 1 * 2 < 3:<br/><span class=\\"spaces\\"> </span>print \\"hello, world!\\"<br/></td><td>Lines starting with four spaces<br/>are treated like code:<br/><pre>if 1 * 2 < 3:<br/> print \\"hello, world!\\"</pre></td></tr><tr><td>~~strikethrough~~</td><td><strike>strikethrough</strike></td></tr><tr><td>super^script</td><td>super<sup>script</sup></td></tr></table></div></form><ul class=\\"flat-list buttons\\"><li class=\\"first\\"><a href=\\"http://www.reddit.com/r/MostlyHarmless/comments/iqhw5/changelog_mostly_harmless_v041_released/c25u9i3\\" class=\\"bylink\\" rel=\\"nofollow\\" >permalink</a></li><li><a class=\\"edit-usertext\\" href=\\"javascript:void(0)\\" onclick=\\"return edit_usertext(this)\\">edit</a></li><li><form class=\\"toggle del-button\\" action=\\"#\\" method=\\"get\\"><input type=\\"hidden\\" name=\\"executed\\" value=\\"deleted\\"/><span class=\\"option active\\"><a href=\\"#\\" onclick=\\"return toggle(this)\\">delete</a></span><span class=\\"option error\\">are you sure?  <a href=\\"javascript:void(0)\\" class=\\"yes\\" onclick='change_state(this, \\"del\\", hide_thing)'>yes</a> / <a href=\\"javascript:void(0)\\" class=\\"no\\" onclick=\\"return toggle(this)\\">no</a></span></form></li><li><form action=\\"/post/remove\\" method=\\"post\\" class=\\"state-button remove-button\\"><input type=\\"hidden\\" name=\\"executed\\" value=\\"removed\\" /><span><a href=\\"javascript:void(0)\\" onclick=\\"return change_state(this, 'remove');\\">remove</a></span></form></li><li class=\\"toggle\\"><form method=\\"post\\" action=\\"/post/distinguish\\"><input type=\\"hidden\\" value=\\"distinguishing...\\" name=\\"executed\\"/><a href=\\"javascript:void(0)\\" onclick=\\"return toggle_distinguish_span(this)\\">distinguish</a><span class=\\"option error\\">distinguish this?  <a href=\\"javascript:void(0)\\" onclick=\\"return set_distinguish(this, 'yes')\\">yes</a> / <a href=\\"javascript:void(0)\\" onclick=\\"return set_distinguish(this, 'no')\\">no</a>  / <a class=\\"nonbutton\\" href=\\"/help/moderation#Distinguishing\\">help</a> </span></form></li><li><a class=\\"\\" href=\\"javascript:void(0)\\" onclick=\\"return reply(this)\\">reply</a></li></ul></div></div><div class=\\"child\\" ></div><div class=\\"clearleft\\"><!--IE6sux--></div></div><div class=\\"clearleft\\"><!--IE6sux--></div>",
"contentHTML":"<div class=\\"md\\"><p>Hey!</p><p><strong><a href=\\"http://www.google.com/\\">search!</a></strong></p></div>",
"contentText":"Hey!\n\n**[search!](http://www.google.com/)**",
"id":"t1_c25u9i3",
"link":"t3_iqhw5",
"parent":"t3_iqhw5",
"replies":""
},
"kind":"t1"
}],
false
]
],
[0, 20, "call", ["#noresults"]],
[20, 21, "attr", "hide"],
[21, 22, "call",[]]
]
}
Note: This reference ignores the serialized data and assumes you begin at jquery[18][3][0][0]
.
-
Holds relevant data about the comment.
-
Holds the HTML markup to insert into the reddit.com website.
-
Holds the HTML markup of the comment.
-
Holds the original source (in markdown) of the comment.
-
The FULLNAME (see glossary on the API page) of the comment.
-
The FULLNAME (see glossary on the API page) of the link the comment belongs to.
-
If the comment was a reply, this is the FULLNAME (see glossary on the API page) of the comment that was replied to.
If the comment was a root comment on a post, this is the FULLNAME (see glossary on the API page) of the link that was commented on.
-
This will always be an empty string, because a brand new comment cannot have any replies.
-
-
The type of thing (see glossary on the API page) this is, which translates to Comment.