This repository has been archived on 2020-05-10. You can view files and clone it, but cannot push or open issues or pull requests.
mastodon-cpp/docs/classMastodon_1_1API.html

1451 lines
190 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.15"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>mastodon-cpp: Mastodon::API Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">mastodon-cpp
&#160;<span id="projectnumber">0.110.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.15 -->
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',false,false,'search.php','Search');
});
/* @license-end */</script>
<div id="main-nav"></div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceMastodon.html">Mastodon</a></li><li class="navelem"><a class="el" href="classMastodon_1_1API.html">API</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="classMastodon_1_1API-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">Mastodon::API Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>Interface to the <a class="el" href="namespaceMastodon.html" title="Collection of things to interface with server software that implements the Mastodon API.">Mastodon</a> <a class="el" href="classMastodon_1_1API.html" title="Interface to the Mastodon API.">API</a>.
<a href="classMastodon_1_1API.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="mastodon-cpp_8hpp_source.html">mastodon-cpp.hpp</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for Mastodon::API:</div>
<div class="dyncontent">
<div class="center">
<img src="classMastodon_1_1API.png" usemap="#Mastodon::API_map" alt=""/>
<map id="Mastodon::API_map" name="Mastodon::API_map">
<area href="classMastodon_1_1Easy_1_1API.html" title="Child of Mastodon::API with abstract methods." alt="Mastodon::Easy::API" shape="rect" coords="0,56,127,80"/>
</map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMastodon_1_1API_1_1http.html">http</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">http class. Do not use this directly. <a href="classMastodon_1_1API_1_1http.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:a3b88e9c1ff8daee1e730c3f3de1e2853"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMastodon_1_1API.html#a3b88e9c1ff8daee1e730c3f3de1e2853">v1</a> { <br />
&#160;&#160;<b>accounts_id</b>,
<b>accounts</b>,
<b>accounts_verify_credentials</b>,
<b>accounts_update_credentials</b>,
<br />
&#160;&#160;<b>accounts_id_followers</b>,
<b>accounts_id_following</b>,
<b>accounts_id_statuses</b>,
<b>accounts_id_follow</b>,
<br />
&#160;&#160;<b>accounts_id_unfollow</b>,
<b>accounts_relationships</b>,
<b>accounts_search</b>,
<b>apps</b>,
<br />
&#160;&#160;<b>apps_verify_credentials</b>,
<b>blocks</b>,
<b>accounts_id_block</b>,
<b>accounts_id_unblock</b>,
<br />
&#160;&#160;<b>custom_emojis</b>,
<b>domain_blocks</b>,
<b>endorsements</b>,
<b>accounts_id_pin</b>,
<br />
&#160;&#160;<b>accounts_id_unpin</b>,
<b>favourites</b>,
<b>statuses_id_favourite</b>,
<b>statuses_id_unfavourite</b>,
<br />
&#160;&#160;<b>filters</b>,
<b>filters_id</b>,
<b>follow_requests</b>,
<b>follow_requests_id_authorize</b>,
<br />
&#160;&#160;<b>follow_requests_id_reject</b>,
<b>suggestions</b>,
<b>suggestions_accountid</b>,
<b>instance</b>,
<br />
&#160;&#160;<b>lists</b>,
<b>accounts_id_lists</b>,
<b>lists_id_accounts</b>,
<b>lists_id</b>,
<br />
&#160;&#160;<b>media</b>,
<b>media_id</b>,
<b>mutes</b>,
<b>accounts_id_mute</b>,
<br />
&#160;&#160;<b>accounts_id_unmute</b>,
<b>statuses_id_mute</b>,
<b>statuses_id_unmute</b>,
<b>notifications</b>,
<br />
&#160;&#160;<b>notifications_id</b>,
<b>notifications_clear</b>,
<b>notifications_dismiss</b>,
<b>push_subscription</b>,
<br />
&#160;&#160;<b>polls_id</b>,
<b>polls_id_votes</b>,
<b>reports</b>,
<b>statuses_id</b>,
<br />
&#160;&#160;<b>statuses_id_context</b>,
<b>statuses_id_card</b>,
<b>statuses_id_reblogged_by</b>,
<b>statuses_id_favourited_by</b>,
<br />
&#160;&#160;<b>statuses</b>,
<b>statuses_id_reblog</b>,
<b>statuses_id_unreblog</b>,
<b>statuses_id_pin</b>,
<br />
&#160;&#160;<b>statuses_id_unpin</b>,
<b>timelines_home</b>,
<b>conversations</b>,
<b>timelines_public</b>,
<br />
&#160;&#160;<b>timelines_tag_hashtag</b>,
<b>timelines_list_list_id</b>,
<b>streaming_health</b>,
<b>streaming_user</b>,
<br />
&#160;&#160;<b>streaming_public</b>,
<b>streaming_public_local</b>,
<b>streaming_hashtag</b>,
<b>streaming_hashtag_local</b>,
<br />
&#160;&#160;<b>streaming_list</b>,
<b>streaming_direct</b>,
<b>bookmarks</b>,
<b>statuses_id_bookmark</b>,
<br />
&#160;&#160;<b>statuses_id_unbookmark</b>
<br />
}</td></tr>
<tr class="memdesc:a3b88e9c1ff8daee1e730c3f3de1e2853"><td class="mdescLeft">&#160;</td><td class="mdescRight">A list of all v1 <a class="el" href="classMastodon_1_1API.html" title="Interface to the Mastodon API.">API</a> calls. <a href="classMastodon_1_1API.html#a3b88e9c1ff8daee1e730c3f3de1e2853">More...</a><br /></td></tr>
<tr class="separator:a3b88e9c1ff8daee1e730c3f3de1e2853"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa9bb595d2e7632ab9aa37a9bb6836ed0"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMastodon_1_1API.html#aa9bb595d2e7632ab9aa37a9bb6836ed0">v2</a> { <b>search</b>
}</td></tr>
<tr class="memdesc:aa9bb595d2e7632ab9aa37a9bb6836ed0"><td class="mdescLeft">&#160;</td><td class="mdescRight">A list of all v2 <a class="el" href="classMastodon_1_1API.html" title="Interface to the Mastodon API.">API</a> calls. <a href="classMastodon_1_1API.html#aa9bb595d2e7632ab9aa37a9bb6836ed0">More...</a><br /></td></tr>
<tr class="separator:aa9bb595d2e7632ab9aa37a9bb6836ed0"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a627a687d2f211d714d2e1d2bd3faf7ff"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMastodon_1_1API.html#a627a687d2f211d714d2e1d2bd3faf7ff">API</a> (const string &amp;instance, const string &amp;access_token)</td></tr>
<tr class="memdesc:a627a687d2f211d714d2e1d2bd3faf7ff"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a new <a class="el" href="classMastodon_1_1API.html" title="Interface to the Mastodon API.">API</a> object. <a href="#a627a687d2f211d714d2e1d2bd3faf7ff">More...</a><br /></td></tr>
<tr class="separator:a627a687d2f211d714d2e1d2bd3faf7ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a583ec65b542b44e4b7013f5fc830fdcd"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMastodon_1_1API.html#a583ec65b542b44e4b7013f5fc830fdcd">~API</a> ()</td></tr>
<tr class="memdesc:a583ec65b542b44e4b7013f5fc830fdcd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destroys the object. <a href="#a583ec65b542b44e4b7013f5fc830fdcd">More...</a><br /></td></tr>
<tr class="separator:a583ec65b542b44e4b7013f5fc830fdcd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae25c5e6eabb8e783d7034ee1c79ae741"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMastodon_1_1API.html#ae25c5e6eabb8e783d7034ee1c79ae741">set_useragent</a> (const string &amp;useragent)</td></tr>
<tr class="memdesc:ae25c5e6eabb8e783d7034ee1c79ae741"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the useragent. Default is mastodon-cpp/version. <a href="#ae25c5e6eabb8e783d7034ee1c79ae741">More...</a><br /></td></tr>
<tr class="separator:ae25c5e6eabb8e783d7034ee1c79ae741"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad7f0c4bbdfff6ebb769e34624329a4d0"><td class="memItemLeft" align="right" valign="top">const string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMastodon_1_1API.html#ad7f0c4bbdfff6ebb769e34624329a4d0">get_useragent</a> () const</td></tr>
<tr class="memdesc:ad7f0c4bbdfff6ebb769e34624329a4d0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the useragent. <a href="#ad7f0c4bbdfff6ebb769e34624329a4d0">More...</a><br /></td></tr>
<tr class="separator:ad7f0c4bbdfff6ebb769e34624329a4d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a06ad0990a9c21f20fbd2e17f03d1f75b"><td class="memItemLeft" align="right" valign="top">const string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMastodon_1_1API.html#a06ad0990a9c21f20fbd2e17f03d1f75b">get_instance</a> () const</td></tr>
<tr class="memdesc:a06ad0990a9c21f20fbd2e17f03d1f75b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the instance. <a href="#a06ad0990a9c21f20fbd2e17f03d1f75b">More...</a><br /></td></tr>
<tr class="separator:a06ad0990a9c21f20fbd2e17f03d1f75b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaca8304e4665ba8ca41c460e016e4cc4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structMastodon_1_1return__call.html">return_call</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMastodon_1_1API.html#aaca8304e4665ba8ca41c460e016e4cc4">register_app1</a> (const string &amp;client_name, const string &amp;redirect_uri, const string &amp;scopes, const string &amp;website, string &amp;client_id, string &amp;client_secret, string &amp;url)</td></tr>
<tr class="memdesc:aaca8304e4665ba8ca41c460e016e4cc4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Register application, step 1/2. <a href="#aaca8304e4665ba8ca41c460e016e4cc4">More...</a><br /></td></tr>
<tr class="separator:aaca8304e4665ba8ca41c460e016e4cc4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a525be6cb5787e431b75d1e851fb49a57"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structMastodon_1_1return__call.html">return_call</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMastodon_1_1API.html#a525be6cb5787e431b75d1e851fb49a57">register_app2</a> (const string &amp;client_id, const string &amp;client_secret, const string &amp;redirect_uri, const string &amp;code, string &amp;access_token)</td></tr>
<tr class="memdesc:a525be6cb5787e431b75d1e851fb49a57"><td class="mdescLeft">&#160;</td><td class="mdescRight">Register application, step 2/2. <a href="#a525be6cb5787e431b75d1e851fb49a57">More...</a><br /></td></tr>
<tr class="separator:a525be6cb5787e431b75d1e851fb49a57"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad7392af31cff2a6b446aea1e6b58cbaf"><td class="memItemLeft" align="right" valign="top">const string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMastodon_1_1API.html#ad7392af31cff2a6b446aea1e6b58cbaf">get_header</a> (const string &amp;header) const</td></tr>
<tr class="memdesc:ad7392af31cff2a6b446aea1e6b58cbaf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the header from the last answer. <a href="#ad7392af31cff2a6b446aea1e6b58cbaf">More...</a><br /></td></tr>
<tr class="separator:ad7392af31cff2a6b446aea1e6b58cbaf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4e8d254c512c2038323437a1be1641d7"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMastodon_1_1API.html#a4e8d254c512c2038323437a1be1641d7">exceptions</a> (const bool &amp;value)</td></tr>
<tr class="memdesc:a4e8d254c512c2038323437a1be1641d7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Turn exceptions on or off. Defaults to off. <a href="#a4e8d254c512c2038323437a1be1641d7">More...</a><br /></td></tr>
<tr class="separator:a4e8d254c512c2038323437a1be1641d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a98bc9bbca936ddacab18df7854ec80fe"><td class="memItemLeft" align="right" valign="top"><a id="a98bc9bbca936ddacab18df7854ec80fe"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMastodon_1_1API.html#a98bc9bbca936ddacab18df7854ec80fe">exceptions</a> () const</td></tr>
<tr class="memdesc:a98bc9bbca936ddacab18df7854ec80fe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if exceptions are turned on, false otherwise. <br /></td></tr>
<tr class="separator:a98bc9bbca936ddacab18df7854ec80fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a68fc414dbd80da0236dbcc19bf9634e3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMastodon_1_1API.html#a68fc414dbd80da0236dbcc19bf9634e3">set_proxy</a> (const string &amp;hostport, const string &amp;userpw=&quot;&quot;)</td></tr>
<tr class="memdesc:a68fc414dbd80da0236dbcc19bf9634e3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the proxy. <a href="#a68fc414dbd80da0236dbcc19bf9634e3">More...</a><br /></td></tr>
<tr class="separator:a68fc414dbd80da0236dbcc19bf9634e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaa9c68543d4778ba55d67f295fecdf5e"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structMastodon_1_1return__call.html">return_call</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMastodon_1_1API.html#aaa9c68543d4778ba55d67f295fecdf5e">get</a> (const <a class="el" href="classMastodon_1_1API.html#a3b88e9c1ff8daee1e730c3f3de1e2853">Mastodon::API::v1</a> &amp;call)</td></tr>
<tr class="memdesc:aaa9c68543d4778ba55d67f295fecdf5e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Make a GET request that doesn't require parameters. <a href="#aaa9c68543d4778ba55d67f295fecdf5e">More...</a><br /></td></tr>
<tr class="separator:aaa9c68543d4778ba55d67f295fecdf5e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a241ccc182e920c377d3c6c473f7a99a5"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structMastodon_1_1return__call.html">return_call</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMastodon_1_1API.html#a241ccc182e920c377d3c6c473f7a99a5">get</a> (const <a class="el" href="classMastodon_1_1API.html#a3b88e9c1ff8daee1e730c3f3de1e2853">Mastodon::API::v1</a> &amp;call, const <a class="el" href="structMastodon_1_1parameters.html">parameters</a> &amp;<a class="el" href="structMastodon_1_1parameters.html">parameters</a>)</td></tr>
<tr class="memdesc:a241ccc182e920c377d3c6c473f7a99a5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Make a GET request that requires parameters. <a href="#a241ccc182e920c377d3c6c473f7a99a5">More...</a><br /></td></tr>
<tr class="separator:a241ccc182e920c377d3c6c473f7a99a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ace263f91446f93b6c2ed1c1a22bf148a"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structMastodon_1_1return__call.html">return_call</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMastodon_1_1API.html#ace263f91446f93b6c2ed1c1a22bf148a">get</a> (const <a class="el" href="classMastodon_1_1API.html#aa9bb595d2e7632ab9aa37a9bb6836ed0">Mastodon::API::v2</a> &amp;call, const <a class="el" href="structMastodon_1_1parameters.html">parameters</a> &amp;<a class="el" href="structMastodon_1_1parameters.html">parameters</a>)</td></tr>
<tr class="memdesc:ace263f91446f93b6c2ed1c1a22bf148a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Make a GET request that requires parameters. <a href="#ace263f91446f93b6c2ed1c1a22bf148a">More...</a><br /></td></tr>
<tr class="separator:ace263f91446f93b6c2ed1c1a22bf148a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a617e7c7b6d4733596a617418271929dd"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structMastodon_1_1return__call.html">return_call</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMastodon_1_1API.html#a617e7c7b6d4733596a617418271929dd">get</a> (const string &amp;call)</td></tr>
<tr class="memdesc:a617e7c7b6d4733596a617418271929dd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Make a custom GET request. <a href="#a617e7c7b6d4733596a617418271929dd">More...</a><br /></td></tr>
<tr class="separator:a617e7c7b6d4733596a617418271929dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a699e4557aef3419b05c4231d0b65388b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMastodon_1_1API.html#a699e4557aef3419b05c4231d0b65388b">get_stream</a> (const <a class="el" href="classMastodon_1_1API.html#a3b88e9c1ff8daee1e730c3f3de1e2853">Mastodon::API::v1</a> &amp;call, const <a class="el" href="structMastodon_1_1parameters.html">parameters</a> &amp;<a class="el" href="structMastodon_1_1parameters.html">parameters</a>, unique_ptr&lt; <a class="el" href="classMastodon_1_1API_1_1http.html">Mastodon::API::http</a> &gt; &amp;ptr, string &amp;stream)</td></tr>
<tr class="memdesc:a699e4557aef3419b05c4231d0b65388b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Make a streaming GET request. <a href="#a699e4557aef3419b05c4231d0b65388b">More...</a><br /></td></tr>
<tr class="separator:a699e4557aef3419b05c4231d0b65388b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ada9d03d7c11cb8ab27be6c5b1d0389dd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMastodon_1_1API.html#ada9d03d7c11cb8ab27be6c5b1d0389dd">get_stream</a> (const <a class="el" href="classMastodon_1_1API.html#a3b88e9c1ff8daee1e730c3f3de1e2853">Mastodon::API::v1</a> &amp;call, unique_ptr&lt; <a class="el" href="classMastodon_1_1API_1_1http.html">Mastodon::API::http</a> &gt; &amp;ptr, string &amp;stream)</td></tr>
<tr class="memdesc:ada9d03d7c11cb8ab27be6c5b1d0389dd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Make a streaming GET request. <a href="#ada9d03d7c11cb8ab27be6c5b1d0389dd">More...</a><br /></td></tr>
<tr class="separator:ada9d03d7c11cb8ab27be6c5b1d0389dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ada16cafe51288305a9d784a04df8b7f6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMastodon_1_1API.html#ada16cafe51288305a9d784a04df8b7f6">get_stream</a> (const string &amp;call, unique_ptr&lt; <a class="el" href="classMastodon_1_1API_1_1http.html">Mastodon::API::http</a> &gt; &amp;ptr, string &amp;stream)</td></tr>
<tr class="memdesc:ada16cafe51288305a9d784a04df8b7f6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Make a streaming GET request. <a href="#ada16cafe51288305a9d784a04df8b7f6">More...</a><br /></td></tr>
<tr class="separator:ada16cafe51288305a9d784a04df8b7f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a078bd5bd28f29a0b748e2e6da753c4c1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structMastodon_1_1return__call.html">return_call</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMastodon_1_1API.html#a078bd5bd28f29a0b748e2e6da753c4c1">patch</a> (const <a class="el" href="classMastodon_1_1API.html#a3b88e9c1ff8daee1e730c3f3de1e2853">Mastodon::API::v1</a> &amp;call, const <a class="el" href="structMastodon_1_1parameters.html">parameters</a> &amp;<a class="el" href="structMastodon_1_1parameters.html">parameters</a>)</td></tr>
<tr class="memdesc:a078bd5bd28f29a0b748e2e6da753c4c1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Make a PATCH request. <a href="#a078bd5bd28f29a0b748e2e6da753c4c1">More...</a><br /></td></tr>
<tr class="separator:a078bd5bd28f29a0b748e2e6da753c4c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3399557caf20d73656c4e720b8538c1a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structMastodon_1_1return__call.html">return_call</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMastodon_1_1API.html#a3399557caf20d73656c4e720b8538c1a">post</a> (const <a class="el" href="classMastodon_1_1API.html#a3b88e9c1ff8daee1e730c3f3de1e2853">Mastodon::API::v1</a> &amp;call)</td></tr>
<tr class="memdesc:a3399557caf20d73656c4e720b8538c1a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Make a POST request that doesn't require parameters. <a href="#a3399557caf20d73656c4e720b8538c1a">More...</a><br /></td></tr>
<tr class="separator:a3399557caf20d73656c4e720b8538c1a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a73649c4d8eb408883e1cd7b590771d3a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structMastodon_1_1return__call.html">return_call</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMastodon_1_1API.html#a73649c4d8eb408883e1cd7b590771d3a">post</a> (const <a class="el" href="classMastodon_1_1API.html#a3b88e9c1ff8daee1e730c3f3de1e2853">Mastodon::API::v1</a> &amp;call, const <a class="el" href="structMastodon_1_1parameters.html">parameters</a> &amp;<a class="el" href="structMastodon_1_1parameters.html">parameters</a>)</td></tr>
<tr class="memdesc:a73649c4d8eb408883e1cd7b590771d3a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Make a POST request that requires parameters. <a href="#a73649c4d8eb408883e1cd7b590771d3a">More...</a><br /></td></tr>
<tr class="separator:a73649c4d8eb408883e1cd7b590771d3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abe779579d04033f6de4372c6690cb9af"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structMastodon_1_1return__call.html">return_call</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMastodon_1_1API.html#abe779579d04033f6de4372c6690cb9af">post</a> (const string &amp;call, const <a class="el" href="structMastodon_1_1parameters.html">parameters</a> &amp;<a class="el" href="structMastodon_1_1parameters.html">parameters</a>)</td></tr>
<tr class="memdesc:abe779579d04033f6de4372c6690cb9af"><td class="mdescLeft">&#160;</td><td class="mdescRight">Make a custom POST request. <a href="#abe779579d04033f6de4372c6690cb9af">More...</a><br /></td></tr>
<tr class="separator:abe779579d04033f6de4372c6690cb9af"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a062ed2f6d92af32c25d87fa0eb15a9ea"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structMastodon_1_1return__call.html">return_call</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMastodon_1_1API.html#a062ed2f6d92af32c25d87fa0eb15a9ea">put</a> (const <a class="el" href="classMastodon_1_1API.html#a3b88e9c1ff8daee1e730c3f3de1e2853">Mastodon::API::v1</a> &amp;call, const <a class="el" href="structMastodon_1_1parameters.html">parameters</a> &amp;<a class="el" href="structMastodon_1_1parameters.html">parameters</a>)</td></tr>
<tr class="memdesc:a062ed2f6d92af32c25d87fa0eb15a9ea"><td class="mdescLeft">&#160;</td><td class="mdescRight">Make a PUT request that requires parameters. <a href="#a062ed2f6d92af32c25d87fa0eb15a9ea">More...</a><br /></td></tr>
<tr class="separator:a062ed2f6d92af32c25d87fa0eb15a9ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2cd53f56bf1557a17cc5c6a388d86101"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structMastodon_1_1return__call.html">return_call</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMastodon_1_1API.html#a2cd53f56bf1557a17cc5c6a388d86101">put</a> (const string &amp;call, const <a class="el" href="structMastodon_1_1parameters.html">parameters</a> &amp;<a class="el" href="structMastodon_1_1parameters.html">parameters</a>)</td></tr>
<tr class="memdesc:a2cd53f56bf1557a17cc5c6a388d86101"><td class="mdescLeft">&#160;</td><td class="mdescRight">Make a custom PUT request. <a href="#a2cd53f56bf1557a17cc5c6a388d86101">More...</a><br /></td></tr>
<tr class="separator:a2cd53f56bf1557a17cc5c6a388d86101"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad36109d74db7fe1371db5f96e8a1275f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structMastodon_1_1return__call.html">return_call</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMastodon_1_1API.html#ad36109d74db7fe1371db5f96e8a1275f">del</a> (const <a class="el" href="classMastodon_1_1API.html#a3b88e9c1ff8daee1e730c3f3de1e2853">Mastodon::API::v1</a> &amp;call, const <a class="el" href="structMastodon_1_1parameters.html">parameters</a> &amp;<a class="el" href="structMastodon_1_1parameters.html">parameters</a>)</td></tr>
<tr class="memdesc:ad36109d74db7fe1371db5f96e8a1275f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Make a DELETE request that requires parameters. <a href="#ad36109d74db7fe1371db5f96e8a1275f">More...</a><br /></td></tr>
<tr class="separator:ad36109d74db7fe1371db5f96e8a1275f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0f47dc5316c8a151686187c415d068c1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structMastodon_1_1return__call.html">return_call</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMastodon_1_1API.html#a0f47dc5316c8a151686187c415d068c1">del</a> (const string &amp;call, const <a class="el" href="structMastodon_1_1parameters.html">parameters</a> &amp;<a class="el" href="structMastodon_1_1parameters.html">parameters</a>)</td></tr>
<tr class="memdesc:a0f47dc5316c8a151686187c415d068c1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Make a custom DELETE request. <a href="#a0f47dc5316c8a151686187c415d068c1">More...</a><br /></td></tr>
<tr class="separator:a0f47dc5316c8a151686187c415d068c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:a100eb453092465554a259715a6c1bee7"><td class="memItemLeft" align="right" valign="top">static const string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMastodon_1_1API.html#a100eb453092465554a259715a6c1bee7">urlencode</a> (const string &amp;str)</td></tr>
<tr class="memdesc:a100eb453092465554a259715a6c1bee7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Alias for <a class="el" href="namespaceMastodon.html#ac158102db9a826fb398440b80ff30d48" title="Percent-encodes a string.">Mastodon::urlencode</a>. <a href="#a100eb453092465554a259715a6c1bee7">More...</a><br /></td></tr>
<tr class="separator:a100eb453092465554a259715a6c1bee7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5e7f2c0e0a07ae1f8ee838c80a4abc79"><td class="memItemLeft" align="right" valign="top">static const string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMastodon_1_1API.html#a5e7f2c0e0a07ae1f8ee838c80a4abc79">urldecode</a> (const string &amp;str)</td></tr>
<tr class="memdesc:a5e7f2c0e0a07ae1f8ee838c80a4abc79"><td class="mdescLeft">&#160;</td><td class="mdescRight">Alias for <a class="el" href="namespaceMastodon.html#acf85e4594279ae65238596ed94e82810" title="Decodes a percent-encoded string.">Mastodon::urldecode</a>. <a href="#a5e7f2c0e0a07ae1f8ee838c80a4abc79">More...</a><br /></td></tr>
<tr class="separator:a5e7f2c0e0a07ae1f8ee838c80a4abc79"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a52ea24477c513aa211cf724be7a570f6"><td class="memItemLeft" align="right" valign="top">static const string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMastodon_1_1API.html#a52ea24477c513aa211cf724be7a570f6">unescape_html</a> (const string &amp;html)</td></tr>
<tr class="memdesc:a52ea24477c513aa211cf724be7a570f6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Alias for <a class="el" href="namespaceMastodon.html#ae55e69517007dde071f01dcafd44ad36" title="Replaces HTML entities with UTF-8 characters.">Mastodon::unescape_html</a>. <a href="#a52ea24477c513aa211cf724be7a570f6">More...</a><br /></td></tr>
<tr class="separator:a52ea24477c513aa211cf724be7a570f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Interface to the <a class="el" href="namespaceMastodon.html" title="Collection of things to interface with server software that implements the Mastodon API.">Mastodon</a> <a class="el" href="classMastodon_1_1API.html" title="Interface to the Mastodon API.">API</a>. </p>
<pre class="fragment"> All input is expected to be UTF-8. Binary data must be a
filename.
</pre><h1><a class="anchor" id="error"></a>
Error codes</h1>
<table class="markdownTable">
<tr class="markdownTableHead">
<th class="markdownTableHeadRight">Code </th><th class="markdownTableHeadLeft">Explanation </th></tr>
<tr class="markdownTableRowOdd">
<td class="markdownTableBodyRight">0 </td><td class="markdownTableBodyLeft">No error </td></tr>
<tr class="markdownTableRowEven">
<td class="markdownTableBodyRight">1 </td><td class="markdownTableBodyLeft">Invalid argument </td></tr>
<tr class="markdownTableRowOdd">
<td class="markdownTableBodyRight">10 </td><td class="markdownTableBodyLeft">URL changed (HTTP 301 or 308) </td></tr>
<tr class="markdownTableRowEven">
<td class="markdownTableBodyRight">11 </td><td class="markdownTableBodyLeft">Connection timed out </td></tr>
<tr class="markdownTableRowOdd">
<td class="markdownTableBodyRight">12 </td><td class="markdownTableBodyLeft">Connection refused (check http_error_code) </td></tr>
<tr class="markdownTableRowEven">
<td class="markdownTableBodyRight">13 </td><td class="markdownTableBodyLeft">No route to host / Could not resolve host </td></tr>
<tr class="markdownTableRowOdd">
<td class="markdownTableBodyRight">14 </td><td class="markdownTableBodyLeft">Encryption error </td></tr>
<tr class="markdownTableRowEven">
<td class="markdownTableBodyRight">127 </td><td class="markdownTableBodyLeft">Unknown error </td></tr>
</table>
<dl class="section since"><dt>Since</dt><dd>before 0.11.0 </dd></dl>
</div><h2 class="groupheader">Member Enumeration Documentation</h2>
<a id="a3b88e9c1ff8daee1e730c3f3de1e2853"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3b88e9c1ff8daee1e730c3f3de1e2853">&#9670;&nbsp;</a></span>v1</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="classMastodon_1_1API.html#a3b88e9c1ff8daee1e730c3f3de1e2853">Mastodon::API::v1</a></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">strong</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>A list of all v1 <a class="el" href="classMastodon_1_1API.html" title="Interface to the Mastodon API.">API</a> calls. </p>
<pre class="fragment"> The original `/` are substituted by `_`.
</pre><dl class="section since"><dt>Since</dt><dd>before 0.11.0 </dd></dl>
<div class="fragment"><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; {</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="comment">// Mastodon</span></div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; accounts_id,</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; accounts,</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; accounts_verify_credentials,</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; accounts_update_credentials,</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; accounts_id_followers,</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; accounts_id_following,</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; accounts_id_statuses,</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; accounts_id_follow,</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; accounts_id_unfollow,</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; accounts_relationships,</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; accounts_search,</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; apps,</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; apps_verify_credentials,</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; blocks,</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; accounts_id_block,</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; accounts_id_unblock,</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; custom_emojis,</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; domain_blocks,</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; endorsements,</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; accounts_id_pin,</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; accounts_id_unpin,</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; favourites,</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; statuses_id_favourite,</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; statuses_id_unfavourite,</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; filters,</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; filters_id,</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160;</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; follow_requests,</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; follow_requests_id_authorize,</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; follow_requests_id_reject,</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; suggestions,</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; suggestions_accountid,</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160;</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; instance,</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160;</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; lists,</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; accounts_id_lists,</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; lists_id_accounts,</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; lists_id,</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160;</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; media,</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; media_id,</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; mutes,</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; accounts_id_mute,</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; accounts_id_unmute,</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; statuses_id_mute,</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; statuses_id_unmute,</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; notifications,</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; notifications_id,</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; notifications_clear,</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; notifications_dismiss,</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; push_subscription,</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160;</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; polls_id,</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; polls_id_votes,</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160;</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; reports,</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160;</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; <span class="comment">// scheduled_statuses,</span></div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; <span class="comment">// scheduled_statuses_id,</span></div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160;</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; statuses_id,</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; statuses_id_context,</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; statuses_id_card,</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; statuses_id_reblogged_by,</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; statuses_id_favourited_by,</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; statuses,</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; statuses_id_reblog,</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; statuses_id_unreblog,</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; statuses_id_pin,</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; statuses_id_unpin,</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160;</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; timelines_home,</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; conversations,</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; timelines_public,</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; timelines_tag_hashtag,</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; timelines_list_list_id,</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160;</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; streaming_health,</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; streaming_user,</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; streaming_public,</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; streaming_public_local,</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; streaming_hashtag,</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; streaming_hashtag_local,</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; streaming_list,</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; streaming_direct,</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160;</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; <span class="comment">// Glitch-Soc</span></div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; bookmarks,</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; statuses_id_bookmark,</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; statuses_id_unbookmark</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; };</div></div><!-- fragment -->
</div>
</div>
<a id="aa9bb595d2e7632ab9aa37a9bb6836ed0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa9bb595d2e7632ab9aa37a9bb6836ed0">&#9670;&nbsp;</a></span>v2</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="classMastodon_1_1API.html#aa9bb595d2e7632ab9aa37a9bb6836ed0">Mastodon::API::v2</a></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">strong</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>A list of all v2 <a class="el" href="classMastodon_1_1API.html" title="Interface to the Mastodon API.">API</a> calls. </p>
<pre class="fragment"> The original `/` are substituted by `_`.
</pre><dl class="section since"><dt>Since</dt><dd>0.16.0 </dd></dl>
<div class="fragment"><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; {</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; search</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; };</div></div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a627a687d2f211d714d2e1d2bd3faf7ff"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a627a687d2f211d714d2e1d2bd3faf7ff">&#9670;&nbsp;</a></span>API()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">API::API </td>
<td>(</td>
<td class="paramtype">const string &amp;&#160;</td>
<td class="paramname"><em>instance</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const string &amp;&#160;</td>
<td class="paramname"><em>access_token</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">explicit</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructs a new <a class="el" href="classMastodon_1_1API.html" title="Interface to the Mastodon API.">API</a> object. </p>
<pre class="fragment"> To register your application, leave access_token blank and
call register_app1() and register_app2().
</pre><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">instance</td><td>The hostname of your instance </td></tr>
<tr><td class="paramname">access_token</td><td>Your access token.</td></tr>
</table>
</dd>
</dl>
<dl class="section since"><dt>Since</dt><dd>before 0.11.0 </dd></dl>
<div class="fragment"><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;: _instance(instance)</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;, _access_token(access_token)</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;, _useragent(<span class="keywordtype">string</span>(<span class="stringliteral">&quot;mastodon-cpp/&quot;</span>) + global::version)</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;, _http(*<span class="keyword">this</span>, instance, access_token)</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;, _exceptions(<span class="keyword">false</span>)</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;{</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <span class="keywordtype">bool</span> fash = <span class="keyword">false</span>;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="keyword">const</span> std::regex re_gab(<span class="stringliteral">&quot;(?:\\.|^)gab\\.[^\\.]+$&quot;</span>);</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="keyword">const</span> std::regex re_kiwifarms(<span class="stringliteral">&quot;(?:\\.|^)kiwifarms\\.[^\\.]+$&quot;</span>);</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> std::regex &amp;re : { re_gab, re_kiwifarms })</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; {</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="keywordflow">if</span> (std::regex_search(_instance, re))</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; {</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; fash = <span class="keyword">true</span>;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; }</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; }</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keywordflow">if</span> (fash)</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; {</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keywordflow">throw</span> std::runtime_error(<span class="stringliteral">&quot;Fascist instance detected: &quot;</span> + _instance);</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; }</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a583ec65b542b44e4b7013f5fc830fdcd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a583ec65b542b44e4b7013f5fc830fdcd">&#9670;&nbsp;</a></span>~API()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">API::~API </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Destroys the object. </p>
<dl class="section since"><dt>Since</dt><dd>0.100.0 </dd></dl>
<div class="fragment"><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;{}</div></div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="ad36109d74db7fe1371db5f96e8a1275f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad36109d74db7fe1371db5f96e8a1275f">&#9670;&nbsp;</a></span>del() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structMastodon_1_1return__call.html">return_call</a> API::del </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classMastodon_1_1API.html#a3b88e9c1ff8daee1e730c3f3de1e2853">Mastodon::API::v1</a> &amp;&#160;</td>
<td class="paramname"><em>call</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structMastodon_1_1parameters.html">parameters</a> &amp;&#160;</td>
<td class="paramname"><em>parameters</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Make a DELETE request that requires parameters. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">call</td><td>A call defined in <a class="el" href="classMastodon_1_1API.html#a3b88e9c1ff8daee1e730c3f3de1e2853" title="A list of all v1 API calls.">Mastodon::API::v1</a> </td></tr>
<tr><td class="paramname">parameters</td><td>A Mastodon::parametermap containing parameters</td></tr>
</table>
</dd>
</dl>
<dl class="section since"><dt>Since</dt><dd>0.100.0 </dd></dl>
<div class="fragment"><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;{</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; <span class="keywordtype">string</span> strcall = <span class="stringliteral">&quot;&quot;</span>;</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; <span class="keywordtype">string</span> strid = <span class="stringliteral">&quot;&quot;</span>;</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; <span class="comment">// The ID is part of the path</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <span class="keyword">const</span> parameters::const_iterator &amp;it_id = params.find(<span class="stringliteral">&quot;id&quot;</span>);</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; <span class="keyword">const</span> parameters::const_iterator &amp;it_aid = params.find(<span class="stringliteral">&quot;accountid&quot;</span>);</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; <span class="keywordflow">if</span> (it_id != params.end())</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; {</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; strid = it_id-&gt;values[0];</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; }</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (it_aid != params.end())</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; {</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; strid = it_aid-&gt;values[0];</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; }</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="keywordflow">switch</span> (call)</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; {</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keywordflow">case</span> v1::domain_blocks:</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; {</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/domain_blocks&quot;</span>;</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; }</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keywordflow">case</span> v1::lists_id:</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; {</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/lists/&quot;</span> + strid;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; }</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keywordflow">case</span> v1::lists_id_accounts:</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; {</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/lists/&quot;</span> + strid + <span class="stringliteral">&quot;/accounts&quot;</span>;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; }</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keywordflow">case</span> v1::statuses_id:</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; {</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/statuses/&quot;</span> + strid;</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; }</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keywordflow">case</span> v1::push_subscription:</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; {</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/push/subscription&quot;</span>;</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; }</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordflow">case</span> v1::filters_id:</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; {</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/filters/&quot;</span> + strid;</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; }</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">case</span> v1::suggestions_accountid:</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; {</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/suggestions/&quot;</span> + strid;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; }</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; {</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; ttdebug &lt;&lt; <span class="stringliteral">&quot;ERROR: Invalid argument.\n&quot;</span>;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keywordflow">return</span> { error::INVALID_ARGUMENT, <span class="stringliteral">&quot;Invalid argument&quot;</span>, 0, <span class="stringliteral">&quot;&quot;</span> };</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; }</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; }</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classMastodon_1_1API.html#ad36109d74db7fe1371db5f96e8a1275f">del</a>(strcall, params);</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;}</div><div class="ttc" id="classMastodon_1_1API_html_ad36109d74db7fe1371db5f96e8a1275f"><div class="ttname"><a href="classMastodon_1_1API.html#ad36109d74db7fe1371db5f96e8a1275f">Mastodon::API::del</a></div><div class="ttdeci">return_call del(const Mastodon::API::v1 &amp;call, const parameters &amp;parameters)</div><div class="ttdoc">Make a DELETE request that requires parameters.</div><div class="ttdef"><b>Definition:</b> delete.cpp:23</div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a0f47dc5316c8a151686187c415d068c1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0f47dc5316c8a151686187c415d068c1">&#9670;&nbsp;</a></span>del() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structMastodon_1_1return__call.html">return_call</a> Mastodon::API::del </td>
<td>(</td>
<td class="paramtype">const string &amp;&#160;</td>
<td class="paramname"><em>call</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structMastodon_1_1parameters.html">parameters</a> &amp;&#160;</td>
<td class="paramname"><em>parameters</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Make a custom DELETE request. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">call</td><td>String in the form <code>/api/v1/example</code> </td></tr>
<tr><td class="paramname">parameters</td><td>A Mastodon::parametermap containing parameters</td></tr>
</table>
</dd>
</dl>
<dl class="section since"><dt>Since</dt><dd>0.100.0 </dd></dl>
</div>
</div>
<a id="a4e8d254c512c2038323437a1be1641d7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4e8d254c512c2038323437a1be1641d7">&#9670;&nbsp;</a></span>exceptions()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool API::exceptions </td>
<td>(</td>
<td class="paramtype">const bool &amp;&#160;</td>
<td class="paramname"><em>value</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Turn exceptions on or off. Defaults to off. </p>
<pre class="fragment"> Most exceptions will be thrown at you to handle if on.
</pre><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">value</td><td>true for on, false for off</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if exceptions are turned on, false otherwise</dd></dl>
<dl class="section since"><dt>Since</dt><dd>before 0.11.0 </dd></dl>
<div class="fragment"><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160;{</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; _exceptions = value;</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <span class="keywordflow">return</span> _exceptions;</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="aaa9c68543d4778ba55d67f295fecdf5e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aaa9c68543d4778ba55d67f295fecdf5e">&#9670;&nbsp;</a></span>get() <span class="overload">[1/4]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="structMastodon_1_1return__call.html">return_call</a> API::get </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classMastodon_1_1API.html#a3b88e9c1ff8daee1e730c3f3de1e2853">Mastodon::API::v1</a> &amp;&#160;</td>
<td class="paramname"><em>call</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Make a GET request that doesn't require parameters. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">call</td><td>A call defined in <a class="el" href="classMastodon_1_1API.html#a3b88e9c1ff8daee1e730c3f3de1e2853" title="A list of all v1 API calls.">Mastodon::API::v1</a></td></tr>
</table>
</dd>
</dl>
<dl class="section since"><dt>Since</dt><dd>0.100.0 </dd></dl>
<dl class="section examples"><dt>Examples</dt><dd><a class="el" href="example01_get_public_timeline_8cpp-example.html#a2">example01_get_public_timeline.cpp</a>.</dd>
</dl>
<div class="fragment"><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160;{</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classMastodon_1_1API.html#aaa9c68543d4778ba55d67f295fecdf5e">get</a>(call, {});</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160;}</div><div class="ttc" id="classMastodon_1_1API_html_aaa9c68543d4778ba55d67f295fecdf5e"><div class="ttname"><a href="classMastodon_1_1API.html#aaa9c68543d4778ba55d67f295fecdf5e">Mastodon::API::get</a></div><div class="ttdeci">const return_call get(const Mastodon::API::v1 &amp;call)</div><div class="ttdoc">Make a GET request that doesn't require parameters.</div><div class="ttdef"><b>Definition:</b> get.cpp:298</div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a241ccc182e920c377d3c6c473f7a99a5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a241ccc182e920c377d3c6c473f7a99a5">&#9670;&nbsp;</a></span>get() <span class="overload">[2/4]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="structMastodon_1_1return__call.html">return_call</a> API::get </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classMastodon_1_1API.html#a3b88e9c1ff8daee1e730c3f3de1e2853">Mastodon::API::v1</a> &amp;&#160;</td>
<td class="paramname"><em>call</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structMastodon_1_1parameters.html">parameters</a> &amp;&#160;</td>
<td class="paramname"><em>parameters</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Make a GET request that requires parameters. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">call</td><td>A call defined in <a class="el" href="classMastodon_1_1API.html#a3b88e9c1ff8daee1e730c3f3de1e2853" title="A list of all v1 API calls.">Mastodon::API::v1</a> </td></tr>
<tr><td class="paramname">parameters</td><td>A Mastodon::parametermap containing parameters</td></tr>
</table>
</dd>
</dl>
<dl class="section since"><dt>Since</dt><dd>0.100.0 </dd></dl>
<div class="fragment"><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;{</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; <span class="keywordtype">string</span> strcall = <span class="stringliteral">&quot;&quot;</span>;</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; <span class="keywordtype">string</span> strid = <span class="stringliteral">&quot;&quot;</span>;</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <span class="comment">// The ID is part of the path</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> &amp;it_id = params.find(<span class="stringliteral">&quot;id&quot;</span>);</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; <span class="keywordflow">if</span> (it_id != params.end())</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; {</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; strid = it_id-&gt;values[0];</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; }</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <span class="keywordflow">switch</span> (call)</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; {</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; <span class="keywordflow">case</span> v1::accounts_verify_credentials:</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; {</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/accounts/verify_credentials&quot;</span>;</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; }</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keywordflow">case</span> v1::blocks:</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; {</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/blocks&quot;</span>;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; }</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keywordflow">case</span> v1::domain_blocks:</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; {</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/domain_blocks&quot;</span>;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; }</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keywordflow">case</span> v1::favourites:</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; {</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/favourites&quot;</span>;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; }</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordflow">case</span> v1::follow_requests:</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; {</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/follow_requests&quot;</span>;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; }</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keywordflow">case</span> v1::instance:</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; {</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/instance&quot;</span>;</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; }</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keywordflow">case</span> v1::custom_emojis:</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; {</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/custom_emojis&quot;</span>;</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; }</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordflow">case</span> v1::lists:</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; {</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/lists&quot;</span>;</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; }</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordflow">case</span> v1::mutes:</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; {</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/mutes&quot;</span>;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; }</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">case</span> v1::notifications:</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; {</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/notifications&quot;</span>;</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; }</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keywordflow">case</span> v1::timelines_home:</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; {</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/timelines/home&quot;</span>;</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; }</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keywordflow">case</span> v1::timelines_public:</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; {</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/timelines/public&quot;</span>;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; }</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keywordflow">case</span> v1::accounts_relationships:</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; {</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/accounts/relationships&quot;</span>;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; }</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keywordflow">case</span> v1::accounts_id:</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; {</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/accounts/&quot;</span> + strid;</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; }</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="keywordflow">case</span> v1::accounts_id_followers:</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; {</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/accounts/&quot;</span> + strid + <span class="stringliteral">&quot;/followers&quot;</span>;</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; }</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keywordflow">case</span> v1::accounts_id_following:</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; {</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/accounts/&quot;</span> + strid + <span class="stringliteral">&quot;/following&quot;</span>;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; }</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keywordflow">case</span> v1::accounts_id_statuses:</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; {</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/accounts/&quot;</span> + strid + <span class="stringliteral">&quot;/statuses&quot;</span>;</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; }</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keywordflow">case</span> v1::accounts_search:</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; {</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/accounts/search&quot;</span>;</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; }</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordflow">case</span> v1::accounts_id_lists:</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; {</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/accounts/&quot;</span> + strid + <span class="stringliteral">&quot;/lists&quot;</span>;</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; }</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordflow">case</span> v1::lists_id_accounts:</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; {</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/lists/&quot;</span> + strid + <span class="stringliteral">&quot;/accounts&quot;</span>;</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; }</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keywordflow">case</span> v1::lists_id:</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; {</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/lists/&quot;</span> + strid;</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; }</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordflow">case</span> v1::notifications_id:</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; {</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/notifications/&quot;</span> + strid;</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; }</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keywordflow">case</span> v1::statuses_id:</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; {</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/statuses/&quot;</span> + strid;</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; }</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <span class="keywordflow">case</span> v1::statuses_id_context:</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; {</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/statuses/&quot;</span> + strid + <span class="stringliteral">&quot;/context&quot;</span>;</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; }</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keywordflow">case</span> v1::statuses_id_card:</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; {</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/statuses/&quot;</span> + strid + <span class="stringliteral">&quot;/card&quot;</span>;</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; }</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="keywordflow">case</span> v1::statuses_id_reblogged_by:</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; {</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/statuses/&quot;</span> + strid + <span class="stringliteral">&quot;/reblogged_by&quot;</span>;</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; }</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keywordflow">case</span> v1::statuses_id_favourited_by:</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; {</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/statuses/&quot;</span> + strid + <span class="stringliteral">&quot;/favourited_by&quot;</span>;</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; }</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <span class="keywordflow">case</span> v1::timelines_tag_hashtag:</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; {</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="comment">// The tag is part of the path</span></div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> &amp;it = params.find(<span class="stringliteral">&quot;tag&quot;</span>);</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <span class="keywordflow">if</span> (it != params.end())</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; {</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/timelines/tag/&quot;</span> + <a class="code" href="classMastodon_1_1API.html#a100eb453092465554a259715a6c1bee7">::urlencode</a>(it-&gt;values[0]);</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; }</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; {</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; ttdebug &lt;&lt; <span class="stringliteral">&quot;ERROR: Invalid argument.\n&quot;</span>;</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; <span class="keywordflow">return</span> { error::INVALID_ARGUMENT, <span class="stringliteral">&quot;Invalid argument&quot;</span>, 0, <span class="stringliteral">&quot;&quot;</span> };</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; }</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; }</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <span class="keywordflow">case</span> v1::timelines_list_list_id:</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; {</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/timelines/list/&quot;</span> + strid;</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; }</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <span class="keywordflow">case</span> v1::push_subscription:</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; {</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/push/subscription&quot;</span>;</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; }</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <span class="keywordflow">case</span> v1::endorsements:</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; {</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/endorsements&quot;</span>;</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; }</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <span class="keywordflow">case</span> v1::bookmarks:</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; {</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/bookmarks&quot;</span>;</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; }</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; <span class="keywordflow">case</span> v1::apps_verify_credentials:</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; {</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/apps/verify_credentials&quot;</span>;</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; }</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <span class="keywordflow">case</span> v1::filters:</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; {</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/filters&quot;</span>;</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; }</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; <span class="keywordflow">case</span> v1::filters_id:</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; {</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/filters/&quot;</span> + strid;</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; }</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; <span class="keywordflow">case</span> v1::suggestions:</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; {</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/suggestions&quot;</span>;</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; }</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; <span class="keywordflow">case</span> v1::polls_id:</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; {</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/polls/&quot;</span> + strid;</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; }</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; <span class="keywordflow">case</span> v1::conversations:</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; {</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/conversations&quot;</span>;</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; }</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; <span class="keywordflow">case</span> v1::streaming_health:</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; {</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/streaming/health&quot;</span>;</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; }</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; {</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; ttdebug &lt;&lt; <span class="stringliteral">&quot;ERROR: Invalid argument.\n&quot;</span>;</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; <span class="keywordflow">return</span> { error::INVALID_ARGUMENT, <span class="stringliteral">&quot;Invalid argument&quot;</span>, 0, <span class="stringliteral">&quot;&quot;</span> };</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; }</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; }</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160;</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; <span class="keywordflow">if</span> (params.size() &gt; 0)</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; {</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; <span class="comment">// Delete the parameters that are already in strcall</span></div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <span class="keyword">const</span> <a class="code" href="structMastodon_1_1parameters.html">parameters</a> newparams = delete_params(params, { <span class="stringliteral">&quot;id&quot;</span>, <span class="stringliteral">&quot;tag&quot;</span> });</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; strcall += maptostr(newparams);</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; }</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classMastodon_1_1API.html#aaa9c68543d4778ba55d67f295fecdf5e">get</a>(strcall);</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160;}</div><div class="ttc" id="classMastodon_1_1API_html_aaa9c68543d4778ba55d67f295fecdf5e"><div class="ttname"><a href="classMastodon_1_1API.html#aaa9c68543d4778ba55d67f295fecdf5e">Mastodon::API::get</a></div><div class="ttdeci">const return_call get(const Mastodon::API::v1 &amp;call)</div><div class="ttdoc">Make a GET request that doesn't require parameters.</div><div class="ttdef"><b>Definition:</b> get.cpp:298</div></div>
<div class="ttc" id="structMastodon_1_1parameters_html"><div class="ttname"><a href="structMastodon_1_1parameters.html">Mastodon::parameters</a></div><div class="ttdoc">Vector of Mastodon::param, used for passing parameters in calls.</div><div class="ttdef"><b>Definition:</b> types.hpp:62</div></div>
<div class="ttc" id="classMastodon_1_1API_html_a100eb453092465554a259715a6c1bee7"><div class="ttname"><a href="classMastodon_1_1API.html#a100eb453092465554a259715a6c1bee7">Mastodon::API::urlencode</a></div><div class="ttdeci">static const string urlencode(const string &amp;str)</div><div class="ttdoc">Alias for Mastodon::urlencode.</div><div class="ttdef"><b>Definition:</b> mastodon-cpp.cpp:638</div></div>
</div><!-- fragment -->
</div>
</div>
<a id="ace263f91446f93b6c2ed1c1a22bf148a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ace263f91446f93b6c2ed1c1a22bf148a">&#9670;&nbsp;</a></span>get() <span class="overload">[3/4]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="structMastodon_1_1return__call.html">return_call</a> API::get </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classMastodon_1_1API.html#aa9bb595d2e7632ab9aa37a9bb6836ed0">Mastodon::API::v2</a> &amp;&#160;</td>
<td class="paramname"><em>call</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structMastodon_1_1parameters.html">parameters</a> &amp;&#160;</td>
<td class="paramname"><em>parameters</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Make a GET request that requires parameters. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">call</td><td>A call defined in <a class="el" href="classMastodon_1_1API.html#aa9bb595d2e7632ab9aa37a9bb6836ed0" title="A list of all v2 API calls.">Mastodon::API::v2</a> </td></tr>
<tr><td class="paramname">parameters</td><td>A Mastodon::parametermap containing parameters</td></tr>
</table>
</dd>
</dl>
<dl class="section since"><dt>Since</dt><dd>0.100.0 </dd></dl>
<div class="fragment"><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160;{</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; <span class="keywordtype">string</span> strcall = <span class="stringliteral">&quot;&quot;</span>;</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; <span class="keywordtype">string</span> strid = <span class="stringliteral">&quot;&quot;</span>;</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160;</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; <span class="comment">// The ID is part of the path</span></div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> &amp;it = params.find(<span class="stringliteral">&quot;id&quot;</span>);</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; <span class="keywordflow">if</span> (it != params.end())</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; {</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; strid = it-&gt;values[0];</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; }</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160;</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <span class="keywordflow">switch</span> (call)</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; {</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; <span class="keywordflow">case</span> v2::search:</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; {</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; strcall = <span class="stringliteral">&quot;/api/v2/search&quot;</span>;</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; }</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; {</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; ttdebug &lt;&lt; <span class="stringliteral">&quot;ERROR: Invalid argument.\n&quot;</span>;</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; <span class="keywordflow">return</span> { error::INVALID_ARGUMENT, <span class="stringliteral">&quot;Invalid argument&quot;</span>, 0, <span class="stringliteral">&quot;&quot;</span> };</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; }</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; }</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160;</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; <span class="keywordflow">if</span> (params.size() &gt; 0)</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; {</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; <span class="comment">// Delete the parameterss that are already in strcall</span></div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <span class="keyword">const</span> <a class="code" href="structMastodon_1_1parameters.html">parameters</a> newparams = delete_params(params, { <span class="stringliteral">&quot;id&quot;</span>, <span class="stringliteral">&quot;tag&quot;</span> });</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; strcall += maptostr(newparams);</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; }</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160;</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classMastodon_1_1API.html#aaa9c68543d4778ba55d67f295fecdf5e">get</a>(strcall);</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160;}</div><div class="ttc" id="classMastodon_1_1API_html_aaa9c68543d4778ba55d67f295fecdf5e"><div class="ttname"><a href="classMastodon_1_1API.html#aaa9c68543d4778ba55d67f295fecdf5e">Mastodon::API::get</a></div><div class="ttdeci">const return_call get(const Mastodon::API::v1 &amp;call)</div><div class="ttdoc">Make a GET request that doesn't require parameters.</div><div class="ttdef"><b>Definition:</b> get.cpp:298</div></div>
<div class="ttc" id="structMastodon_1_1parameters_html"><div class="ttname"><a href="structMastodon_1_1parameters.html">Mastodon::parameters</a></div><div class="ttdoc">Vector of Mastodon::param, used for passing parameters in calls.</div><div class="ttdef"><b>Definition:</b> types.hpp:62</div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a617e7c7b6d4733596a617418271929dd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a617e7c7b6d4733596a617418271929dd">&#9670;&nbsp;</a></span>get() <span class="overload">[4/4]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="structMastodon_1_1return__call.html">return_call</a> Mastodon::API::get </td>
<td>(</td>
<td class="paramtype">const string &amp;&#160;</td>
<td class="paramname"><em>call</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Make a custom GET request. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">call</td><td>String in the form <code>/api/v1/example</code></td></tr>
</table>
</dd>
</dl>
<dl class="section since"><dt>Since</dt><dd>0.100.0 </dd></dl>
</div>
</div>
<a id="ad7392af31cff2a6b446aea1e6b58cbaf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad7392af31cff2a6b446aea1e6b58cbaf">&#9670;&nbsp;</a></span>get_header()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const string API::get_header </td>
<td>(</td>
<td class="paramtype">const string &amp;&#160;</td>
<td class="paramname"><em>header</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Gets the header from the last answer. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">header</td><td>The header to get</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The header, or "" on error.</dd></dl>
<dl class="section since"><dt>Since</dt><dd>before 0.11.0 </dd></dl>
<div class="fragment"><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160;{</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; <span class="keywordtype">string</span> headers;</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; _http.<a class="code" href="classMastodon_1_1API_1_1http.html#afc0e6357f12dd6e35a48aefb098ffc4a">get_headers</a>(headers);</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; <span class="keywordtype">size_t</span> startpos = headers.find(header + <span class="charliteral">&#39;:&#39;</span>);</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; <span class="keywordflow">if</span> (startpos != std::string::npos)</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; {</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; startpos = headers.find(<span class="charliteral">&#39;:&#39;</span>, startpos) + 2;</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; <span class="keywordtype">size_t</span> endpos = headers.find(<span class="stringliteral">&quot;\r\n&quot;</span>, startpos);</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; <span class="keywordflow">return</span> headers.substr(startpos, endpos - startpos);</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; }</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160;</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;&quot;</span>;</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160;}</div><div class="ttc" id="classMastodon_1_1API_1_1http_html_afc0e6357f12dd6e35a48aefb098ffc4a"><div class="ttname"><a href="classMastodon_1_1API_1_1http.html#afc0e6357f12dd6e35a48aefb098ffc4a">Mastodon::API::http::get_headers</a></div><div class="ttdeci">void get_headers(string &amp;headers) const</div><div class="ttdoc">Get all headers in a string.</div><div class="ttdef"><b>Definition:</b> http.cpp:347</div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a06ad0990a9c21f20fbd2e17f03d1f75b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a06ad0990a9c21f20fbd2e17f03d1f75b">&#9670;&nbsp;</a></span>get_instance()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const string API::get_instance </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the instance. </p>
<dl class="section return"><dt>Returns</dt><dd>The instance.</dd></dl>
<dl class="section since"><dt>Since</dt><dd>before 0.11.0 </dd></dl>
<div class="fragment"><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;{</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordflow">return</span> _instance;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a699e4557aef3419b05c4231d0b65388b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a699e4557aef3419b05c4231d0b65388b">&#9670;&nbsp;</a></span>get_stream() <span class="overload">[1/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void Mastodon::API::get_stream </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classMastodon_1_1API.html#a3b88e9c1ff8daee1e730c3f3de1e2853">Mastodon::API::v1</a> &amp;&#160;</td>
<td class="paramname"><em>call</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structMastodon_1_1parameters.html">parameters</a> &amp;&#160;</td>
<td class="paramname"><em>parameters</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unique_ptr&lt; <a class="el" href="classMastodon_1_1API_1_1http.html">Mastodon::API::http</a> &gt; &amp;&#160;</td>
<td class="paramname"><em>ptr</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">string &amp;&#160;</td>
<td class="paramname"><em>stream</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Make a streaming GET request. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">call</td><td>A call defined in <a class="el" href="classMastodon_1_1API.html#a3b88e9c1ff8daee1e730c3f3de1e2853" title="A list of all v1 API calls.">Mastodon::API::v1</a> </td></tr>
<tr><td class="paramname">parameters</td><td>A Mastodon::parametermap containing parameters </td></tr>
<tr><td class="paramname">ptr</td><td>Pointer to the http object. Can be used to call ptr-&gt;cancel_stream()</td></tr>
</table>
</dd>
</dl>
<dl class="section since"><dt>Since</dt><dd>0.100.0 </dd></dl>
<dl class="section examples"><dt>Examples</dt><dd><a class="el" href="example02_stream_8cpp-example.html#a1">example02_stream.cpp</a>.</dd>
</dl>
</div>
</div>
<a id="ada9d03d7c11cb8ab27be6c5b1d0389dd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ada9d03d7c11cb8ab27be6c5b1d0389dd">&#9670;&nbsp;</a></span>get_stream() <span class="overload">[2/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void Mastodon::API::get_stream </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classMastodon_1_1API.html#a3b88e9c1ff8daee1e730c3f3de1e2853">Mastodon::API::v1</a> &amp;&#160;</td>
<td class="paramname"><em>call</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unique_ptr&lt; <a class="el" href="classMastodon_1_1API_1_1http.html">Mastodon::API::http</a> &gt; &amp;&#160;</td>
<td class="paramname"><em>ptr</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">string &amp;&#160;</td>
<td class="paramname"><em>stream</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Make a streaming GET request. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">call</td><td>A call defined in <a class="el" href="classMastodon_1_1API.html#a3b88e9c1ff8daee1e730c3f3de1e2853" title="A list of all v1 API calls.">Mastodon::API::v1</a> </td></tr>
<tr><td class="paramname">ptr</td><td>Pointer to the http object. Can be used to call ptr-&gt;cancel_stream()</td></tr>
</table>
</dd>
</dl>
<dl class="section since"><dt>Since</dt><dd>0.100.0 </dd></dl>
</div>
</div>
<a id="ada16cafe51288305a9d784a04df8b7f6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ada16cafe51288305a9d784a04df8b7f6">&#9670;&nbsp;</a></span>get_stream() <span class="overload">[3/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void Mastodon::API::get_stream </td>
<td>(</td>
<td class="paramtype">const string &amp;&#160;</td>
<td class="paramname"><em>call</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unique_ptr&lt; <a class="el" href="classMastodon_1_1API_1_1http.html">Mastodon::API::http</a> &gt; &amp;&#160;</td>
<td class="paramname"><em>ptr</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">string &amp;&#160;</td>
<td class="paramname"><em>stream</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Make a streaming GET request. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">call</td><td>String in the form <code>/api/v1/example</code> </td></tr>
<tr><td class="paramname">ptr</td><td>Pointer to the http object. Can be used to call ptr-&gt;cancel_stream()</td></tr>
</table>
</dd>
</dl>
<dl class="section since"><dt>Since</dt><dd>0.100.0 </dd></dl>
</div>
</div>
<a id="ad7f0c4bbdfff6ebb769e34624329a4d0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad7f0c4bbdfff6ebb769e34624329a4d0">&#9670;&nbsp;</a></span>get_useragent()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const string API::get_useragent </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Gets the useragent. </p>
<dl class="section return"><dt>Returns</dt><dd>The useragent.</dd></dl>
<dl class="section since"><dt>Since</dt><dd>before 0.11.0 </dd></dl>
<div class="fragment"><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;{</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keywordflow">return</span> _useragent;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a078bd5bd28f29a0b748e2e6da753c4c1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a078bd5bd28f29a0b748e2e6da753c4c1">&#9670;&nbsp;</a></span>patch()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structMastodon_1_1return__call.html">return_call</a> API::patch </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classMastodon_1_1API.html#a3b88e9c1ff8daee1e730c3f3de1e2853">Mastodon::API::v1</a> &amp;&#160;</td>
<td class="paramname"><em>call</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structMastodon_1_1parameters.html">parameters</a> &amp;&#160;</td>
<td class="paramname"><em>parameters</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Make a PATCH request. </p>
<pre class="fragment"> Binary data must be a filename.
</pre><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">call</td><td>A call defined in <a class="el" href="classMastodon_1_1API.html#a3b88e9c1ff8daee1e730c3f3de1e2853" title="A list of all v1 API calls.">Mastodon::API::v1</a> </td></tr>
<tr><td class="paramname">parameters</td><td>A Mastodon::parametermap containing parameters</td></tr>
</table>
</dd>
</dl>
<dl class="section since"><dt>Since</dt><dd>0.100.0 </dd></dl>
<div class="fragment"><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;{</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; <span class="keywordtype">string</span> strcall = <span class="stringliteral">&quot;&quot;</span>;</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; <span class="keywordflow">switch</span> (call)</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; {</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <span class="keywordflow">case</span> v1::accounts_update_credentials:</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/accounts/update_credentials&quot;</span>;</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; ttdebug &lt;&lt; <span class="stringliteral">&quot;ERROR: Invalid argument.\n&quot;</span>;</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; <span class="keywordflow">return</span> { error::INVALID_ARGUMENT, <span class="stringliteral">&quot;Invalid argument&quot;</span>, 0, <span class="stringliteral">&quot;&quot;</span> };</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; }</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; <span class="keywordflow">return</span> _http.request(http_method::PATCH, strcall, *maptoformdata(params));</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a3399557caf20d73656c4e720b8538c1a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3399557caf20d73656c4e720b8538c1a">&#9670;&nbsp;</a></span>post() <span class="overload">[1/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structMastodon_1_1return__call.html">return_call</a> API::post </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classMastodon_1_1API.html#a3b88e9c1ff8daee1e730c3f3de1e2853">Mastodon::API::v1</a> &amp;&#160;</td>
<td class="paramname"><em>call</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Make a POST request that doesn't require parameters. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">call</td><td>A call defined in <a class="el" href="classMastodon_1_1API.html#a3b88e9c1ff8daee1e730c3f3de1e2853" title="A list of all v1 API calls.">Mastodon::API::v1</a></td></tr>
</table>
</dd>
</dl>
<dl class="section since"><dt>Since</dt><dd>0.100.0 </dd></dl>
<div class="fragment"><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;{</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <span class="keyword">const</span> <a class="code" href="structMastodon_1_1parameters.html">parameters</a> p;</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classMastodon_1_1API.html#a3399557caf20d73656c4e720b8538c1a">post</a>(call, p);</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160;}</div><div class="ttc" id="structMastodon_1_1parameters_html"><div class="ttname"><a href="structMastodon_1_1parameters.html">Mastodon::parameters</a></div><div class="ttdoc">Vector of Mastodon::param, used for passing parameters in calls.</div><div class="ttdef"><b>Definition:</b> types.hpp:62</div></div>
<div class="ttc" id="classMastodon_1_1API_html_a3399557caf20d73656c4e720b8538c1a"><div class="ttname"><a href="classMastodon_1_1API.html#a3399557caf20d73656c4e720b8538c1a">Mastodon::API::post</a></div><div class="ttdeci">return_call post(const Mastodon::API::v1 &amp;call)</div><div class="ttdoc">Make a POST request that doesn't require parameters.</div><div class="ttdef"><b>Definition:</b> post.cpp:213</div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a73649c4d8eb408883e1cd7b590771d3a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a73649c4d8eb408883e1cd7b590771d3a">&#9670;&nbsp;</a></span>post() <span class="overload">[2/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structMastodon_1_1return__call.html">return_call</a> API::post </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classMastodon_1_1API.html#a3b88e9c1ff8daee1e730c3f3de1e2853">Mastodon::API::v1</a> &amp;&#160;</td>
<td class="paramname"><em>call</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structMastodon_1_1parameters.html">parameters</a> &amp;&#160;</td>
<td class="paramname"><em>parameters</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Make a POST request that requires parameters. </p>
<pre class="fragment"> Binary data must be a filename.
</pre><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">call</td><td>A call defined in <a class="el" href="classMastodon_1_1API.html#a3b88e9c1ff8daee1e730c3f3de1e2853" title="A list of all v1 API calls.">Mastodon::API::v1</a> </td></tr>
<tr><td class="paramname">parameters</td><td>A Mastodon::parametermap containing parameters</td></tr>
</table>
</dd>
</dl>
<dl class="section since"><dt>Since</dt><dd>0.100.0 </dd></dl>
<div class="fragment"><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;{</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; <span class="keywordtype">string</span> strcall = <span class="stringliteral">&quot;&quot;</span>;</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; <span class="keywordtype">string</span> strid = <span class="stringliteral">&quot;&quot;</span>;</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; <span class="comment">// The ID is part of the path</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> &amp;it = params.find(<span class="stringliteral">&quot;id&quot;</span>);</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; <span class="keywordflow">if</span> (it != params.end())</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; {</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; strid = it-&gt;values[0];</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; }</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <span class="keywordflow">switch</span> (call)</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; {</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="keywordflow">case</span> v1::apps:</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; {</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/apps&quot;</span>;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; }</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keywordflow">case</span> v1::domain_blocks:</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; {</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/domain_blocks&quot;</span>;</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; }</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keywordflow">case</span> v1::lists:</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; {</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/lists&quot;</span>;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; }</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keywordflow">case</span> v1::media:</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; {</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/media&quot;</span>;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; }</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keywordflow">case</span> v1::notifications_clear:</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; {</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/notifications/clear&quot;</span>;</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; }</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keywordflow">case</span> v1::notifications_dismiss:</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; {</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/notifications/dismiss&quot;</span>;</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; }</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordflow">case</span> v1::reports:</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; {</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/reports&quot;</span>;</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; }</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">case</span> v1::statuses:</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; {</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/statuses&quot;</span>;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; }</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordflow">case</span> v1::accounts:</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; {</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/accounts&quot;</span>;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; }</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keywordflow">case</span> v1::accounts_id_follow:</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; {</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/accounts/&quot;</span> + strid + <span class="stringliteral">&quot;/follow&quot;</span>;</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; }</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keywordflow">case</span> v1::accounts_id_unfollow:</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; {</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/accounts/&quot;</span> + strid + <span class="stringliteral">&quot;/unfollow&quot;</span>;</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; }</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keywordflow">case</span> v1::accounts_id_block:</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; {</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/accounts/&quot;</span> + strid + <span class="stringliteral">&quot;/block&quot;</span>;</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; }</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keywordflow">case</span> v1::accounts_id_unblock:</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; {</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/accounts/&quot;</span> + strid + <span class="stringliteral">&quot;/unblock&quot;</span>;</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; }</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keywordflow">case</span> v1::accounts_id_mute:</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; {</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/accounts/&quot;</span> + strid + <span class="stringliteral">&quot;/mute&quot;</span>;</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; }</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordflow">case</span> v1::accounts_id_unmute:</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; {</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/accounts/&quot;</span> + strid + <span class="stringliteral">&quot;/unmute&quot;</span>;</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; }</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keywordflow">case</span> v1::follow_requests_id_authorize:</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; {</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/folow_requests/&quot;</span> + strid + <span class="stringliteral">&quot;/authorize&quot;</span>;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; }</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keywordflow">case</span> v1::follow_requests_id_reject:</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; {</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/folow_requests/&quot;</span> + strid + <span class="stringliteral">&quot;/reject&quot;</span>;</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; }</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keywordflow">case</span> v1::lists_id_accounts:</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; {</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/lists/&quot;</span> + strid + <span class="stringliteral">&quot;/accounts&quot;</span>;</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; }</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="keywordflow">case</span> v1::statuses_id_reblog:</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; {</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/statuses/&quot;</span> + strid + <span class="stringliteral">&quot;/reblog&quot;</span>;</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; }</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="keywordflow">case</span> v1::statuses_id_unreblog:</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; {</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/statuses/&quot;</span> + strid + <span class="stringliteral">&quot;/unreblog&quot;</span>;</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; }</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordflow">case</span> v1::statuses_id_favourite:</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; {</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/statuses/&quot;</span> + strid + <span class="stringliteral">&quot;/favourite&quot;</span>;</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; }</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <span class="keywordflow">case</span> v1::statuses_id_unfavourite:</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; {</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/statuses/&quot;</span> + strid + <span class="stringliteral">&quot;/unfavourite&quot;</span>;</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; }</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="keywordflow">case</span> v1::statuses_id_pin:</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; {</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/statuses/&quot;</span> + strid + <span class="stringliteral">&quot;/pin&quot;</span>;</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; }</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keywordflow">case</span> v1::statuses_id_unpin:</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; {</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/statuses/&quot;</span> + strid + <span class="stringliteral">&quot;/unpin&quot;</span>;</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; }</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="keywordflow">case</span> v1::statuses_id_mute:</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; {</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/statuses/&quot;</span> + strid + <span class="stringliteral">&quot;/mute&quot;</span>;</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; }</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="keywordflow">case</span> v1::statuses_id_unmute:</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; {</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/statuses/&quot;</span> + strid + <span class="stringliteral">&quot;/unmute&quot;</span>;</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; }</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <span class="keywordflow">case</span> v1::push_subscription:</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; {</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/push/subscription&quot;</span>;</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; }</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <span class="keywordflow">case</span> v1::accounts_id_pin:</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; {</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/accounts/&quot;</span> + strid + <span class="stringliteral">&quot;/pin&quot;</span>;</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; }</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <span class="keywordflow">case</span> v1::accounts_id_unpin:</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; {</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/accounts/&quot;</span> + strid + <span class="stringliteral">&quot;/unpin&quot;</span>;</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; }</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keywordflow">case</span> v1::statuses_id_bookmark:</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; {</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/statuses/&quot;</span> + strid + <span class="stringliteral">&quot;/bookmark&quot;</span>;</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; }</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <span class="keywordflow">case</span> v1::statuses_id_unbookmark:</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; {</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/statuses/&quot;</span> + strid + <span class="stringliteral">&quot;/unbookmark&quot;</span>;</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; }</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <span class="keywordflow">case</span> v1::filters:</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; {</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/filters&quot;</span>;</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; }</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <span class="keywordflow">case</span> v1::polls_id_votes:</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; {</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/polls/&quot;</span> + strid + <span class="stringliteral">&quot;/votes&quot;</span>;</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; }</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; {</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; ttdebug &lt;&lt; <span class="stringliteral">&quot;ERROR: Invalid argument.\n&quot;</span>;</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; <span class="keywordflow">return</span> { error::INVALID_ARGUMENT, <span class="stringliteral">&quot;Invalid argument&quot;</span>, 0, <span class="stringliteral">&quot;&quot;</span>};</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; }</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; }</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classMastodon_1_1API.html#a3399557caf20d73656c4e720b8538c1a">post</a>(strcall, params);</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;}</div><div class="ttc" id="classMastodon_1_1API_html_a3399557caf20d73656c4e720b8538c1a"><div class="ttname"><a href="classMastodon_1_1API.html#a3399557caf20d73656c4e720b8538c1a">Mastodon::API::post</a></div><div class="ttdeci">return_call post(const Mastodon::API::v1 &amp;call)</div><div class="ttdoc">Make a POST request that doesn't require parameters.</div><div class="ttdef"><b>Definition:</b> post.cpp:213</div></div>
</div><!-- fragment -->
</div>
</div>
<a id="abe779579d04033f6de4372c6690cb9af"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abe779579d04033f6de4372c6690cb9af">&#9670;&nbsp;</a></span>post() <span class="overload">[3/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structMastodon_1_1return__call.html">return_call</a> API::post </td>
<td>(</td>
<td class="paramtype">const string &amp;&#160;</td>
<td class="paramname"><em>call</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structMastodon_1_1parameters.html">parameters</a> &amp;&#160;</td>
<td class="paramname"><em>parameters</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Make a custom POST request. </p>
<pre class="fragment"> Binary data must be a filename.
</pre><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">call</td><td>String in the form <code>/api/v1/example</code> </td></tr>
<tr><td class="paramname">parameters</td><td>A Mastodon::parametermap containing parameters</td></tr>
</table>
</dd>
</dl>
<dl class="section since"><dt>Since</dt><dd>0.100.0 </dd></dl>
<div class="fragment"><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;{</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; <span class="keywordflow">return</span> _http.request(http_method::POST, call, *maptoformdata(params));</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a062ed2f6d92af32c25d87fa0eb15a9ea"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a062ed2f6d92af32c25d87fa0eb15a9ea">&#9670;&nbsp;</a></span>put() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structMastodon_1_1return__call.html">return_call</a> API::put </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classMastodon_1_1API.html#a3b88e9c1ff8daee1e730c3f3de1e2853">Mastodon::API::v1</a> &amp;&#160;</td>
<td class="paramname"><em>call</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structMastodon_1_1parameters.html">parameters</a> &amp;&#160;</td>
<td class="paramname"><em>parameters</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Make a PUT request that requires parameters. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">call</td><td>A call defined in <a class="el" href="classMastodon_1_1API.html#a3b88e9c1ff8daee1e730c3f3de1e2853" title="A list of all v1 API calls.">Mastodon::API::v1</a> </td></tr>
<tr><td class="paramname">parameters</td><td>A Mastodon::parametermap containing parameters</td></tr>
</table>
</dd>
</dl>
<dl class="section since"><dt>Since</dt><dd>0.100.0 </dd></dl>
<div class="fragment"><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;{</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; <span class="keywordtype">string</span> strcall = <span class="stringliteral">&quot;&quot;</span>;</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; <span class="keywordtype">string</span> strid = <span class="stringliteral">&quot;&quot;</span>;</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; <span class="comment">// The ID is part of the path</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> &amp;it = params.find(<span class="stringliteral">&quot;id&quot;</span>);</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; <span class="keywordflow">if</span> (it != params.end())</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; {</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; strid = it-&gt;values[0];</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; }</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <span class="keywordflow">switch</span> (call)</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; {</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="keywordflow">case</span> v1::lists_id:</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; {</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/lists/&quot;</span> + strid;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; }</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keywordflow">case</span> v1::media_id:</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; {</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/media/&quot;</span> + strid;</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; }</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keywordflow">case</span> v1::push_subscription:</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; {</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/push/subscription&quot;</span>;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; }</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keywordflow">case</span> v1::filters_id:</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; {</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; strcall = <span class="stringliteral">&quot;/api/v1/filters/&quot;</span> + strid;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; }</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; {</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; ttdebug &lt;&lt; <span class="stringliteral">&quot;ERROR: Invalid argument.\n&quot;</span>;</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keywordflow">return</span> { error::INVALID_ARGUMENT, <span class="stringliteral">&quot;Invalid argument&quot;</span>, 0, <span class="stringliteral">&quot;&quot;</span> };</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; }</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; }</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classMastodon_1_1API.html#a062ed2f6d92af32c25d87fa0eb15a9ea">put</a>(strcall, params);</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;}</div><div class="ttc" id="classMastodon_1_1API_html_a062ed2f6d92af32c25d87fa0eb15a9ea"><div class="ttname"><a href="classMastodon_1_1API.html#a062ed2f6d92af32c25d87fa0eb15a9ea">Mastodon::API::put</a></div><div class="ttdeci">return_call put(const Mastodon::API::v1 &amp;call, const parameters &amp;parameters)</div><div class="ttdoc">Make a PUT request that requires parameters.</div><div class="ttdef"><b>Definition:</b> put.cpp:23</div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a2cd53f56bf1557a17cc5c6a388d86101"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2cd53f56bf1557a17cc5c6a388d86101">&#9670;&nbsp;</a></span>put() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structMastodon_1_1return__call.html">return_call</a> API::put </td>
<td>(</td>
<td class="paramtype">const string &amp;&#160;</td>
<td class="paramname"><em>call</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structMastodon_1_1parameters.html">parameters</a> &amp;&#160;</td>
<td class="paramname"><em>parameters</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Make a custom PUT request. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">call</td><td>String in the form <code>/api/v1/example</code> </td></tr>
<tr><td class="paramname">parameters</td><td>A Mastodon::parametermap containing parameters</td></tr>
</table>
</dd>
</dl>
<dl class="section since"><dt>Since</dt><dd>0.100.0 </dd></dl>
<div class="fragment"><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;{</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keywordflow">return</span> _http.request(http_method::PUT, call, *maptoformdata(params));</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="aaca8304e4665ba8ca41c460e016e4cc4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aaca8304e4665ba8ca41c460e016e4cc4">&#9670;&nbsp;</a></span>register_app1()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structMastodon_1_1return__call.html">return_call</a> API::register_app1 </td>
<td>(</td>
<td class="paramtype">const string &amp;&#160;</td>
<td class="paramname"><em>client_name</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const string &amp;&#160;</td>
<td class="paramname"><em>redirect_uri</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const string &amp;&#160;</td>
<td class="paramname"><em>scopes</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const string &amp;&#160;</td>
<td class="paramname"><em>website</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">string &amp;&#160;</td>
<td class="paramname"><em>client_id</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">string &amp;&#160;</td>
<td class="paramname"><em>client_secret</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">string &amp;&#160;</td>
<td class="paramname"><em>url</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Register application, step 1/2. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">client_name</td><td>The name of the application </td></tr>
<tr><td class="paramname">redirect_uri</td><td>urn:ietf:wg:oauth:2.0:oob for none </td></tr>
<tr><td class="paramname">scopes</td><td>Scopes (<code>read</code>, <code>write</code>, <code>follow</code>, <code>push</code>; space separated) </td></tr>
<tr><td class="paramname">website</td><td>The website of the application </td></tr>
<tr><td class="paramname">client_id</td><td>Returned </td></tr>
<tr><td class="paramname">client_secret</td><td>Returned </td></tr>
<tr><td class="paramname">url</td><td>Returned, used to generate code for register_app2</td></tr>
</table>
</dd>
</dl>
<dl class="section since"><dt>Since</dt><dd>before 0.100.0 </dd></dl>
<div class="fragment"><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;{</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <a class="code" href="structMastodon_1_1parameters.html">parameters</a> params =</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; {</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; { <span class="stringliteral">&quot;client_name&quot;</span>, { client_name } },</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; { <span class="stringliteral">&quot;redirect_uris&quot;</span>, { redirect_uri } },</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; { <span class="stringliteral">&quot;scopes&quot;</span>, { scopes } },</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; { <span class="stringliteral">&quot;website&quot;</span>, { website } }</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; };</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <a class="code" href="structMastodon_1_1return__call.html">return_call</a> ret = <a class="code" href="classMastodon_1_1API.html#a3399557caf20d73656c4e720b8538c1a">post</a>(API::v1::apps, params);</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <span class="keywordflow">if</span> (ret.<a class="code" href="structMastodon_1_1return__base.html#a12cebffae19249cac4c9e4ae9f95391a">error_code</a> == 0)</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; {</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; std::smatch match;</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; std::regex reid(<span class="stringliteral">&quot;client_id\&quot;:\&quot;([^\&quot;]+)\&quot;&quot;</span>);</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; std::regex resecret(<span class="stringliteral">&quot;client_secret\&quot;:\&quot;([^\&quot;]+)\&quot;&quot;</span>);</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; std::regex_search(ret.<a class="code" href="structMastodon_1_1return__call.html#a8d9ac799e26fc5ff54592083a8a83404">answer</a>, match, reid);</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; client_id = match[1].str();</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; std::regex_search(ret.<a class="code" href="structMastodon_1_1return__call.html#a8d9ac799e26fc5ff54592083a8a83404">answer</a>, match, resecret);</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; client_secret = match[1].str();</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; url = <span class="stringliteral">&quot;https://&quot;</span> + _instance + <span class="stringliteral">&quot;/oauth/authorize&quot;</span> +</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <span class="stringliteral">&quot;?scope=&quot;</span> + <a class="code" href="classMastodon_1_1API.html#a100eb453092465554a259715a6c1bee7">::urlencode</a>(scopes) + <span class="stringliteral">&quot;&amp;response_type=code&quot;</span> +</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; <span class="stringliteral">&quot;&amp;redirect_uri=&quot;</span> + <a class="code" href="classMastodon_1_1API.html#a100eb453092465554a259715a6c1bee7">::urlencode</a>(redirect_uri) +</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; <span class="stringliteral">&quot;&amp;client_id=&quot;</span> + client_id;</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; <span class="keywordflow">if</span> (!website.empty())</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; {</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; url += <span class="stringliteral">&quot;&amp;website=&quot;</span> + <a class="code" href="classMastodon_1_1API.html#a100eb453092465554a259715a6c1bee7">::urlencode</a>(website);</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; }</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; }</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (ret.<a class="code" href="structMastodon_1_1return__base.html#a12cebffae19249cac4c9e4ae9f95391a">error_code</a> == 78)</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; {</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; url = ret.<a class="code" href="structMastodon_1_1return__call.html#a8d9ac799e26fc5ff54592083a8a83404">answer</a>;</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; }</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; {</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; std::cerr &lt;&lt; <span class="stringliteral">&quot;Error code: &quot;</span> &lt;&lt; std::to_string(ret.<a class="code" href="structMastodon_1_1return__base.html#a12cebffae19249cac4c9e4ae9f95391a">error_code</a>) &lt;&lt; <span class="charliteral">&#39;\n&#39;</span>;</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; }</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160;</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; <span class="keywordflow">return</span> ret;</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160;}</div><div class="ttc" id="structMastodon_1_1return__call_html"><div class="ttname"><a href="structMastodon_1_1return__call.html">Mastodon::return_call</a></div><div class="ttdoc">Return type for API calls.</div><div class="ttdef"><b>Definition:</b> return_types.hpp:93</div></div>
<div class="ttc" id="structMastodon_1_1parameters_html"><div class="ttname"><a href="structMastodon_1_1parameters.html">Mastodon::parameters</a></div><div class="ttdoc">Vector of Mastodon::param, used for passing parameters in calls.</div><div class="ttdef"><b>Definition:</b> types.hpp:62</div></div>
<div class="ttc" id="structMastodon_1_1return__call_html_a8d9ac799e26fc5ff54592083a8a83404"><div class="ttname"><a href="structMastodon_1_1return__call.html#a8d9ac799e26fc5ff54592083a8a83404">Mastodon::return_call::answer</a></div><div class="ttdeci">string answer</div><div class="ttdoc">The response from the server.</div><div class="ttdef"><b>Definition:</b> return_types.hpp:100</div></div>
<div class="ttc" id="structMastodon_1_1return__base_html_a12cebffae19249cac4c9e4ae9f95391a"><div class="ttname"><a href="structMastodon_1_1return__base.html#a12cebffae19249cac4c9e4ae9f95391a">Mastodon::return_base::error_code</a></div><div class="ttdeci">uint8_t error_code</div><div class="ttdoc">Error code.</div><div class="ttdef"><b>Definition:</b> return_types.hpp:42</div></div>
<div class="ttc" id="classMastodon_1_1API_html_a3399557caf20d73656c4e720b8538c1a"><div class="ttname"><a href="classMastodon_1_1API.html#a3399557caf20d73656c4e720b8538c1a">Mastodon::API::post</a></div><div class="ttdeci">return_call post(const Mastodon::API::v1 &amp;call)</div><div class="ttdoc">Make a POST request that doesn't require parameters.</div><div class="ttdef"><b>Definition:</b> post.cpp:213</div></div>
<div class="ttc" id="classMastodon_1_1API_html_a100eb453092465554a259715a6c1bee7"><div class="ttname"><a href="classMastodon_1_1API.html#a100eb453092465554a259715a6c1bee7">Mastodon::API::urlencode</a></div><div class="ttdeci">static const string urlencode(const string &amp;str)</div><div class="ttdoc">Alias for Mastodon::urlencode.</div><div class="ttdef"><b>Definition:</b> mastodon-cpp.cpp:638</div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a525be6cb5787e431b75d1e851fb49a57"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a525be6cb5787e431b75d1e851fb49a57">&#9670;&nbsp;</a></span>register_app2()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structMastodon_1_1return__call.html">return_call</a> API::register_app2 </td>
<td>(</td>
<td class="paramtype">const string &amp;&#160;</td>
<td class="paramname"><em>client_id</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const string &amp;&#160;</td>
<td class="paramname"><em>client_secret</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const string &amp;&#160;</td>
<td class="paramname"><em>redirect_uri</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const string &amp;&#160;</td>
<td class="paramname"><em>code</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">string &amp;&#160;</td>
<td class="paramname"><em>access_token</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Register application, step 2/2. </p>
<pre class="fragment"> The access token will be used in all subsequent calls.
</pre><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">client_id</td><td></td></tr>
<tr><td class="paramname">client_secret</td><td></td></tr>
<tr><td class="paramname">redirect_uri</td><td>urn:ietf:wg:oauth:2.0:oob for none </td></tr>
<tr><td class="paramname">code</td><td>The code generated by the website </td></tr>
<tr><td class="paramname">access_token</td><td>Returned</td></tr>
</table>
</dd>
</dl>
<dl class="section since"><dt>Since</dt><dd>before 0.100.0 </dd></dl>
<div class="fragment"><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;{</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <a class="code" href="structMastodon_1_1parameters.html">parameters</a> params =</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; {</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; { <span class="stringliteral">&quot;client_id&quot;</span>, { client_id } },</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; { <span class="stringliteral">&quot;client_secret&quot;</span>, { client_secret } },</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; { <span class="stringliteral">&quot;grant_type&quot;</span>, { <span class="stringliteral">&quot;authorization_code&quot;</span> } },</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; { <span class="stringliteral">&quot;redirect_uri&quot;</span>, { redirect_uri } },</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; { <span class="stringliteral">&quot;code&quot;</span>, { code } },</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; };</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160;</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; <a class="code" href="structMastodon_1_1return__call.html">return_call</a> ret = <a class="code" href="classMastodon_1_1API.html#a3399557caf20d73656c4e720b8538c1a">post</a>(<span class="stringliteral">&quot;/oauth/token&quot;</span>, params);</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; <span class="keywordflow">if</span> (ret.<a class="code" href="structMastodon_1_1return__base.html#a12cebffae19249cac4c9e4ae9f95391a">error_code</a> == 0)</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; {</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; std::smatch match;</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; std::regex retoken(<span class="stringliteral">&quot;access_token\&quot;:\&quot;([^\&quot;]+)\&quot;&quot;</span>);</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160;</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; std::regex_search(ret.<a class="code" href="structMastodon_1_1return__call.html#a8d9ac799e26fc5ff54592083a8a83404">answer</a>, match, retoken);</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; access_token = match[1].str();</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; _access_token = access_token;</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; }</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; {</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; std::cerr &lt;&lt; <span class="stringliteral">&quot;Error code: &quot;</span> &lt;&lt; std::to_string(ret.<a class="code" href="structMastodon_1_1return__base.html#a12cebffae19249cac4c9e4ae9f95391a">error_code</a>) &lt;&lt; <span class="charliteral">&#39;\n&#39;</span>;</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; }</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160;</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; <span class="keywordflow">return</span> ret;</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160;}</div><div class="ttc" id="structMastodon_1_1return__call_html"><div class="ttname"><a href="structMastodon_1_1return__call.html">Mastodon::return_call</a></div><div class="ttdoc">Return type for API calls.</div><div class="ttdef"><b>Definition:</b> return_types.hpp:93</div></div>
<div class="ttc" id="structMastodon_1_1parameters_html"><div class="ttname"><a href="structMastodon_1_1parameters.html">Mastodon::parameters</a></div><div class="ttdoc">Vector of Mastodon::param, used for passing parameters in calls.</div><div class="ttdef"><b>Definition:</b> types.hpp:62</div></div>
<div class="ttc" id="structMastodon_1_1return__call_html_a8d9ac799e26fc5ff54592083a8a83404"><div class="ttname"><a href="structMastodon_1_1return__call.html#a8d9ac799e26fc5ff54592083a8a83404">Mastodon::return_call::answer</a></div><div class="ttdeci">string answer</div><div class="ttdoc">The response from the server.</div><div class="ttdef"><b>Definition:</b> return_types.hpp:100</div></div>
<div class="ttc" id="structMastodon_1_1return__base_html_a12cebffae19249cac4c9e4ae9f95391a"><div class="ttname"><a href="structMastodon_1_1return__base.html#a12cebffae19249cac4c9e4ae9f95391a">Mastodon::return_base::error_code</a></div><div class="ttdeci">uint8_t error_code</div><div class="ttdoc">Error code.</div><div class="ttdef"><b>Definition:</b> return_types.hpp:42</div></div>
<div class="ttc" id="classMastodon_1_1API_html_a3399557caf20d73656c4e720b8538c1a"><div class="ttname"><a href="classMastodon_1_1API.html#a3399557caf20d73656c4e720b8538c1a">Mastodon::API::post</a></div><div class="ttdeci">return_call post(const Mastodon::API::v1 &amp;call)</div><div class="ttdoc">Make a POST request that doesn't require parameters.</div><div class="ttdef"><b>Definition:</b> post.cpp:213</div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a68fc414dbd80da0236dbcc19bf9634e3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a68fc414dbd80da0236dbcc19bf9634e3">&#9670;&nbsp;</a></span>set_proxy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void API::set_proxy </td>
<td>(</td>
<td class="paramtype">const string &amp;&#160;</td>
<td class="paramname"><em>hostport</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const string &amp;&#160;</td>
<td class="paramname"><em>userpw</em> = <code>&quot;&quot;</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets the proxy. </p>
<pre class="fragment"> Both the username and the password will be URL decoded
before use.
</pre><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">hostport</td><td>host[:port] </td></tr>
<tr><td class="paramname">userpw</td><td>username[:password] (optional)</td></tr>
</table>
</dd>
</dl>
<dl class="section since"><dt>Since</dt><dd>0.15.0 </dd></dl>
<div class="fragment"><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160;{</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; _http.<a class="code" href="classMastodon_1_1API_1_1http.html#a968ad405015285e12cf22dd9d6395ddb">set_proxy</a>(hostport, userpw);</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160;}</div><div class="ttc" id="classMastodon_1_1API_1_1http_html_a968ad405015285e12cf22dd9d6395ddb"><div class="ttname"><a href="classMastodon_1_1API_1_1http.html#a968ad405015285e12cf22dd9d6395ddb">Mastodon::API::http::set_proxy</a></div><div class="ttdeci">void set_proxy(const string &amp;hostport, const string &amp;userpw=&quot;&quot;)</div><div class="ttdoc">Set proxy. Do not call this directly.</div><div class="ttdef"><b>Definition:</b> http.cpp:96</div></div>
</div><!-- fragment -->
</div>
</div>
<a id="ae25c5e6eabb8e783d7034ee1c79ae741"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae25c5e6eabb8e783d7034ee1c79ae741">&#9670;&nbsp;</a></span>set_useragent()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void API::set_useragent </td>
<td>(</td>
<td class="paramtype">const string &amp;&#160;</td>
<td class="paramname"><em>useragent</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets the useragent. Default is mastodon-cpp/version. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">useragent</td><td>The useragent</td></tr>
</table>
</dd>
</dl>
<dl class="section since"><dt>Since</dt><dd>before 0.11.0 </dd></dl>
<div class="fragment"><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;{</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; _useragent = useragent;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a52ea24477c513aa211cf724be7a570f6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a52ea24477c513aa211cf724be7a570f6">&#9670;&nbsp;</a></span>unescape_html()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const string API::unescape_html </td>
<td>(</td>
<td class="paramtype">const string &amp;&#160;</td>
<td class="paramname"><em>html</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Alias for <a class="el" href="namespaceMastodon.html#ae55e69517007dde071f01dcafd44ad36" title="Replaces HTML entities with UTF-8 characters.">Mastodon::unescape_html</a>. </p>
<dl class="section since"><dt>Since</dt><dd>0.12.0 </dd></dl>
<div class="fragment"><div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160;{</div><div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespaceMastodon.html#ae55e69517007dde071f01dcafd44ad36">Mastodon::unescape_html</a>(html);</div><div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160;}</div><div class="ttc" id="namespaceMastodon_html_ae55e69517007dde071f01dcafd44ad36"><div class="ttname"><a href="namespaceMastodon.html#ae55e69517007dde071f01dcafd44ad36">Mastodon::unescape_html</a></div><div class="ttdeci">const string unescape_html(const string &amp;html)</div><div class="ttdoc">Replaces HTML entities with UTF-8 characters.</div><div class="ttdef"><b>Definition:</b> mastodon-cpp.cpp:334</div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a5e7f2c0e0a07ae1f8ee838c80a4abc79"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5e7f2c0e0a07ae1f8ee838c80a4abc79">&#9670;&nbsp;</a></span>urldecode()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const string API::urldecode </td>
<td>(</td>
<td class="paramtype">const string &amp;&#160;</td>
<td class="paramname"><em>str</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Alias for <a class="el" href="namespaceMastodon.html#acf85e4594279ae65238596ed94e82810" title="Decodes a percent-encoded string.">Mastodon::urldecode</a>. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">str</td><td>The string</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The decoded string</dd></dl>
<dl class="section since"><dt>Since</dt><dd>0.18.0 </dd></dl>
<div class="fragment"><div class="line"><a name="l00644"></a><span class="lineno"> 644</span>&#160;{</div><div class="line"><a name="l00645"></a><span class="lineno"> 645</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespaceMastodon.html#acf85e4594279ae65238596ed94e82810">Mastodon::urldecode</a>(str);</div><div class="line"><a name="l00646"></a><span class="lineno"> 646</span>&#160;}</div><div class="ttc" id="namespaceMastodon_html_acf85e4594279ae65238596ed94e82810"><div class="ttname"><a href="namespaceMastodon.html#acf85e4594279ae65238596ed94e82810">Mastodon::urldecode</a></div><div class="ttdeci">const string urldecode(const string &amp;str)</div><div class="ttdoc">Decodes a percent-encoded string.</div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a100eb453092465554a259715a6c1bee7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a100eb453092465554a259715a6c1bee7">&#9670;&nbsp;</a></span>urlencode()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const string API::urlencode </td>
<td>(</td>
<td class="paramtype">const string &amp;&#160;</td>
<td class="paramname"><em>str</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Alias for <a class="el" href="namespaceMastodon.html#ac158102db9a826fb398440b80ff30d48" title="Percent-encodes a string.">Mastodon::urlencode</a>. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">str</td><td>The string</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The percent-encoded string</dd></dl>
<dl class="section since"><dt>Since</dt><dd>before 0.11.0 </dd></dl>
<div class="fragment"><div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160;{</div><div class="line"><a name="l00640"></a><span class="lineno"> 640</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespaceMastodon.html#ac158102db9a826fb398440b80ff30d48">Mastodon::urlencode</a>(str);</div><div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160;}</div><div class="ttc" id="namespaceMastodon_html_ac158102db9a826fb398440b80ff30d48"><div class="ttname"><a href="namespaceMastodon.html#ac158102db9a826fb398440b80ff30d48">Mastodon::urlencode</a></div><div class="ttdeci">const string urlencode(const string &amp;str)</div><div class="ttdoc">Percent-encodes a string.</div></div>
</div><!-- fragment -->
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>src/<a class="el" href="mastodon-cpp_8hpp_source.html">mastodon-cpp.hpp</a></li>
<li>src/mastodon-cpp.cpp</li>
<li>src/api/delete.cpp</li>
<li>src/api/get.cpp</li>
<li>src/api/patch.cpp</li>
<li>src/api/post.cpp</li>
<li>src/api/put.cpp</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.15
</small></address>
</body>
</html>