OX REST API (7.10.1)

Download OpenAPI specification:Download

Documentation of the Open-Xchange REST API.

Authentication

basicAuth

HTTP Basic Authentication.

Security Scheme Type HTTP
HTTP Authorization Scheme basic

contextAdminAuth

The API can be accessed via HTTP Basic Auth with context administrator credentials or reseller/master administrator credentials if MASTER_ACCOUNT_OVERRIDE is enabled.

Security Scheme Type HTTP
HTTP Authorization Scheme basic

Userfeedback

The user feedback module

Deletes user feedback

delete /userfeedback/v1/{context-group}/{type}
http://example.com/userfeedback/v1/{context-group}/{type}
https://example.com/userfeedback/v1/{context-group}/{type}
path Parameters
context-group
required
string

The context group identifying the global DB where the feedback is stored.

type
required
string

The feedback type to delete.

query Parameters
start
integer <int64>

Start time in milliseconds since 1970-01-01 00:00:00 UTC. Only feedback given after this time is deleted. If not set, all feedback up to -e is deleted.

end
integer <int64>

End time in milliseconds since 1970-01-01 00:00:00 UTC. Only feedback given before this time is deleted. If not set, all feedback since -s is deleted.

Responses

200

Info message when successfull.

400

Bad request, response contains error message.

401

Not authorized

404

Not found, if path is wrong (unknown context group or feedback type). Response contains error message.

500

Internal server error that might have multiple reasons, for instance no configured global database. Response contains error message.

Response samples

Content type
application/json
Copy
Expand all Collapse all
"string"

Exports user feedback as CSV

get /userfeedback/v1/export/{context-group}/{type}
http://example.com/userfeedback/v1/export/{context-group}/{type}
https://example.com/userfeedback/v1/export/{context-group}/{type}
Authorizations:
path Parameters
context-group
required
string
Default: "default"

The context group identifying the global DB where the feedback is stored.

type
required
string
Default: "star-rating-v1"

The feedback type to send.

query Parameters
start
integer <int64>

Start time in milliseconds since 1970-01-01 00:00:00 UTC. Only feedback given after this time is sent. If not set, all feedback up to -e is sent.

end
integer <int64>

End time in milliseconds since 1970-01-01 00:00:00 UTC. Only feedback given before this time is sent. If not set, all feedback since -s is sent.

delimiter
string

The column delimiter used. Default: ';'

Responses

200

Export data into a CSV file

400

Bad request, response contains error message.

401

Not authorized

404

Not found, if path is wrong (unknown context group or feedback type). Response contains error message.

500

Internal server error that might have multiple reasons, for instance no configured global database. Response contains error message.

Exports user feedback

get /userfeedback/v1/export/{context-group}/{type}/raw
http://example.com/userfeedback/v1/export/{context-group}/{type}/raw
https://example.com/userfeedback/v1/export/{context-group}/{type}/raw
Authorizations:
path Parameters
context-group
required
string
Default: "default"

The context group identifying the global DB where the feedback is stored.

type
required
string
Default: "star-rating-v1"

The feedback type to send.

query Parameters
start
integer <int64>

Start time in milliseconds since 1970-01-01 00:00:00 UTC. Only feedback given after this time is sent. If not set, all feedback up to -e is sent.

end
integer <int64>

End time in milliseconds since 1970-01-01 00:00:00 UTC. Only feedback given before this time is sent. If not set, all feedback since -s is sent.

Responses

200

A JSON array containing the stored user feedbacks.

400

Bad request, response contains error message.

401

Not authorized

404

Not found, if path is wrong (unknown context group or feedback type). Response contains error message.

500

Internal server error that might have multiple reasons, for instance no configured global database. Response contains error message.

Response samples

Content type
application/json
Copy
Expand all Collapse all
"string"

Exports user feedback and sends exported data to provided recipients

post /userfeedback/v1/send/{context-group}/{type}
http://example.com/userfeedback/v1/send/{context-group}/{type}
https://example.com/userfeedback/v1/send/{context-group}/{type}
path Parameters
context-group
required
string
Default: "default"

The context group identifying the global DB where the feedback is stored.

type
required
string
Default: "star-rating-v1"

The feedback type to send.

query Parameters
start
integer <int64>

Start time in milliseconds since 1970-01-01 00:00:00 UTC. Only feedback given after this time is sent. If not set, all feedback up to -e is sent.

end
integer <int64>

End time in milliseconds since 1970-01-01 00:00:00 UTC. Only feedback given before this time is sent. If not set, all feedback since -s is sent.

Request Body schema: application/json

JSONObject with fields "subject" for custom mail subject, "body" for custom mail body, boolean "compress" to compress the mail attachment and "recipients" (an JSON Array containing address, display name and PGP key (if available) for every recipient).

