REST - InstanceControl

REST-Interface

Zurück zur Übersicht

Signup

Attention:
This API requires the systemAccount which is only available in on-premises installations (private cloud).

Creates and inits another instance. This also creates a credential and the corresponding person (account/contact) as instanceadmin with all initial functional roles assigned (including admin). At least this updates the licence for the newly created instance.
You can set a password optionally. Therfore set Signup.password AND Signup.updatePassword = true. If updatePassword is false a Credential without password will be created! Only in this case an E-Mail notification with link will be sent.
URL
POST <application-url>/api/instancecontrol/signup

Query parameter

  • languageKey
    possible: de, en, ...
    default: en
    language-key for email-notification

Consumes

application/json
application/xml

com.matterial.mtr.api.object.Signup

Produces

application/json
application/xml

com.matterial.mtr.api.object.LoginData

  • 201 CREATED
  • 500 INTERNAL_SERVER_ERROR

Permission
systemAccountRequired

Sample
POST http://localhost:8080/mtr-backend/api/instancecontrol/signup


Create instance

Attention:
This API requires the systemAccount which is only available in on-premises installations (private cloud).

URL
POST <application-url>/api/instancecontrol/instance

Consumes

application/json
application/xml

com.matterial.mtr.api.object.WildflyDataSource

Produces

application/json
application/xml

com.matterial.mtr.api.object.LoginData

  • 201 CREATED
  • 500 INTERNAL_SERVER_ERROR

Permission
systemAccountRequired

Sample
POST http://localhost:8080/mtr-backend/api/instancecontrol/instance


Change instance

Attention:
Won't work on multiserve-installation.
Use Logon.preChangeinstance-API!

URL
PUT <application-url>/api/instancecontrol/instance/<dataSourceName>

Path parameter

  • dataSourceName
    datasource / instance

Produces

application/json
application/xml

com.matterial.mtr.api.object.LoginData

  • 202 ACCEPTED
  • 500 INTERNAL_SERVER_ERROR

Permission
Login

Sample
PUT http://localhost:8080/mtr-backend/api/instancecontrol/instance/MtrInst2DS


Change instance by id

Attention:
Won't work on multiserve-installation.
Use Logon.preChangeinstance-API!

URL
PUT <application-url>/api/instancecontrol/instance/byid/<dataSourceId>

Path parameter

  • dataSourceId
    datasource- / instance-id

Produces

application/json
application/xml

com.matterial.mtr.api.object.LoginData

  • 202 ACCEPTED
  • 500 INTERNAL_SERVER_ERROR

Permission
Login

Sample
PUT http://localhost:8080/mtr-backend/api/instancecontrol/instance/byid/4


Get invitees with no account

Get all invitees, that do not exist in instance yet.
URL
GET <application-url>/api/instancecontrol/credential/invitee

Produces

application/json
application/xml

List<com.matterial.mtr.api.object.Credential>

  • 200 OK
  • 400 BAD_REQUEST
  • 500 INTERNAL_SERVER_ERROR

Permission
Login, instanceOwnerRequired

Sample
GET http://localhost:8080/mtr-backend/api/instancecontrol/credential/invitee


Reinvite credential

This resends the invitation mail to the invitee and renews its LoginToken.
URL
PUT <application-url>/api/instancecontrol/credential/invitee/<credentialId>

Path parameter

  • credentialId

Query parameter

  • languageKey
    possible: de, en, ...
    default: en
    language-key for email-notification

Produces

  • 202 ACCEPTED
  • 500 INTERNAL_SERVER_ERROR

Permission
instanceOwnerRequired

Sample
PUT http://localhost:8080/mtr-backend/api/instancecontrol/credential/invitee/5


Remove invitee

Remove the credential from current instance. Additionally this removes the whole credential if no more related instances are left.
URL
DELETE <application-url>/api/instancecontrol/credential/invitee/<credentialId>

Path parameter

  • credentialId

Produces

text/plain

[Integer] count of removed invitees

  • 200 OK
  • 500 INTERNAL_SERVER_ERROR

Permission
instanceOwnerRequired

Sample
DELETE http://localhost:8080/mtr-backend/api/instancecontrol/credential/invitee/5


Store credential with data-sources

Attention:
This API requires the systemAccount which is only available in on-premises installations (private cloud).

This is only available for system-account. This sets the password and is the only possibility to store credentials for several data-sources.
URL
PUT <application-url>/api/instancecontrol/credential/withdatasources

Consumes

application/json
application/xml

com.matterial.mtr.api.object.Credential

Produces

text/plain

Long - credential-id

  • 202 ACCEPTED
  • 500 INTERNAL_SERVER_ERROR

Permission
Login, systemAccount

Sample
PUT http://localhost:8080/mtr-backend/api/instancecontrol/credential/withdatasources


