diff --git a/remoting_client/API-docs/content.html b/remoting_client/API-docs/content.html
index c8eb8151641e2e921e813b5751516b7b77ff53f4..00590071d584d34c9c1205e276f6a44d9165579d 100644
--- a/remoting_client/API-docs/content.html
+++ b/remoting_client/API-docs/content.html
@@ -1,44 +1,159 @@
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-<html><head>
-  <title>ISPCOnfig 3 remote API documentation</title>
-
-  
-  
-  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-
-  
-  <style type="text/css">
-<!--
-.command {
-    padding: 1em;
-    border: 1px dashed #2f6fab;
-    color: black;
-    background-color: #f9f9f9;
-    line-height: 1.1em;
-        font-family: Courier New, Courier, mono;
-        font-size: 12px;
-        font-style: italic;
-}
-
-.system {
-    color: black;
-        font-family: Courier New, Courier, mono;
-        font-size: 12px;
-        font-style: italic;
-}
-
-.highlight {
-    color: #FF0000;
-	font-family: Georgia, "Times New Roman", Times, serif;
-	font-size: 12px;
-	text-decoration: underline;
-}
--->
- </style></head><body style="color: rgb(0, 0, 0); background-color:#FFFFFF;;" alink="#804080" link="#804080" vlink="#603060">
-<div style="padding:40px">
-<h2>Home</h2>
-<br>
-ISPConfig 3 remote API documentation.
-</div>
-
-</body></html>
+<html>
+
+<head>
+    <title>ISPCOnfig 3 remote API documentation</title>
+
+    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+
+    <style type="text/css">
+        <!--
+        .command {
+            padding: 1em;
+            border: 1px dashed #2f6fab;
+            color: black;
+            background-color: #f9f9f9;
+            line-height: 1.1em;
+            font-family: Courier New, Courier, mono;
+            font-size: 12px;
+            font-style: italic;
+        }
+
+        .notes {
+            color: #17075c;
+            font-family: Georgia, "Times New Roman", Times, serif;
+            font-size: 14px;
+
+        }
+
+        .preface {
+            color: black;
+            font-family: Georgia, "Times New Roman", Times, serif;
+            font-size: 14px;
+        }
+
+        a:link,
+        a:visited {
+            text-decoration: none;
+        }
+
+
+        a:hover,
+        a:active {
+            text-decoration: underline;
+        }
+
+        .question {
+            font-size: 14px;
+            padding: 0em 0em 0em 1em;
+        }
+
+        .answer {
+            padding: 0em 0em 0em 2em;
+        }
+        -->
+    </style>
+</head>
+
+<body>
+    <div style="padding:40px">
+        <h2>ISPConfig 3 Remote API Documentation</h2>
+        <div class="notes">
+            <h3>Notes</h3>
+
+            <p class="preface">These notes are new for v3.2 and the content will change.<br />
+                This is currently in FAQ format, because the topics seem to be Frequently Asked Questions.<br />
+                Over time, notes will also be added to individual function pages.<br />
+                If you would like to help with this process, please visit the forum, and add your comments to <a
+                    href="https://www.howtoforge.com/community/threads/api-doc-you-can-help.84944/">this thread</a>
+                which has been created for this purpose.<br />
+                Thank you for your patience and collaboration.
+            </p>
+
+            <h4 class="question">What do we do to get started with API calls?</h4>
+            <div class="answer">
+                <p>Create a "Remote" User in the ISPConfig UI. Check boxes there to assign permissions for
+                    the kinds of queries that can be processed by that user.</p>
+                <p>Almost all API queries require a session_id. To get that, call the login function, sending the remote
+                    username and password. The response will be a single value which will be used as your session ID for
+                    a limited time period for all other requests.</p>
+                <p>Finishing with a logout request is recommended, but optional since the session IDs expire.</p>
+            </div>
+
+            <h4 class="question">How do I get all records with a _get request?</h4>
+            <div class="answer">Rather than using a single integer ID as a primary key selector (domain_id, group_id,
+                etc), use -1. Where the primary key for a _get request is a string, use an empty array ' [] '. Do not
+                use an empty string ' "" ', which is itself a valid string and will/should return an empty array result.
+            </div>
+
+            <h4 class="question">Are defaults used if we only send some of the defined parameters?</h4>
+            <div class="answer">No, there are no default values except where explicitly noted. For example, in the
+                system_config_get function, the key element is optional because it is documented as defaulting to an
+                empty string. For all requests, except where documented otherwise, send all documented parameters.</div>
+
+            <h4 class="question">Examples are provided for SOAP, why not for REST?</h4>
+            <div class="answer">The REST API supports all functions and can be exactly substituted for SOAP examples.
+                For all functions, the request and response parameters are the same for SOAP and REST.</div>
+
+            <h4 class="question">Are there examples for cURL? Python? C#? JavaScript? (anything else...)</h4>
+            <div class="answer">The documentation details request and response parameters which can be passed using any
+                language or toolchain. The URL always includes the function name. Queries are always sent via POST. The
+                result is always in the same JSON format. Use Postman or another tool to generate code in your preferred
+                languages.</div>
+
+            <h4 class="question">I created a new record (domain, mail user, etc). Why isn't it showing in the UI?</h4>
+            <div class="answer">If a parent ID is invalid, a transaction may be accepted, with a record created under a
+                different parent entity.
+            </div>
+
+            <h4 class="question">Why does a response show a successful result when there is no data?</h4>
+            <div class="answer">Carefully check the names and values being sent. Invalid name/value pairs are ignored. A
+                request that does not include a valid request paramenter is requesting nothing, so the return value is
+                nothing. The query was successful, and returned no data.</div>
+
+            <h4 class="question">Why are parameters $session_id and others being ignored?</h4>
+            <div class="answer">The documentation shows PHP function syntax. SOAP and REST parameters do not include the
+                leading $dollar-sign</div>
+
+            <h4 class="question">Key Concept:</h4>
+            <div class="answer">Based on the above you may be thinking there is very little error checking with this
+                API. That is correct. As noted by Jesse Norell: <blockquote>"The api is largely just an interface to the
+                    database tables, and will usually accept what you send, whether that's consistent/correct or not. It
+                    can be a feature, eg. you can create a mail alias first before creating the mailbox to which it
+                    forwards, but it does mean you have a lot more testing to do on your side because you can't just
+                    rely on an error to be thrown if you send inconsistent data."</blockquote>
+            </div>
+
+            <h4 class="question">What is sys_userid and sys_groupid?</h4>
+            <div class="answer">
+                <p>These fields are referenced often in the developer forum and in code, usually with some confusion.
+                    These internal database fields are used in SQL queries to determine parent/child client
+                    relationships. The fields are not passed to API calls, with the exception of one function,
+                    client_get_id which is a convenience function to return the client_id for a sys_userid. In the past
+                    other functions included these keys in the request. Now, when a function request includes a
+                    client_id, at query time a lookup is done to get the internal sys_userid for that client.</p>
+                <p>The sys_userid can identify the creator of a record. This may be the ID of the local/UI user or the
+                    remote/API user that is logging in to create records. If a client record is created without a
+                    reseller, both the sys_userid and the sys_groupid are the same user ID.</p>
+                <p>If a client record is created with a reseller, the meaning of the fields is completely different. The
+                    sys_userid is not a logged-in user ID. It is a new ID that represents the client under the reseller.
+                    The sys_groupid for a client under a reseller is (a foreign-key to) the sys_userid of the client
+                    record for the reseller. In this scenario, the sys_groupid establishes a child-to-parent
+                    relationship.</p>
+            </div>
+
+            <h4 class="question">What domains are the 'domains_' functions operating on?</h4>
+            <div class="answer">The 'domains_' functions update the 'domains' table, which is used by the domain limit
+                module. Clients and resellers are restricted to the domains in this table. To activate domain limits, go
+                to System > Interface > Main Config, then to the Domains tab. Logout/in. Then go to Sites, Add or Edit a
+                site, the "Domain" dropdown list uses this table.</div>
+
+            <h4 class="question">What will be here next?</h4>
+            <div class="answer">Maybe something you write... </div>
+
+        </div>
+    </div>
+
+</body>
+
+</html>
\ No newline at end of file