casavi manager API (1.1.0)

Download OpenAPI specification:Download

casavi Connectivity Team: connectivity@casavi.de URL: https://casavi.de

Introduction

casavi partner network / multiple persons adding puzzle pieces to the casavi logo

casavi stands for an open integration culture. Thanks to our powerful API casavi is your central platform for the complete digitalisation of your property management processes. No duplicate data administration thanks to a direct connection to accounting and ERP systems – and through our big partner network there is no limit to your possibilities when it comes to additional functionality.

Using this API you can connect to most of the functionality that casavi has to offer. All data is scoped to one customer account. Examples you can do with this API are:

  • import & update master data
  • import documents and track if they have been downloaded by customers
  • connect another workflow management system to the ticket system casavi uses.

This documentation is generated from a Open API 2.0 document. Before we get to all the endpoints we explain the authentication. In the following section we continue with the most often found use cases.

Authentication

You need an API key & a secret (supplied by your casavi customer service). Then follow these steps to authenticate against this API:

  1. POST to /authenticate with application/json payload { key, secret }.
  2. You receive back a json with payload { token, expiresAt }.
  3. Use the token in the header field token of other requests.

token

Security Scheme Type API Key
Header parameter name: token

Common fields in this API description

IDs

When an endpoint in this API is receiving or returning an id this is not the casavi internal database id, but instead a customer supplied reference id. This id is also shown in the management view as "Referenz ID". It can be anything you want want, so a database id or - as we recommend - an identifier that is human relatable like the property number.

Dates

Dates/Times are always returned in ISO 8601 format (YYYY-MM-DDThh:mm:ss.sssZ). They are also returned in UTC.

Other

We also have a documentation for the Community API which describes the API the community app uses.

Authentication

casavi authentication

Get access token

key and secret can be obtained from your connectivity contact at casavi and give access to a whole casavi account.

Deprecation:

Before this method used three parameters: apiKey, email and password. This is deprecated, but still supported because we are mapping the parameters:

  • secret equals password
  • key equals apiKey and
  • email is just ignored.
Request Body schema: application/json

Data to authenticate into casavi

key
required
string

API key. Should not be empty

secret
required
string

API secret

Responses

Request samples

Content type
application/json
{
  • "key": "04523b90-9ee1-49f7-af31-b1f24efe84ad",
  • "secret": "ksdasji0-sf818-nfn81-ms9a-ams9d9a9as"
}

Response samples

Content type
application/json
{
  • "token": "a2cf47a9-3d2e-455e-a34b-7a79f11aa7f9",
  • "expiresAt": "1985-12-05T15:31:10Z"
}

Import

A main process needed to work with casavi is to get master data from the ERP or property management software into casavi regularly. For this we use an asynchronous process. Roughly the process is as follows:

Send your data according to the import model to the import endpoint. All the data in that request is automatically imported in the correct order, so that contacts and properties are created first, followed by units and finally documents. When supplying individual imports to the API this order has to be taken into account as well as no units for example can be imported if there is not yet the contact in casavi with a matching reference id.

The import works asynchronously and with a queue, meaning that not all imports are guaranteed to be imported at once. This endpoint will return a job ID that you can use to check the status of the job via jobs/{jobId}.

Import

The import endpoint takes in a master data object and asynchronously imports it into casavi.

Authorizations:
Request Body schema: application/json

Data to be imported into casavi

Array of objects (Contact)
Array of objects (PropertyImport)
Array of objects (Responsibility)

Responses

Request samples

Content type
application/json
{
  • "contacts":
    [
    ],
  • "properties":
    [
    ],
  • "responsibilities":
    [
    ]
}

Response samples

Content type
application/json
{
  • "jobId": "string"
}

Information about a job

Returns the status of a running import.

Authorizations:
path Parameters
jobId
required
string
Example: 58eca7a398af3a14a3af2efe

Id of the import (Returned when starting an import (POST /import))

Responses

Response samples

Content type
application/json
{
  • "id": "58eca7a398af3a14a3af2efe",
  • "results":
    {