Store credential

This is only available for instance-admins. Instance-Admins can only create credentials within the current instance (datasource). Credential.password and Credential.dataSources will be ignored. The current instance will be added to the existing. An E-Mail-notification-link will be created to login without password.
URL
PUT <application-url>/api/instancecontrol/credential

Query parameter

  • languageKey
    possible: de, en, ...
    default: en
    language-key for email-notification

Consumes

application/json
application/xml

com.matterial.mtr.api.object.CredentialWithInvitationText

Produces

text/plain

Long - credential-id

  • 202 ACCEPTED
  • 400 BAD REQUEST
    • system
    • myself
    • already assigned credential
  • 401 UNAUTHORIZED
  • 402 PAYMENT_REQUIRED
  • 403 FORBIDDEN
  • 500 INTERNAL_SERVER_ERROR

Permission
Login, instanceAdmin

Sample
PUT http://localhost:8080/mtr-backend/api/instancecontrol/credential


Store credentials

This is only available for instance-admins. Instance-Admins can only create credentials within the current instance (datasource). Credential.password and Credential.dataSources will be ignored. The current instance will be added to the existing. An E-Mail-notification-link will be created to login without password.
URL
PUT <application-url>/api/instancecontrol/credential/list

Query parameter

  • languageKey
    possible: de, en, ...
    default: en
    language-key for email-notification

Consumes

application/json
application/xml

List<com.matterial.mtr.api.object.CredentialWithInvitationText>

Produces

application/json
application/xml

List<Long> - credential-ids

  • 202 ACCEPTED
  • 400 BAD REQUEST
    • system
    • myself
    • already assigned credential
  • 401 UNAUTHORIZED
  • 402 PAYMENT_REQUIRED
  • 403 FORBIDDEN
  • 500 INTERNAL_SERVER_ERROR

Permission
Login, instanceAdmin

Sample
PUT http://localhost:8080/mtr-backend/api/instancecontrol/credential/list


Update favourite data-source

URL
PUT <application-url>/api/instancecontrol/credential/favdatasource

Consumes

application/json
application/xml

com.matterial.mtr.api.object.DataSource

Produces

application/json
application/xml

com.matterial.mtr.api.object.LoginData

  • 200 OK
  • 500 INTERNAL_SERVER_ERROR

Permission
Login

Sample
PUT http://localhost:8080/mtr-backend/api/instancecontrol/credential/favdatasource


Get instance by id

Attention:
This API requires the systemAccount which is only available in on-premises installations (private cloud).

URL
GET <application-url>/api/instancecontrol/instance/<dataSourceId>

Path parameter

  • dataSourceId
    datasource- / instance-id

Produces

application/json
application/xml

com.matterial.mtr.api.object.DataSource

  • 200 OK
  • 400 BAD_REQUEST
  • 404 NOT_FOUND
  • 500 INTERNAL_SERVER_ERROR

Permission
Login, systemAccountRequired

Sample
GET http://localhost:8080/mtr-backend/api/instancecontrol/instance/1


Get instances

Attention:
This API requires the systemAccount which is only available in on-premises installations (private cloud).

URL
GET <application-url>/api/instancecontrol/instance

Query parameter

  • dataSourceId
    datasource- / instance-id
  • active
    possible: true, false
    filter by active
  • accountLogin
    filter by credential
  • dataSourceName
    filter by name
  • dataSourceReference
    filter by reference
  • count
    possible: true, false
    default: false
    get count
  • orderByStr
    id
    name
    displayName
    reference
    active
    default: active
    order by
  • orderByDir
    possible: asc, desc
    default: asc
    order by direction
  • offset
    default: 0
  • limit
    default: 0

Produces

application/json
application/xml

com.matterial.mtr.api.object.ListResult<DataSource>

  • 200 OK
  • 400 BAD_REQUEST
  • 404 NOT_FOUND
  • 500 INTERNAL_SERVER_ERROR

Permission
Login, systemAccountRequired

Sample
GET http://localhost:8080/mtr-backend/api/instancecontrol/instance?count=true


Update displayname of current datasource.

URL
PUT <application-url>/api/instancecontrol/instance/displayname/<displayName>

Path parameter

  • displayName

Produces

application/json
application/xml

com.matterial.mtr.api.object.LoginData

  • 200 OK
  • 500 INTERNAL_SERVER_ERROR

Permission
instanceOwnerRequired

Sample
PUT http://localhost:8080/mtr-backend/api/instancecontrol/instance/displayname/MyCompany


Activate instance (unlimited)

Attention:
This API requires the systemAccount which is only available in on-premises installations (private cloud).

Activates an instance (datasource) for unlimited days.
URL
PUT <application-url>/api/instancecontrol/instance/<dataSourceName>/activate/unlimited

Path parameter

  • dataSourceName
    datasource-name

