{"id":3440,"date":"2018-03-04T11:09:25","date_gmt":"2018-03-04T09:09:25","guid":{"rendered":"http:\/\/modulus.help\/kb\/docs\/modulus-api\/introduction\/step-3-call-api\/"},"modified":"2025-11-17T12:07:57","modified_gmt":"2025-11-17T10:07:57","slug":"step-3-api-call","status":"publish","type":"docs","link":"https:\/\/modulus.help\/kb\/docs\/documentation\/getting-started\/step-3-api-call\/","title":{"rendered":"API Call &amp; Common Responses"},"content":{"rendered":"<p>You can only call APIs that your app is authenticated to after completing the authentication step. You have to pass your authentication token in the query string of every API you call. You can find more details about each API parameters and responses in the following sections of the documentation. Below is list of responses common for all APIs in this documentation:<\/p>\n<h4>Common Responses<\/h4>\n<table style=\"width: auto;\">\n<thead>\n<tr>\n<th>Status<\/th>\n<th>Response<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<th style=\"text-align: left;\">400 Bad Request<\/th>\n<td>\n<pre><code class=\"json\">{\n    \"result\": false,\n    \"title\": \"Bad Request\",\n    \"message\": \"Missing one or more URL parameters.\"\n}<\/code><\/pre>\n<\/td>\n<\/tr>\n<tr>\n<th style=\"text-align: left;\">400 Bad Request<\/th>\n<td>\n<pre><code class=\"json\">{\n    \"result\": false,\n    \"title\": \"Bad Request\",\n    \"message\": \"Authorization token required.\"\n}<\/code><\/pre>\n<\/td>\n<\/tr>\n<tr>\n<th style=\"text-align: left;\">401 Unauthorized<\/th>\n<td>\n<pre><code class=\"json\">{\n    \"result\": false,\n    \"title\": \"Unauthorized\",\n    \"message\": \"Invalid or expired token.\"\n}<\/code><\/pre>\n<\/td>\n<\/tr>\n<tr>\n<th style=\"text-align: left;\">401 Unauthorized<\/th>\n<td>\n<pre><code class=\"json\">{\n    \"result\": false,\n    \"title\": \"Unauthorized\",\n    \"message\": \"Invalid IP address.\"\n}<\/code><\/pre>\n<p>You are invoking the API from a different IP address than the one from which you originally authenticated.<\/td>\n<\/tr>\n<tr>\n<th style=\"text-align: left;\">401 Unauthorized<\/th>\n<td>\n<pre><code class=\"json\">{\n    \"result\": false,\n    \"title\": \"Unauthorized\",\n    \"message\": \"Invalid account.\"\n}<\/code><\/pre>\n<p>You are invoking the API on a different account than the one from which you originally authenticated.<\/td>\n<\/tr>\n<tr>\n<th style=\"text-align: left;\">401 Unauthorized<\/th>\n<td>\n<pre><code class=\"json\">{\n    \"result\": false,\n    \"title\": \"Unauthorized\",\n    \"message\": \"Invalid app ID.\"\n}<\/code><\/pre>\n<p>You are invoking the API using an app that is no more valid.<\/td>\n<\/tr>\n<tr>\n<th style=\"text-align: left;\">401 Unauthorized<\/th>\n<td>\n<pre><code class=\"json\">{\n    \"result\": false,\n    \"title\": \"Unauthorized\",\n    \"message\": \"Token belongs to an app that is not authorized to call this API.\"\n}<\/code><\/pre>\n<\/td>\n<\/tr>\n<tr>\n<th style=\"text-align: left;\">403 Forbidden<\/th>\n<td>\n<pre><code class=\"json\">{\n    \"result\": false,\n    \"title\": \"Forbidden\",\n    \"message\": \"The account you are trying to access is suspended.\"\n}<\/code><\/pre>\n<\/td>\n<\/tr>\n<tr>\n<th style=\"text-align: left;\">404 Not Found<\/th>\n<td>\n<pre><code class=\"json\">{\n    \"result\": false,\n    \"title\": \"Not Found\",\n    \"message\": \"The account you are trying to access is not found.\"\n}<\/code><\/pre>\n<\/td>\n<\/tr>\n<tr>\n<th style=\"text-align: left;\">404 Not Found<\/th>\n<td>\n<pre><code class=\"json\">{\n    \"result\": false,\n    \"title\": \"Not Found\",\n    \"message\": \"The API you are trying to access is not found.\"\n}<\/code><\/pre>\n<\/td>\n<\/tr>\n<tr>\n<th style=\"text-align: left;\">405 Method Not Allowed<\/th>\n<td>\n<pre><code class=\"json\">{\n    \"result\": false,\n    \"title\": \"Method Not Allowed\",\n    \"message\": \"HTTP method is not allowed.\"\n}<\/code><\/pre>\n<\/td>\n<\/tr>\n<tr>\n<th style=\"text-align: left;\">501 Not Implemented<\/th>\n<td>\n<pre><code class=\"json\">{\n    \"result\": false,\n    \"title\": \"Not Implemented\",\n    \"message\": \"HTTP method is not implemented.\"\n}<\/code><\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n","protected":false},"featured_media":0,"parent":3432,"menu_order":3,"comment_status":"closed","ping_status":"closed","template":"","doc_tag":[],"comment_count":0,"_links":{"self":[{"href":"https:\/\/modulus.help\/kb\/wp-json\/wp\/v2\/docs\/3440"}],"collection":[{"href":"https:\/\/modulus.help\/kb\/wp-json\/wp\/v2\/docs"}],"about":[{"href":"https:\/\/modulus.help\/kb\/wp-json\/wp\/v2\/types\/docs"}],"replies":[{"embeddable":true,"href":"https:\/\/modulus.help\/kb\/wp-json\/wp\/v2\/comments?post=3440"}],"version-history":[{"count":19,"href":"https:\/\/modulus.help\/kb\/wp-json\/wp\/v2\/docs\/3440\/revisions"}],"predecessor-version":[{"id":4542,"href":"https:\/\/modulus.help\/kb\/wp-json\/wp\/v2\/docs\/3440\/revisions\/4542"}],"up":[{"embeddable":true,"href":"https:\/\/modulus.help\/kb\/wp-json\/wp\/v2\/docs\/3432"}],"prev":[{"title":"Authentication JWT Token","link":"https:\/\/modulus.help\/kb\/docs\/documentation\/getting-started\/authentication-jwt-token\/","href":"https:\/\/modulus.help\/kb\/wp-json\/wp\/v2\/docs\/4587"}],"wp:attachment":[{"href":"https:\/\/modulus.help\/kb\/wp-json\/wp\/v2\/media?parent=3440"}],"wp:term":[{"taxonomy":"doc_tag","embeddable":true,"href":"https:\/\/modulus.help\/kb\/wp-json\/wp\/v2\/doc_tag?post=3440"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}