Domain management API
It is possible to manage domains by calling the endpoints directly as an alternative to using the UI. The project functionality of ASM is implemented in the API via the use of namespaces. The endpoint addresses are provided for reference in the following table.
This domain management API is also supported by the standalone component Authorization Domain Manager (ADM).
Endpoint addresses for operations
This is the interface by which the client contacts the domain manager (that is, the internal functionality of ADM) for operations. The domain manager provides a REST API for HTTPS or HTTP.
The following endpoints can be used:
Operation | Method | URI | Description |
---|---|---|---|
Retrieve domain by id | GET | /api/domains/<domain_id> | A method of retrieval primarily used for auditing. Requires the user role domain-auditor. |
Retrieve domain by name | GET | /api/namespaces/<namespace>/names/<domain_name>/domain | This is the primary method of retrieval. It retrieves a specific domain within a namespace. |
Retrieve domain names | GET | /api/namespaces/<namespace>/names | This operation returns a list of the domain names that belong to the same namespace. |
Retrieve domain name history | GET | /api/namespaces/<namespace>/names/<domain_name>/history | This operation returns an array of the historical changes of this domain name in the form of pairs of dates and domain IDs sorted by time. |
Roll back a domain name change | POST | /api/namespaces/<namespace>/names/<domain_name>/rollback/<domain_id> | This operation points the domain name to the domain ID in the argument, thereby restoring it to a previous state. |
Store domain | POST | /api/namespaces/<namespace>/names/<domain_name> | Once stored the domain is always retrievable. Domains cannot be deleted. If the domain of a namespace is deleted or overwritten it is still retrievable by the domain identifier. |
Delete name | DELETE | /api/namespaces/<namespace>/names/<domain_name> | This deletes only the mapping of the name from the namespace. |
Delete namespace | DELETE | /api/namespaces/<namespace>/ | This deletes a namespace along with its domain members and its history. |
Copy name | PUT | /api/namespaces/<namespace>/names/<sourceName>/copy/<destinationName> | Copy the contents of a domain to another domain in the same namespace. |
Important: The length of a <namespace> is limited to 500 characters, as is the length of a <domain_name>.
Swagger UI
The API is also documented using Swagger UI. More information for each operation is available via:
https://<host:applicationConnectorsPort>/swagger-ui/