Produces

text/plain

[Integer] updated

  • 200 OK
  • 500 INTERNAL_SERVER_ERROR

Permission
Login, systemAccountRequired

Sample
PUT http://localhost:8080/mtr-backend/api/instancecontrol/instance/MtrDS/activate/unlimited


Activate instance

Attention:
This API requires the systemAccount which is only available in on-premises installations (private cloud).

Activates an instance (datasource) for the next specified days.
URL
PUT <application-url>/api/instancecontrol/instance/<dataSourceName>/activate/days/<days>

Path parameter

  • dataSourceName
    datasource-name
  • days
    days

Produces

text/plain

[Integer] updated

  • 200 OK
  • 500 INTERNAL_SERVER_ERROR

Permission
Login, systemAccountRequired

Sample
PUT http://localhost:8080/mtr-backend/api/instancecontrol/instance/MtrDS/activate/days/30


Deactivate instance

Attention:
This API requires the systemAccount which is only available in on-premises installations (private cloud).

Deactivates an active instance (datasource).
URL
PUT <application-url>/api/instancecontrol/instance/<dataSourceName>/deactivate

Path parameter

  • dataSourceName
    datasource-name

Produces

text/plain

[Integer] updated

  • 200 OK
  • 500 INTERNAL_SERVER_ERROR

Permission
Login, systemAccountRequired

Sample
PUT http://localhost:8080/mtr-backend/api/instancecontrol/instance/MtrDS/deactivate


Remove instance

Attention:
This API requires the systemAccount which is only available in on-premises installations (private cloud).

Removes inactive instance (datasource). Instance / DataSource has to be deactivated before removing it.
URL
DELETE <application-url>/api/instancecontrol/instance/<dataSourceName>

Path parameter

  • dataSourceName
    datasource-name

Produces

text/plain

[Boolean] success

  • 200 OK
  • 500 INTERNAL_SERVER_ERROR

Permission
Login, systemAccountRequired

Sample
DELETE http://localhost:8080/mtr-backend/api/instancecontrol/instance/MtrDS


2FA - QR-Code

Get Two Factor Auth QR-Code.
URL
GET <application-url>/api/instancecontrol/twofactorauth/qrcode

Produces

  • 200 OK
  • 204 NO_CONTENT
  • 500 INTERNAL_SERVER_ERROR

Permission
Login

Sample
GET http://localhost:8080/mtr-backend/api/instancecontrol/twofactorauth/qrcode


2FA - Activate

Activate Two Factor Auth for current user.
URL
POST <application-url>/api/instancecontrol/twofactorauth

Produces

application/json
application/xml

com.matterial.mtr.api.object.LoginData

  • 201 CREATED
  • 500 INTERNAL_SERVER_ERROR

Permission
Login

Sample
POST http://localhost:8080/mtr-backend/api/instancecontrol/twofactorauth


2FA - Authorize

Authorize the given Two Factor Auth verification code.
URL
PUT <application-url>/api/instancecontrol/twofactorauth

Consumes

text/plain

Integer - verification code

Produces

application/json
application/xml

com.matterial.mtr.api.object.LoginData

  • 200 OK
  • 403 FORBIDDEN
  • 401 UNAUTHORIZED
  • 500 INTERNAL_SERVER_ERROR

Permission
Login, twoFactorAuthNotRequired

Sample
PUT http://localhost:8080/mtr-backend/api/instancecontrol/twofactorauth


2FA - Deactivate

Deactivate Two Factor Auth for current user.
URL
DELETE <application-url>/api/instancecontrol/twofactorauth

Produces

application/json
application/xml

com.matterial.mtr.api.object.LoginData

  • 200 OK
  • 500 INTERNAL_SERVER_ERROR

Permission
Login

Sample
DELETE http://localhost:8080/mtr-backend/api/instancecontrol/twofactorauth


Remove Index

Attention:
This API requires the systemAccount which is only available in on-premises installations (private cloud).

This removes the complete index from filesystem of the current instance!
URL
DELETE <application-url>/api/instancecontrol/search/index

Produces

text/plain

boolean - true on success

  • 202 ACCEPTED
  • 500 INTERNAL_SERVER_ERROR

Permission
systemAccountRequired

Sample
DELETE http://localhost:8080/mtr-backend/api/instancecontrol/search/index


Reindex all instances

Attention:
This API requires the systemAccount which is only available in on-premises installations (private cloud).

This removes the complete index from filesystem and reindexes all persons and documents for each instance.
URL
PUT <application-url>/api/instancecontrol/search/reindexall

  • 202 ACCEPTED
  • 500 INTERNAL_SERVER_ERROR

Permission
systemAccountRequired

Sample
PUT http://localhost:8080/mtr-backend/api/instancecontrol/search/reindexall

×