string

Responses

200

Info message about sent status

400

Bad request, response contains error message.

401

Not authorized

404

Not found, if path is wrong (unknown context group or feedback type). Response contains error message.

500

Internal server error that might have multiple reasons, for instance no configured global database. Response contains error message.

Request samples

Content type
application/json
Copy
Expand all Collapse all
"string"

Advertisement

The advertisement module

Sets an advertisement configuration for a given user by name

put /advertisement/v1/config/name
http://example.com/advertisement/v1/config/name
https://example.com/advertisement/v1/config/name
query Parameters
name
required
string

The user's login name

contextId
required
integer <int64>

The context id

Request Body schema: application/json

JSONObject describing the advertisement configuration

string

Responses

200

The configuration result

400

Bad request, response contains error message.

401

Not authorized

Request samples

Content type
application/json
Copy
Expand all Collapse all
"string"

Remove the current configuration for the user

delete /advertisement/v1/config/name
http://example.com/advertisement/v1/config/name
https://example.com/advertisement/v1/config/name
query Parameters
name
required
string

The user's login name

contextId
required
integer <int64>

The context id

Responses

200

The configuration result

400

Bad request, response contains error message.

401

Not authorized

Sets an advertisement configuration for a package of a reseller

put /advertisement/v1/config/package
http://example.com/advertisement/v1/config/package
https://example.com/advertisement/v1/config/package
query Parameters
reseller
required
string

The reseller name

package
required
string

The package name

Request Body schema: application/json

JSONObject describing the advertisement configuration

string

Responses

200

The configuration result

400

Bad request, response contains error message.

401

Not authorized

Request samples

Content type
application/json
Copy
Expand all Collapse all
"string"

Remove the current configuration for a package of a reseller

delete /advertisement/v1/config/package
http://example.com/advertisement/v1/config/package
https://example.com/advertisement/v1/config/package
query Parameters
reseller
required
string

The reseller name

package
required
string

The package name

Responses

200

The configuration result

400

Bad request, response contains error message.

401

Not authorized

Sets all advertisement configurations for a given reseller

put /advertisement/v1/config/reseller
http://example.com/advertisement/v1/config/reseller
https://example.com/advertisement/v1/config/reseller
query Parameters
reseller
required
string

The reseller's name

Request Body schema: application/json

JSONObject describing the advertisement configuration

string

Responses

200

The configuration result

400

Bad request, response contains error message.

401

Not authorized

Request samples

Content type
application/json
Copy
Expand all Collapse all
"string"

Sets an advertisement configuration for a given user by id

put /advertisement/v1/config/user
http://example.com/advertisement/v1/config/user
https://example.com/advertisement/v1/config/user
query Parameters
contextId
required
integer <int64>

The context id

userId
required
integer <int64>

The user id

Request Body schema: application/json

JSONObject describing the advertisement configuration

string

Responses

200

The configuration result

400

Bad request, response contains error message.

401

Not authorized

Request samples

Content type
application/json
Copy
Expand all Collapse all
"string"

Remove the current configuration for the user identified by userId

delete /advertisement/v1/config/user
http://example.com/advertisement/v1/config/user
https://example.com/advertisement/v1/config/user
query Parameters
contextId
required
integer <int64>

The context id

userId
required
integer <int64>

The user id

Responses

200

The configuration result

400

Bad request, response contains error message.

401

Not authorized

Admin

Interface for provisioning and other administrative operations.

Lists the history of password changes for a user.

get /admin/v1/contexts/{context-id}/users/{user-id}/passwd-changes
http://example.com/admin/v1/contexts/{context-id}/users/{user-id}/passwd-changes
https://example.com/admin/v1/contexts/{context-id}/users/{user-id}/passwd-changes
Authorizations:
path Parameters
context-id
required
integer <int32>

The context the user is in

user-id
required
integer <int32>

The ID representing the user

query Parameters
limit
integer <int32>

Limits the output to a specific number of entries.

sort
string

Comma sperated list of fields to sort the output for. Field names that begin with "-" will be sorted descending else the fields get sorted ascending. Valid fields are 'date' and 'client_id'.

Responses

200

An array of password change entries.

400

Bad request, response contains error message.

401

Not authorized

404

Not found. If path is wrong. Response contains error message.

500

Internal server error that might have multiple reasons, for instance no configured global database. Response contains error message.

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Health

The health-check module

Get health status

get /health
http://example.com/health
https://example.com/health

Responses

200

A JSON object containing health data

401

Not authorized

500

In case of "DOWN"-result or internal server error that might have multiple reasons. Response contains error message.

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "status": "UP",
  • "checks":
    [
    ],
  • "service":
    {
    },
  • "blacklist":
    [
    ],
  • "ignorelist":
    [
    ]
}