Initializes MarkLogic Server. Optional parameters below. You can: install or update a license key, and install or update a license key for a previously initialized instance of MarkLogic Server.
Upon success, if a server restart was required, MarkLogic Server returns status code 202 (Accepted) and the response body includes a timestamp and a link to the timestamp service that can be used to detect when the server restart completes.
If the request succeeds and did not result in a restart, MarkLogic Server returns status code 204 (Modified Content), and there is no response body.
If you include a license and the license is invalid, MarkLogic Server returns status code 400 and the response body includes a descriptive error message.
admin
is required. This request must be directed to the MarkLogic Server Admin Interface on port 8001. For
example: http://localhost:8001/admin/v1/init
.
This method initializes a
MarkLogic Server instance. It must be the first call you make in setting up a MarkLogic
Server instance. The instance is not fully initialized until you call either POST
/admin/v1/instance-admin
or complete the cluster join sequence discussed under
POST /admin/v1/cluster-config
.
For details and a complete example, see Scripting Cluster Management in the Scripting Administrative Tasks Guide.
If the request includes license information, the license is installed or updated. If MarkLogic Server has already been initialized, this method simply updates license information, if any is included.
You can supply the license key and licensee using either XML, JSON or form
data. If you choose form data, you must set the Content-type header to
application/x-www-form-urlencoded
. If you choose XML or JSON, set the
Content-type header to application/xml
or application/json
,
respectively. Use one of the following templates for the response body:
XML:
<init xmlns="http://marklogic.com/manage">
<license-key>license key</license-key>
<licensee>licensee</licensee>
</init>
JSON:
{
"license-key" : "license-key",
"licensee" : "licensee"
}
Form Data:
license-key=url-encoded-key&licensee=url-encoded-licensee
This method causes a server restart if MarkLogic Server has not yet been initialized or if the new license key enables features that require a restart to enable.
Initialization without installing a license: $ curl --anyauth -X POST -d "" -i http://localhost:8001/admin/v1/init ==> If the request is successful and causes a restart, MarkLogic Server sends a response similar to the following. You can use the Location header or the restart/link/uriref to detect when the restart is complete. HTTP/1.1 202 Accepted Content-type: application/xml Location: /admin/v1/timestamp Server: MarkLogic Content-Length: 260 Connection: Keep-Alive Keep-Alive: timeout=5 <restart xmlns="http://marklogic.com/manage"> <last-startup host-id="13544732455686476949"> 2013-05-15T09:01:43.019261-07:00 </last-startup> <link> <kindref>timestamp</kindref> <uriref>/admin/v1/timestamp</uriref> </link> <message>Check for new timestamp to verify host restart.</message> </restart>
Initialization, including installing a license saved in a file: $ cat init.xml ==> <init xmlns="http://marklogic.com/manage"> <license-key>1234-5678-90AB</license-key> <licensee>Your Licensee</licensee> </init> $ curl --anyauth -X POST -d @./init.xml -i -H "Content-type:application/xml" \ http://localhost:8001/admin/v1/init ==> If the request is successful and causes a restart, MarkLogic Server sends a response similar to the following. You can use the Location header or the restart/link/uriref to detect when the restart is complete. HTTP/1.1 202 Accepted Content-type: application/xml; charset=UTF-8 Location: /admin/v1/timestamp Server: MarkLogic Content-Length: 312 Connection: close <restart xmlns="http://marklogic.com/manage"> <last-startup host-id="5395590171990833490">2019-10-17T11:02:07.94789-07:00</last-startup> <link> <kindref>timestamp</kindref> <uriref>/admin/v1/timestamp</uriref> </link> <message>Check for new timestamp to verify host restart.</message> </restart> ==> If the request did not cause a restart, MarkLogic Server responds with headers similar to the following: HTTP/1.1 204 No Content Server: MarkLogic Content-Length: 0 Connection: Keep-Alive Keep-Alive: timeout=5 ==> If the license is invalid, MarkLogic Server responds with headers and a response body similar to the following: HTTP/1.1 400 Bad Request Content-type: application/xml Server: MarkLogic Content-Length: 203 Connection: Keep-Alive Keep-Alive: timeout=5 <error xmlns="http://marklogic.com/manage"> <status-code>400</status-code> <status>Bad Request</status> <message-code/> <message>You must enter a key</message> </error>
Initialization, including a license passed in as form data: $ curl --anyauth -i -X POST \ -H "Content-type:application/x-www-form-urlencoded" \ --data-urlencode "license-key=1234-5678-90AB" \ --data-urlencode "licensee=Your Licensee" \ http://localhost:8001/admin/v1/init ==> If it has not previously been initialized, MarkLogic Server is initialized. The supplied license is installed, updating any previously installed license. Upon success, MarkLogic Server sends a response similar to the following. Use the Location header or the restart/link/uriref to detect when the restart is complete. HTTP/1.1 202 Accepted Content-type: application/xml Location: /admin/v1/timestamp Server: MarkLogic Content-Length: 313 Connection: Keep-Alive Keep-Alive: timeout=5 <restart xmlns="http://marklogic.com/manage"> <last-startup host-id="13204257035615066601"> 2013-10-17T15:12:28.21886-07:00 </last-startup> <link> <kindref>timestamp</kindref> <uriref>/admin/v1/timestamp</uriref> </link> <message>Check for new timestamp to verify host restart.</message> </restart>