mirror of
https://github.com/bigchaindb/bigchaindb.git
synced 2024-10-13 13:34:05 +00:00
Fixed HTTP API docs re/ API Endpoint
This commit is contained in:
parent
9ed5853634
commit
71e52ccf3e
@ -5,31 +5,23 @@ The HTTP Client-Server API
|
||||
|
||||
The HTTP client-server API is currently quite rudimentary. For example,
|
||||
there is no ability to do complex queries using the HTTP API. We plan to add
|
||||
querying capabilities in the future.
|
||||
more querying capabilities in the future.
|
||||
|
||||
When you start Bigchaindb using `bigchaindb start`, an HTTP API is exposed at
|
||||
the address stored in the BigchainDB node configuration settings. The default
|
||||
is:
|
||||
This page assumes you already know an API Root URL
|
||||
for a BigchainDB node or reverse proxy.
|
||||
It should be something like ``http://apihosting4u.net:9984``
|
||||
or ``http://12.34.56.78:9984``.
|
||||
|
||||
`http://localhost:9984/api/v1/ <http://localhost:9984/api/v1/>`_
|
||||
|
||||
but that address can be changed by changing the "API endpoint" configuration
|
||||
setting (e.g. in a local config file). There's more information about setting
|
||||
the API endpoint in :doc:`the section about BigchainDB Configuration Settings
|
||||
<../server-reference/configuration>`.
|
||||
|
||||
There are other configuration settings related to the web server (serving the
|
||||
HTTP API). In particular, the default is for the web server socket to bind to
|
||||
``localhost:9984`` but that can be changed (e.g. to ``0.0.0.0:9984``). For more
|
||||
details, see the "server" settings ("bind", "workers" and "threads") in
|
||||
:doc:`the section about BigchainDB Configuration Settings
|
||||
<../server-reference/configuration>`.
|
||||
If you set up a BigchainDB node or reverse proxy yourself,
|
||||
and you're not sure what the API Root URL is,
|
||||
then see the last section of this page for help.
|
||||
|
||||
|
||||
API Root URL
|
||||
------------
|
||||
|
||||
If you send an HTTP GET request to e.g. ``http://localhost:9984``
|
||||
If you send an HTTP GET request to the API Root URL
|
||||
e.g. ``http://localhost:9984``
|
||||
or ``http://apihosting4u.net:9984``
|
||||
(with no ``/api/v1/`` on the end),
|
||||
then you should get an HTTP response
|
||||
@ -47,25 +39,6 @@ with something like the following in the body:
|
||||
"version": "0.6.0"
|
||||
}
|
||||
|
||||
If the API endpoint is publicly-accessible,
|
||||
then the public API Root URL is determined as follows:
|
||||
|
||||
- The public IP address (like 12.34.56.78)
|
||||
is the public IP address of the machine exposing
|
||||
the HTTP API to the public internet (e.g. either the machine hosting
|
||||
Gunicorn or the machine running the reverse proxy such as Nginx).
|
||||
It's determined by AWS, Azure, Rackspace, or whoever is hosting the machine.
|
||||
|
||||
- The DNS hostname (like apihosting4u.net) is determined by DNS records,
|
||||
such as an "A Record" associating apihosting4u.net with 12.34.56.78
|
||||
|
||||
- The port (like 9984) is determined by the ``server.bind`` setting
|
||||
if Gunicorn is exposed directly to the public Internet.
|
||||
If a reverse proxy (like Nginx) is exposed directly to the public Internet
|
||||
instead, then it could expose the HTTP API on whatever port it wants to.
|
||||
(It should expose the HTTP API on port 9984, but it's not bound to do
|
||||
that by anything other than convention.)
|
||||
|
||||
|
||||
POST /transactions/
|
||||
-------------------
|
||||
@ -195,3 +168,40 @@ GET /unspents/
|
||||
|
||||
:statuscode 200: A list of outputs were found and returned in the body of the response.
|
||||
:statuscode 400: The request wasn't understood by the server, e.g. the ``owner_after`` querystring was not included in the request.
|
||||
|
||||
|
||||
Determining the API Root URL
|
||||
----------------------------
|
||||
|
||||
When you start BigchainDB Server using ``bigchaindb start``,
|
||||
an HTTP API is exposed at some address. The default is:
|
||||
|
||||
`http://localhost:9984/api/v1/ <http://localhost:9984/api/v1/>`_
|
||||
|
||||
It's bound to ``localhost``,
|
||||
so you can access it from the same machine,
|
||||
but it won't be directly accessible from the outside world.
|
||||
(The outside world could connect via a SOCKS proxy or whatnot.)
|
||||
|
||||
The documentation about BigchainDB Server :any:`Configuration Settings`
|
||||
has a section about how to set ``server.bind`` so as to make
|
||||
the HTTP API publicly accessible.
|
||||
|
||||
If the API endpoint is publicly accessible,
|
||||
then the public API Root URL is determined as follows:
|
||||
|
||||
- The public IP address (like 12.34.56.78)
|
||||
is the public IP address of the machine exposing
|
||||
the HTTP API to the public internet (e.g. either the machine hosting
|
||||
Gunicorn or the machine running the reverse proxy such as Nginx).
|
||||
It's determined by AWS, Azure, Rackspace, or whoever is hosting the machine.
|
||||
|
||||
- The DNS hostname (like apihosting4u.net) is determined by DNS records,
|
||||
such as an "A Record" associating apihosting4u.net with 12.34.56.78
|
||||
|
||||
- The port (like 9984) is determined by the ``server.bind`` setting
|
||||
if Gunicorn is exposed directly to the public Internet.
|
||||
If a reverse proxy (like Nginx) is exposed directly to the public Internet
|
||||
instead, then it could expose the HTTP API on whatever port it wants to.
|
||||
(It should expose the HTTP API on port 9984, but it's not bound to do
|
||||
that by anything other than convention.)
|
||||
|
Loading…
x
Reference in New Issue
Block a user