The Configuration API is designed to mirror the dsconfig
tool,
using the same names for properties and object types. Property names are presented
as hyphen case in dsconfig
and as camel-case attributes in the API.
In API requests that specify property names, case is not important. Therefore,
baseDN
is the same as baseDn
. Object types
are represented in hyphen case. API paths mirror what is in dsconfig
.
For example, the dsconfig list-connection-handlers
command is
analogous to the API's /config/connection-handlers
path.
Object types that appear in the schema URNs adhere to a type:subtype
syntax. For example, a Local DB Backend's schema URN is
urn:unboundid:schemas:configuration:2.0:backend:local-db
. Like
the dsconfig
tool, all configuration updates made through the API
are recorded in logs/config-audit.log
.
The API includes the filter, sort, and pagination query parameters described
by the SCIM specification. Specific attributes may be requested using the
attributes query parameter, whose value must be a comma-delimited list of
properties to be returned, for example attributes=baseDN,description
.
Likewise, attributes may be excluded from responses by specifying the
excludedAttributes
parameter.
Operations supported by the API are those typically found in REST APIs:
HTTP Method | Description | Related dsconfig Example |
---|---|---|
GET | Lists the properties of an object
when used with a path
representing an object, such as /config/global-configuration or
/config/backends/userRoot . Can also
list objects when
used with a path representing a
parent relation, such as /config/backends . |
get-backend-prop ,
list-backends ,
get-global-configuration-prop
|
POST | Creates a new instance of an
object when used with a relation
parent path, such as /config/backends . |
create-backend
|
PUT | Replaces the existing properties of an object. A PUT
operation is similar to a PATCH operation, except that
the PATCH identifies the difference between an
existing target object and a supplied source object. Only
those properties in the source object are modified in the
target object. The target object is specified using a path,
such as /config/backends/userRoot . |
set-backend-prop ,
set-global-configuration-prop
|
PATCH | Updates the properties of an
existing object when used with a
path representing an object, such as
/config/backends/userRoot . |
set-backend-prop ,
set-global-configuration-prop
|
DELETE | Deletes an existing object when
used with a path representing an
object, such as
/config/backends/userRoot . |
delete-backend
|
The OPTIONS method can also be used to determine the operations permitted for a particular path.
userRoot
in the Description
column, must be URL-encoded for use in the path segment of a URL.
For example, %20
must be used in place of spaces, and %25
is used in place
of the percent (%) character. The URL for accessing the HTTP Connection Handler object is:
/config/connection-handlers/http%20connection%20handler