This API uses HAL / Spring HATEOAS. If you are unfamiliar with Hypermedia Controls then I highly recommend to watch this video before you explore the documentation.

Entity

Skylar uses a DAO structure which will be referred as Entity in this documentation.

{
    "id": 1,
    "uuid" : "00000000-eaf1-4c58-baaf-e29b38c961f6",
    "logstash" : "2017-04-01T00:00:00+02:00",
    "description" : "Thomas",
    "...": "..."
}

This API mainly focuses on performing CRUD operations to these Entities which share the following properties

Name Type Usage

id

Long

local reference id. E.g. Neo4j database id which is ONLY unique in Neo4j scope.

uuid

UUID

global reference id. Unique across the application scope. E.g. when using this identifier to search in Neo4j and Elasticsearch. You will get the Neo4j and Elasticsearch representation of the same Entity

logstash

String

Log or creation date of the Entity. For more information see Logstash or ElasticsearchUtil.

description

String

Description or name of a Entity

Index

Response fields

Path Type Description

_links

Object

Links to other resources

Example request

$ curl 'http://skylar.livingfire.de/api' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 1445

{
  "_links" : {
    "contacts" : {
      "href" : "http://skylar.livingfire.de/api/contacts{?page,size,sort}",
      "templated" : true
    },
    "users" : {
      "href" : "http://skylar.livingfire.de/api/users{?page,size,sort}",
      "templated" : true
    },
    "firms" : {
      "href" : "http://skylar.livingfire.de/api/firms{?page,size,sort}",
      "templated" : true
    },
    "settings" : {
      "href" : "http://skylar.livingfire.de/api/settings{?page,size,sort}",
      "templated" : true
    },
    "dimensions" : {
      "href" : "http://skylar.livingfire.de/api/dimensions{?page,size,sort}",
      "templated" : true
    },
    "technologys" : {
      "href" : "http://skylar.livingfire.de/api/technologys{?page,size,sort}",
      "templated" : true
    },
    "notes" : {
      "href" : "http://skylar.livingfire.de/api/notes{?page,size,sort}",
      "templated" : true
    },
    "listdatas" : {
      "href" : "http://skylar.livingfire.de/api/listdatas{?page,size,sort}",
      "templated" : true
    },
    "javascript" : {
      "href" : "http://skylar.livingfire.de/api/javascript"
    },
    "export" : {
      "href" : "http://skylar.livingfire.de/api/export"
    },
    "import" : {
      "href" : "http://skylar.livingfire.de/api/import"
    },
    "selenium" : {
      "href" : "http://skylar.livingfire.de/api/selenium"
    },
    "profile" : {
      "href" : "http://skylar.livingfire.de/api/profile"
    }
  }
}
Relation Description

users

See Users

listdatas

See ListDatas

contacts

See Contacts

firms

See Firms

notes

See Notes

technologys

See Technologies

dimensions

See Dimensions

settings

See Settings

javascript

Helper methods Javascript

export

Helper methods Export

import

Helper methods Import

selenium

See Selenium

profile

The Application-Level Profile Semantics (ALPS)

Error

Response fields

Path Type Description

error

String

The HTTP status code that occurred

message

String

A massage like Bad Request

path

String

The path to which the request was made

status

Number

The HTTP status code like 400

timestamp

String

The time in milliseconds at which the error occurred

Example request

$ curl 'http://skylar.livingfire.de/error' -i -X GET

Example response

HTTP/1.1 400 Bad Request
Content-Type: application/json;charset=UTF-8
Content-Length: 157

{
  "timestamp" : "2019-01-28T15:08:07.836+0000",
  "status" : 400,
  "error" : "Bad Request",
  "message" : "Bad Request",
  "path" : "/repository/fooBar"
}

Contact

Details

Example request

$ curl 'http://skylar.livingfire.de/api/profile/contacts' -i -X GET

Create

A POST request will create a Contact.

Example request

$ curl 'http://skylar.livingfire.de/api/contacts' -i -X POST \
    -H 'Content-Type: application/hal+json' \
    -d '{
  "id" : null,
  "uuid" : "8e5c0df2-0ba6-4c74-8393-d38ec198e754",
  "logstash" : "2017-04-01T00:00:00+02:00",
  "description" : "Jon Doe",
  "email" : "gibts@gar.net",
  "phone" : "555-123456",
  "recruiter" : false
}'

Example response

HTTP/1.1 201 Created
Location: http://skylar.livingfire.de/api/contacts/0

Retrieve

A GET request will retrieve a Contact.

Response fields

Path Type Description

uuid

String

Java UUID

logstash

String

ISO 8601 date with TimeZone UTC in format "yyyy-MM-dd’T’HH:mm:ssZ" e.g. 2017-04-01T00:00:00Z

description

String

Description or name

email

String

a email address like 'gibts@gar.net'

phone

String

a phone number like '555-123456'

recruiter

Boolean

true == external recruiter firm

_links

Object

Links to other resources

Example request

$ curl 'http://skylar.livingfire.de/api/contacts/0' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 390

{
  "uuid" : "8e5c0df2-0ba6-4c74-8393-d38ec198e754",
  "logstash" : "2017-04-01T00:00:00+02:00",
  "description" : "Jon Doe",
  "email" : "gibts@gar.net",
  "phone" : "555-123456",
  "recruiter" : false,
  "_links" : {
    "self" : {
      "href" : "http://skylar.livingfire.de/api/contacts/0"
    },
    "contact" : {
      "href" : "http://skylar.livingfire.de/api/contacts/0"
    }
  }
}
Relation Description

self

Canonical link for this resource

contact

This Contact

Update

A PATCH request will update a Contact.

Example request

$ curl 'http://skylar.livingfire.de/api/contacts/0' -i -X PATCH \
    -H 'Content-Type: application/hal+json' \
    -d '{
  "description" : "John Doe"
}'

Example response

HTTP/1.1 204 No Content

Delete

A DELETE request will delete a Contact.

Example request

$ curl 'http://skylar.livingfire.de/api/contacts/0' -i -X DELETE \
    -H 'Content-Type: application/hal+json'

Example response

HTTP/1.1 204 No Content

Details

Example request
$ curl 'http://skylar.livingfire.de/api/contacts/search' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 403

{
  "_links" : {
    "findByDescription" : {
      "href" : "http://skylar.livingfire.de/api/contacts/search/findByDescription{?description}",
      "templated" : true
    },
    "findByUuid" : {
      "href" : "http://skylar.livingfire.de/api/contacts/search/findByUuid{?uuid}",
      "templated" : true
    },
    "self" : {
      "href" : "http://skylar.livingfire.de/api/contacts/search"
    }
  }
}

findByUuid

A GET request will retrieve a Contact.

Request parameters
Parameter Description

uuid

Java UUID

Response fields
Path Type Description

uuid

String

Java UUID

logstash

String

ISO 8601 date with TimeZone UTC in format "yyyy-MM-dd’T’HH:mm:ssZ" e.g. 2017-04-01T00:00:00Z

description

String

Description or name

email

String

a email address like 'gibts@gar.net'

phone

String

a phone number like '555-123456'

recruiter

Boolean

true == external recruiter firm

_links

Object

Links to other resources

Example request
$ curl 'http://skylar.livingfire.de/api/contacts/search/findByUuid?uuid=8e5c0df2-0ba6-4c74-8393-d38ec198e754' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 391

{
  "uuid" : "8e5c0df2-0ba6-4c74-8393-d38ec198e754",
  "logstash" : "2017-04-01T00:00:00+02:00",
  "description" : "John Doe",
  "email" : "gibts@gar.net",
  "phone" : "555-123456",
  "recruiter" : false,
  "_links" : {
    "self" : {
      "href" : "http://skylar.livingfire.de/api/contacts/0"
    },
    "contact" : {
      "href" : "http://skylar.livingfire.de/api/contacts/0"
    }
  }
}
Relation Description

self

Canonical link for this resource

contact

This Contact

findByDescription

A GET request will retrieve a array of Contact.

Request parameters
Parameter Description

description

Description or name

Response fields
Path Type Description

_embedded.contacts

Array

An array of Contact

_links

Object

Links to other resources

Example request
$ curl 'http://skylar.livingfire.de/api/contacts/search/findByDescription?description=Jon+Doe' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 170

{
  "_embedded" : {
    "contacts" : [ ]
  },
  "_links" : {
    "self" : {
      "href" : "http://skylar.livingfire.de/api/contacts/search/findByDescription"
    }
  }
}
Relation Description

self

Canonical link for this resource

Contacts

Listing

A GET request will retrieve a paginated view of all Contact.

Response fields

Path Type Description

_embedded.contacts

Array

An array of Contact

_links

Object

Links to other resources

page

Object

paging information

Example request

$ curl 'http://skylar.livingfire.de/api/contacts' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 919

{
  "_embedded" : {
    "contacts" : [ {
      "uuid" : "8e5c0df2-0ba6-4c74-8393-d38ec198e754",
      "logstash" : "2017-04-01T00:00:00+02:00",
      "description" : "John Doe",
      "email" : "gibts@gar.net",
      "phone" : "555-123456",
      "recruiter" : false,
      "_links" : {
        "self" : {
          "href" : "http://skylar.livingfire.de/api/contacts/0"
        },
        "contact" : {
          "href" : "http://skylar.livingfire.de/api/contacts/0"
        }
      }
    } ]
  },
  "_links" : {
    "self" : {
      "href" : "http://skylar.livingfire.de/api/contacts{?page,size,sort}",
      "templated" : true
    },
    "profile" : {
      "href" : "http://skylar.livingfire.de/api/profile/contacts"
    },
    "search" : {
      "href" : "http://skylar.livingfire.de/api/contacts/search"
    }
  },
  "page" : {
    "size" : 20,
    "totalElements" : 1,
    "totalPages" : 1,
    "number" : 0
  }
}
Relation Description

self

Canonical link for this resource

profile

The Application-Level Profile Semantics (ALPS)

search

Canonical link to search resources

Firm

Details

Example request

$ curl 'http://skylar.livingfire.de/api/profile/firms' -i -X GET

Create

A POST request will create a Firm.

Example request

$ curl 'http://skylar.livingfire.de/api/firms' -i -X POST \
    -H 'Content-Type: application/hal+json' \
    -d '{
  "id" : null,
  "uuid" : "2d845b50-74cb-4d18-b1bb-c7b969024f66",
  "logstash" : "2017-04-01T00:00:00+02:00",
  "description" : "Google",
  "active" : true,
  "url" : "http://www.google.de",
  "postalCode" : "12345",
  "city" : "ACME city",
  "street" : "ACME street 5",
  "relationRecruiter" : {
    "id" : null,
    "uuid" : "7d06d925-4e61-4648-9679-49b95c88fdec",
    "logstash" : "2017-04-01T00:00:00+02:00",
    "description" : "John Doe",
    "email" : "gibts@gar.net",
    "phone" : "555-123456",
    "recruiter" : false
  },
  "relationTechnologies" : [ {
    "id" : null,
    "uuid" : "fde1b0dc-e49c-4073-afc9-1ac215104661",
    "logstash" : "2017-04-01T00:00:00+02:00",
    "description" : "Java"
  } ],
  "relationNotes" : [ {
    "id" : null,
    "uuid" : "26d78edc-b8d2-485b-b1bf-f2f9c0651256",
    "logstash" : "2017-04-01T00:00:00+02:00",
    "description" : "2017-04-01 cycle started - Java Webdeveloper",
    "url" : "http://www.google.de/webdeveloper"
  } ]
}'

Example response

HTTP/1.1 201 Created
Location: http://skylar.livingfire.de/api/firms/1

Retrieve

A GET request will retrieve a Firm.

Response fields

Path Type Description

uuid

String

Java UUID

logstash

String

ISO 8601 date with TimeZone UTC in format "yyyy-MM-dd’T’HH:mm:ssZ" e.g. 2017-04-01T00:00:00Z

description

String

Description or name

active

Boolean

Active state e.g. 'true'

url

String

a URL like https://www.youtube.com/

postalCode

String

a postal code like 12345

city

String

a city name like 'ACME city'

street

String

a street address like 'ACME street 5'

_links

Object

Links to other resources

Example request

$ curl 'http://skylar.livingfire.de/api/firms/1' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 765

{
  "uuid" : "7d06d925-4e61-4648-9679-49b95c88fdec",
  "logstash" : "2017-04-01T00:00:00+02:00",
  "description" : "John Doe",
  "active" : true,
  "url" : "http://www.google.de",
  "postalCode" : "12345",
  "city" : "ACME city",
  "street" : "ACME street 5",
  "_links" : {
    "self" : {
      "href" : "http://skylar.livingfire.de/api/firms/1"
    },
    "firm" : {
      "href" : "http://skylar.livingfire.de/api/firms/1"
    },
    "relationTechnologies" : {
      "href" : "http://skylar.livingfire.de/api/firms/1/relationTechnologies"
    },
    "relationRecruiter" : {
      "href" : "http://skylar.livingfire.de/api/firms/1/relationRecruiter"
    },
    "relationNotes" : {
      "href" : "http://skylar.livingfire.de/api/firms/1/relationNotes"
    }
  }
}
Relation Description

self

Canonical link for this resource

firm

This Firm

relationNotes

Relation Notes

relationTechnologies

Relation Technologies

relationRecruiter

Relation Contact

Update

A PATCH request will update a Firm.

Example request

$ curl 'http://skylar.livingfire.de/api/firms/1' -i -X PATCH \
    -H 'Content-Type: application/hal+json' \
    -d '{
  "description" : "Google"
}'

Example response

HTTP/1.1 204 No Content

Delete

A DELETE request will delete a Firm.

Example request

$ curl 'http://skylar.livingfire.de/api/firms/1' -i -X DELETE \
    -H 'Content-Type: application/hal+json'

Example response

HTTP/1.1 204 No Content

Details

Example request
$ curl 'http://skylar.livingfire.de/api/firms/search' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 534

{
  "_links" : {
    "findByDescription" : {
      "href" : "http://skylar.livingfire.de/api/firms/search/findByDescription{?description}",
      "templated" : true
    },
    "findByActive" : {
      "href" : "http://skylar.livingfire.de/api/firms/search/findByActive{?active}",
      "templated" : true
    },
    "findByUuid" : {
      "href" : "http://skylar.livingfire.de/api/firms/search/findByUuid{?uuid}",
      "templated" : true
    },
    "self" : {
      "href" : "http://skylar.livingfire.de/api/firms/search"
    }
  }
}

findByUuid

A GET request will retrieve a Firm.

Request parameters
Parameter Description

uuid

Java UUID

Response fields
Path Type Description

uuid

String

Java UUID

logstash

String

ISO 8601 date with TimeZone UTC in format "yyyy-MM-dd’T’HH:mm:ssZ" e.g. 2017-04-01T00:00:00Z

description

String

Description or name

active

Boolean

Active state e.g. 'true'

url

String

a URL like https://www.youtube.com/

postalCode

String

a postal code like 12345

city

String

a city name like 'ACME city'

street

String

a street address like 'ACME street 5'

_links

Object

Links to other resources

Example request
$ curl 'http://skylar.livingfire.de/api/firms/search/findByUuid?uuid=7d06d925-4e61-4648-9679-49b95c88fdec' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 763

{
  "uuid" : "7d06d925-4e61-4648-9679-49b95c88fdec",
  "logstash" : "2017-04-01T00:00:00+02:00",
  "description" : "Google",
  "active" : true,
  "url" : "http://www.google.de",
  "postalCode" : "12345",
  "city" : "ACME city",
  "street" : "ACME street 5",
  "_links" : {
    "self" : {
      "href" : "http://skylar.livingfire.de/api/firms/1"
    },
    "firm" : {
      "href" : "http://skylar.livingfire.de/api/firms/1"
    },
    "relationTechnologies" : {
      "href" : "http://skylar.livingfire.de/api/firms/1/relationTechnologies"
    },
    "relationRecruiter" : {
      "href" : "http://skylar.livingfire.de/api/firms/1/relationRecruiter"
    },
    "relationNotes" : {
      "href" : "http://skylar.livingfire.de/api/firms/1/relationNotes"
    }
  }
}
Relation Description

self

Canonical link for this resource

firm

This Firm

relationNotes

Relation Notes

relationTechnologies

Relation Technologies

relationRecruiter

Relation Contact

findByDescription

A GET request will retrieve a array of Firm.

Request parameters
Parameter Description

description

Description or name

Response fields
Path Type Description

_embedded.firms

Array

An array of Firm

_links

Object

Links to other resources

Example request
$ curl 'http://skylar.livingfire.de/api/firms/search/findByDescription?description=John+Doe' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 164

{
  "_embedded" : {
    "firms" : [ ]
  },
  "_links" : {
    "self" : {
      "href" : "http://skylar.livingfire.de/api/firms/search/findByDescription"
    }
  }
}
Relation Description

self

Canonical link for this resource

Firms

Listing

A GET request will retrieve a paginated view of all Firm.

Response fields

Path Type Description

_embedded.firms

Array

An array of Firm

_links

Object

Firms to other resources

page

Object

paging information

Example request

$ curl 'http://skylar.livingfire.de/api/firms' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 1323

{
  "_embedded" : {
    "firms" : [ {
      "uuid" : "7d06d925-4e61-4648-9679-49b95c88fdec",
      "logstash" : "2017-04-01T00:00:00+02:00",
      "description" : "Google",
      "active" : true,
      "url" : "http://www.google.de",
      "postalCode" : "12345",
      "city" : "ACME city",
      "street" : "ACME street 5",
      "_links" : {
        "self" : {
          "href" : "http://skylar.livingfire.de/api/firms/1"
        },
        "firm" : {
          "href" : "http://skylar.livingfire.de/api/firms/1"
        },
        "relationTechnologies" : {
          "href" : "http://skylar.livingfire.de/api/firms/1/relationTechnologies"
        },
        "relationRecruiter" : {
          "href" : "http://skylar.livingfire.de/api/firms/1/relationRecruiter"
        },
        "relationNotes" : {
          "href" : "http://skylar.livingfire.de/api/firms/1/relationNotes"
        }
      }
    } ]
  },
  "_links" : {
    "self" : {
      "href" : "http://skylar.livingfire.de/api/firms{?page,size,sort}",
      "templated" : true
    },
    "profile" : {
      "href" : "http://skylar.livingfire.de/api/profile/firms"
    },
    "search" : {
      "href" : "http://skylar.livingfire.de/api/firms/search"
    }
  },
  "page" : {
    "size" : 20,
    "totalElements" : 1,
    "totalPages" : 1,
    "number" : 0
  }
}
Relation Description

self

Canonical link for this resource

profile

The Application-Level Profile Semantics (ALPS)

search

Canonical link to search resources

ListData

Details

Example request

$ curl 'http://skylar.livingfire.de/api/profile/listdatas' -i -X GET

Create

A POST request will create a ListData.

Example request

$ curl 'http://skylar.livingfire.de/api/listdatas' -i -X POST \
    -H 'Content-Type: application/hal+json' \
    -d '{
  "id" : null,
  "uuid" : "dc06c6d1-39d9-4869-8628-938dd0fa0375",
  "logstash" : "2017-04-01T00:00:01Z",
  "description" : "beautiful weather and good run",
  "group" : "running",
  "entryDate" : "2019-01-28T15:08:11.752Z",
  "dimension" : "distance",
  "unit" : "km",
  "value" : "13",
  "relationDimensionHasDimension" : null
}'

Example response

HTTP/1.1 201 Created
Location: http://skylar.livingfire.de/api/listdatas/2

Retrieve

A GET request will retrieve a ListData.

Response fields

Path Type Description

uuid

String

Java UUID

logstash

String

ISO 8601 date with TimeZone UTC in format "yyyy-MM-dd’T’HH:mm:ssZ" e.g. 2017-04-01T00:00:00Z

description

String

Description or name

dimension

String

Name of a dimension in a matrix. E.g. distance, time, x, y, z, …​

group

String

The group this value belongs to. This can be thougt of a as a another dimension in a matrix

entryDate

String

creation date

unit

String

a unit of measurement like km, s, ccm

value

String

Value like 42, 3.1415, 'Hello World!'

_links

Object

Links to other resources

Example request

$ curl 'http://skylar.livingfire.de/api/listdatas/2' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 601

{
  "uuid" : "dc06c6d1-39d9-4869-8628-938dd0fa0375",
  "logstash" : "2017-04-01T00:00:01Z",
  "description" : "beautiful weather and good run",
  "group" : "running",
  "entryDate" : "2019-01-28T15:08:11.752Z",
  "dimension" : "distance",
  "unit" : "km",
  "value" : "13",
  "_links" : {
    "self" : {
      "href" : "http://skylar.livingfire.de/api/listdatas/2"
    },
    "listdata" : {
      "href" : "http://skylar.livingfire.de/api/listdatas/2"
    },
    "relationDimensionHasDimension" : {
      "href" : "http://skylar.livingfire.de/api/listdatas/2/relationDimensionHasDimension"
    }
  }
}
Relation Description

self

Canonical link for this resource

listdata

This ListData

relationDimensionHasDimension

Relation Dimension

Update

A PATCH request will update a ListData.

Example request

$ curl 'http://skylar.livingfire.de/api/listdatas/2' -i -X PATCH \
    -H 'Content-Type: application/hal+json' \
    -d '{
  "description" : "bad rain on run"
}'

Example response

HTTP/1.1 204 No Content

Delete

A DELETE request will delete a ListData.

Example request

$ curl 'http://skylar.livingfire.de/api/listdatas/2' -i -X DELETE \
    -H 'Content-Type: application/hal+json'

Example response

HTTP/1.1 204 No Content

Details

Example request
$ curl 'http://skylar.livingfire.de/api/listdatas/search' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 835

{
  "_links" : {
    "findByUuid" : {
      "href" : "http://skylar.livingfire.de/api/listdatas/search/findByUuid{?uuid}",
      "templated" : true
    },
    "findByDescription" : {
      "href" : "http://skylar.livingfire.de/api/listdatas/search/findByDescription{?description}",
      "templated" : true
    },
    "findByGroupAndDimension" : {
      "href" : "http://skylar.livingfire.de/api/listdatas/search/findByGroupAndDimension{?group,dimension}",
      "templated" : true
    },
    "groupDimension" : {
      "href" : "http://skylar.livingfire.de/api/listdatas/search/groupDimension"
    },
    "findByGroup" : {
      "href" : "http://skylar.livingfire.de/api/listdatas/search/findByGroup{?group}",
      "templated" : true
    },
    "self" : {
      "href" : "http://skylar.livingfire.de/api/listdatas/search"
    }
  }
}

findByUuid

A GET request will retrieve a ListData.

Request parameters
Parameter Description

uuid

Java UUID

Response fields
Path Type Description

uuid

String

Java UUID

logstash

String

ISO 8601 date with TimeZone UTC in format "yyyy-MM-dd’T’HH:mm:ssZ" e.g. 2017-04-01T00:00:00Z

description

String

Description or name

dimension

String

Name of a dimension in a matrix. E.g. distance, time, x, y, z, …​

group

String

The group this value belongs to. This can be thougt of a as a another dimension in a matrix

entryDate

String

creation date

unit

String

a unit of measurement like km, s, ccm

value

String

Value like 42, 3.1415, 'Hello World!'

_links

Object

Links to other resources

Example request
$ curl 'http://skylar.livingfire.de/api/listdatas/search/findByUuid?uuid=dc06c6d1-39d9-4869-8628-938dd0fa0375' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 586

{
  "uuid" : "dc06c6d1-39d9-4869-8628-938dd0fa0375",
  "logstash" : "2017-04-01T00:00:01Z",
  "description" : "bad rain on run",
  "group" : "running",
  "entryDate" : "2019-01-28T15:08:11.752Z",
  "dimension" : "distance",
  "unit" : "km",
  "value" : "13",
  "_links" : {
    "self" : {
      "href" : "http://skylar.livingfire.de/api/listdatas/2"
    },
    "listdata" : {
      "href" : "http://skylar.livingfire.de/api/listdatas/2"
    },
    "relationDimensionHasDimension" : {
      "href" : "http://skylar.livingfire.de/api/listdatas/2/relationDimensionHasDimension"
    }
  }
}
Relation Description

self

Canonical link for this resource

listdata

This ListData

relationDimensionHasDimension

Relation Dimension

findByDescription

A GET request will retrieve a array of ListData.

Request parameters
Parameter Description

description

Description or name

Response fields
Path Type Description

_embedded.listdatas

Array

An array of ListData

_links

Object

Links to other resources

Example request
$ curl 'http://skylar.livingfire.de/api/listdatas/search/findByDescription?description=beautiful+weather+and+good+run' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 172

{
  "_embedded" : {
    "listdatas" : [ ]
  },
  "_links" : {
    "self" : {
      "href" : "http://skylar.livingfire.de/api/listdatas/search/findByDescription"
    }
  }
}
Relation Description

self

Canonical link for this resource

ListDatas

Listing

A GET request will retrieve a paginated view of all Setting.

Response fields

Path Type Description

_embedded.settings

Array

An array of Setting

_links

Object

Links to other resources

page

Object

paging information

Example request

$ curl 'http://skylar.livingfire.de/api/settings' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 1007

{
  "_embedded" : {
    "settings" : [ {
      "uuid" : "85f4fb14-8493-4ceb-945d-cdbd4f239cb9",
      "logstash" : "2017-04-01T00:00:00+02:00",
      "description" : "en",
      "dimension" : "ttsLanguage",
      "_links" : {
        "self" : {
          "href" : "http://skylar.livingfire.de/api/settings/4"
        },
        "setting" : {
          "href" : "http://skylar.livingfire.de/api/settings/4"
        },
        "relationDimensionHasDimension" : {
          "href" : "http://skylar.livingfire.de/api/settings/4/relationDimensionHasDimension"
        }
      }
    } ]
  },
  "_links" : {
    "self" : {
      "href" : "http://skylar.livingfire.de/api/settings{?page,size,sort}",
      "templated" : true
    },
    "profile" : {
      "href" : "http://skylar.livingfire.de/api/profile/settings"
    },
    "search" : {
      "href" : "http://skylar.livingfire.de/api/settings/search"
    }
  },
  "page" : {
    "size" : 20,
    "totalElements" : 1,
    "totalPages" : 1,
    "number" : 0
  }
}
Relation Description

self

Canonical link for this resource

profile

The Application-Level Profile Semantics (ALPS)

search

Canonical link to search resources

Note

Details

Example request

$ curl 'http://skylar.livingfire.de/api/profile/notes' -i -X GET

Create

A POST request will create a Note.

Example request

$ curl 'http://skylar.livingfire.de/api/notes' -i -X POST \
    -H 'Content-Type: application/hal+json' \
    -d '{
  "id" : null,
  "uuid" : "2d8b978f-e659-43c5-96b5-563ab7164fd5",
  "logstash" : "2017-04-01T00:00:00+02:00",
  "description" : "2018-04-01 started job - Java Application Developer",
  "url" : "http://www.google.de/javaDeveloper"
}'

Example response

HTTP/1.1 201 Created
Location: http://skylar.livingfire.de/api/notes/3

Retrieve

A GET request will retrieve a Note.

Response fields

Path Type Description

uuid

String

Java UUID

logstash

String

ISO 8601 date with TimeZone UTC in format "yyyy-MM-dd’T’HH:mm:ssZ" e.g. 2017-04-01T00:00:00Z

description

String

Description or name

url

String

a URL like https://www.youtube.com/

_links

Object

Links to other resources

Example request

$ curl 'http://skylar.livingfire.de/api/notes/3' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 395

{
  "uuid" : "2d8b978f-e659-43c5-96b5-563ab7164fd5",
  "logstash" : "2017-04-01T00:00:00+02:00",
  "description" : "2018-04-01 started job - Java Application Developer",
  "url" : "http://www.google.de/javaDeveloper",
  "_links" : {
    "self" : {
      "href" : "http://skylar.livingfire.de/api/notes/3"
    },
    "note" : {
      "href" : "http://skylar.livingfire.de/api/notes/3"
    }
  }
}
Relation Description

self

Canonical link for this resource

note

This Note

Update

A PATCH request will update a Note.

Example request

$ curl 'http://skylar.livingfire.de/api/notes/3' -i -X PATCH \
    -H 'Content-Type: application/hal+json' \
    -d '{
  "description" : "2018-04-01 started job - Java Application Developer"
}'

Example response

HTTP/1.1 204 No Content

Delete

A DELETE request will delete a Note.

Example request

$ curl 'http://skylar.livingfire.de/api/notes/3' -i -X DELETE \
    -H 'Content-Type: application/hal+json'

Example response

HTTP/1.1 204 No Content

Details

Example request
$ curl 'http://skylar.livingfire.de/api/notes/search' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 511

{
  "_links" : {
    "findByUuid" : {
      "href" : "http://skylar.livingfire.de/api/notes/search/findByUuid{?uuid}",
      "templated" : true
    },
    "findByDescription" : {
      "href" : "http://skylar.livingfire.de/api/notes/search/findByDescription{?description}",
      "templated" : true
    },
    "notesOfActiveFirms" : {
      "href" : "http://skylar.livingfire.de/api/notes/search/notesOfActiveFirms"
    },
    "self" : {
      "href" : "http://skylar.livingfire.de/api/notes/search"
    }
  }
}

findByUuid

A GET request will retrieve a Note.

Request parameters
Parameter Description

uuid

Java UUID

Response fields
Path Type Description

uuid

String

Java UUID

logstash

String

ISO 8601 date with TimeZone UTC in format "yyyy-MM-dd’T’HH:mm:ssZ" e.g. 2017-04-01T00:00:00Z

description

String

Description or name

url

String

a URL like https://www.youtube.com/

_links

Object

Links to other resources

Example request
$ curl 'http://skylar.livingfire.de/api/notes/search/findByUuid?uuid=2d8b978f-e659-43c5-96b5-563ab7164fd5' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 395

{
  "uuid" : "2d8b978f-e659-43c5-96b5-563ab7164fd5",
  "logstash" : "2017-04-01T00:00:00+02:00",
  "description" : "2018-04-01 started job - Java Application Developer",
  "url" : "http://www.google.de/javaDeveloper",
  "_links" : {
    "self" : {
      "href" : "http://skylar.livingfire.de/api/notes/3"
    },
    "note" : {
      "href" : "http://skylar.livingfire.de/api/notes/3"
    }
  }
}
Relation Description

self

Canonical link for this resource

note

This Note

findByDescription

A GET request will retrieve a array of Note.

Request parameters
Parameter Description

description

Description or name

Response fields
Path Type Description

_embedded.notes

Array

An array of Note

_links

Object

Links to other resources

Example request
$ curl 'http://skylar.livingfire.de/api/notes/search/findByDescription?description=2018-04-01+started+job+-+Java+Application+Developer' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 612

{
  "_embedded" : {
    "notes" : [ {
      "uuid" : "2d8b978f-e659-43c5-96b5-563ab7164fd5",
      "logstash" : "2017-04-01T00:00:00+02:00",
      "description" : "2018-04-01 started job - Java Application Developer",
      "url" : "http://www.google.de/javaDeveloper",
      "_links" : {
        "self" : {
          "href" : "http://skylar.livingfire.de/api/notes/3"
        },
        "note" : {
          "href" : "http://skylar.livingfire.de/api/notes/3"
        }
      }
    } ]
  },
  "_links" : {
    "self" : {
      "href" : "http://skylar.livingfire.de/api/notes/search/findByDescription"
    }
  }
}
Relation Description

self

Canonical link for this resource

Notes

Listing

A GET request will retrieve a paginated view of all Note.

Response fields

Path Type Description

_embedded.notes

Array

An array of Note

_links

Object

Notes to other resources

page

Object

paging information

Example request

$ curl 'http://skylar.livingfire.de/api/notes' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 903

{
  "_embedded" : {
    "notes" : [ {
      "uuid" : "2d8b978f-e659-43c5-96b5-563ab7164fd5",
      "logstash" : "2017-04-01T00:00:00+02:00",
      "description" : "2018-04-01 started job - Java Application Developer",
      "url" : "http://www.google.de/javaDeveloper",
      "_links" : {
        "self" : {
          "href" : "http://skylar.livingfire.de/api/notes/3"
        },
        "note" : {
          "href" : "http://skylar.livingfire.de/api/notes/3"
        }
      }
    } ]
  },
  "_links" : {
    "self" : {
      "href" : "http://skylar.livingfire.de/api/notes{?page,size,sort}",
      "templated" : true
    },
    "profile" : {
      "href" : "http://skylar.livingfire.de/api/profile/notes"
    },
    "search" : {
      "href" : "http://skylar.livingfire.de/api/notes/search"
    }
  },
  "page" : {
    "size" : 20,
    "totalElements" : 1,
    "totalPages" : 1,
    "number" : 0
  }
}
Relation Description

self

Canonical link for this resource

profile

The Application-Level Profile Semantics (ALPS)

search

Canonical link to search resources

Setting

Details

Example request

$ curl 'http://skylar.livingfire.de/api/profile/settings' -i -X GET

Create

A POST request will create a Setting.

Example request

$ curl 'http://skylar.livingfire.de/api/settings' -i -X POST \
    -H 'Content-Type: application/hal+json' \
    -d '{
  "id" : null,
  "uuid" : "85f4fb14-8493-4ceb-945d-cdbd4f239cb9",
  "logstash" : "2017-04-01T00:00:00+02:00",
  "description" : "de",
  "dimension" : "ttsLanguage",
  "relationDimensionHasDimension" : null
}'

Example response

HTTP/1.1 201 Created
Location: http://skylar.livingfire.de/api/settings/4

Retrieve

A GET request will retrieve a Setting.

Response fields

Path Type Description

uuid

String

Java UUID

logstash

String

ISO 8601 date with TimeZone UTC in format "yyyy-MM-dd’T’HH:mm:ssZ" e.g. 2017-04-01T00:00:00Z

description

String

Description or name

dimension

String

Name of a dimension in a matrix. E.g. distance, time, x, y, z, …​

_links

Object

Links to other resources

Example request

$ curl 'http://skylar.livingfire.de/api/settings/4' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 475

{
  "uuid" : "85f4fb14-8493-4ceb-945d-cdbd4f239cb9",
  "logstash" : "2017-04-01T00:00:00+02:00",
  "description" : "de",
  "dimension" : "ttsLanguage",
  "_links" : {
    "self" : {
      "href" : "http://skylar.livingfire.de/api/settings/4"
    },
    "setting" : {
      "href" : "http://skylar.livingfire.de/api/settings/4"
    },
    "relationDimensionHasDimension" : {
      "href" : "http://skylar.livingfire.de/api/settings/4/relationDimensionHasDimension"
    }
  }
}
Relation Description

self

Canonical link for this resource

setting

This Setting

relationDimensionHasDimension

Relation Dimension

Update

A PATCH request will update a Setting.

Example request

$ curl 'http://skylar.livingfire.de/api/settings/4' -i -X PATCH \
    -H 'Content-Type: application/hal+json' \
    -d '{
  "description" : "en"
}'

Example response

HTTP/1.1 204 No Content

Delete

A DELETE request will delete a Setting.

Example request

$ curl 'http://skylar.livingfire.de/api/settings/4' -i -X DELETE \
    -H 'Content-Type: application/hal+json'

Example response

HTTP/1.1 204 No Content

Details

Example request
$ curl 'http://skylar.livingfire.de/api/settings/search' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 555

{
  "_links" : {
    "findByDimension" : {
      "href" : "http://skylar.livingfire.de/api/settings/search/findByDimension{?dimension}",
      "templated" : true
    },
    "findByUuid" : {
      "href" : "http://skylar.livingfire.de/api/settings/search/findByUuid{?uuid}",
      "templated" : true
    },
    "findByDescription" : {
      "href" : "http://skylar.livingfire.de/api/settings/search/findByDescription{?description}",
      "templated" : true
    },
    "self" : {
      "href" : "http://skylar.livingfire.de/api/settings/search"
    }
  }
}

findByUuid

A GET request will retrieve a Setting.

Request parameters
Parameter Description

uuid

Java UUID

Response fields
Path Type Description

uuid

String

Java UUID

logstash

String

ISO 8601 date with TimeZone UTC in format "yyyy-MM-dd’T’HH:mm:ssZ" e.g. 2017-04-01T00:00:00Z

description

String

Description or name

dimension

String

Name of a dimension in a matrix. E.g. distance, time, x, y, z, …​

_links

Object

Links to other resources

Example request
$ curl 'http://skylar.livingfire.de/api/settings/search/findByUuid?uuid=85f4fb14-8493-4ceb-945d-cdbd4f239cb9' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 475

{
  "uuid" : "85f4fb14-8493-4ceb-945d-cdbd4f239cb9",
  "logstash" : "2017-04-01T00:00:00+02:00",
  "description" : "en",
  "dimension" : "ttsLanguage",
  "_links" : {
    "self" : {
      "href" : "http://skylar.livingfire.de/api/settings/4"
    },
    "setting" : {
      "href" : "http://skylar.livingfire.de/api/settings/4"
    },
    "relationDimensionHasDimension" : {
      "href" : "http://skylar.livingfire.de/api/settings/4/relationDimensionHasDimension"
    }
  }
}
Relation Description

self

Canonical link for this resource

setting

This Setting

relationDimensionHasDimension

Relation Dimension

findByDescription

A GET request will retrieve a array of Setting.

Request parameters
Parameter Description

description

Description or name

Response fields
Path Type Description

_embedded.settings

Array

An array of Setting

_links

Object

Links to other resources

Example request
$ curl 'http://skylar.livingfire.de/api/settings/search/findByDescription?description=de' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 170

{
  "_embedded" : {
    "settings" : [ ]
  },
  "_links" : {
    "self" : {
      "href" : "http://skylar.livingfire.de/api/settings/search/findByDescription"
    }
  }
}
Relation Description

self

Canonical link for this resource

Settings

Listing

A GET request will retrieve a paginated view of all Setting.

Response fields

Path Type Description

_embedded.settings

Array

An array of Setting

_links

Object

Links to other resources

page

Object

paging information

Example request

$ curl 'http://skylar.livingfire.de/api/settings' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 1007

{
  "_embedded" : {
    "settings" : [ {
      "uuid" : "85f4fb14-8493-4ceb-945d-cdbd4f239cb9",
      "logstash" : "2017-04-01T00:00:00+02:00",
      "description" : "en",
      "dimension" : "ttsLanguage",
      "_links" : {
        "self" : {
          "href" : "http://skylar.livingfire.de/api/settings/4"
        },
        "setting" : {
          "href" : "http://skylar.livingfire.de/api/settings/4"
        },
        "relationDimensionHasDimension" : {
          "href" : "http://skylar.livingfire.de/api/settings/4/relationDimensionHasDimension"
        }
      }
    } ]
  },
  "_links" : {
    "self" : {
      "href" : "http://skylar.livingfire.de/api/settings{?page,size,sort}",
      "templated" : true
    },
    "profile" : {
      "href" : "http://skylar.livingfire.de/api/profile/settings"
    },
    "search" : {
      "href" : "http://skylar.livingfire.de/api/settings/search"
    }
  },
  "page" : {
    "size" : 20,
    "totalElements" : 1,
    "totalPages" : 1,
    "number" : 0
  }
}
Relation Description

self

Canonical link for this resource

profile

The Application-Level Profile Semantics (ALPS)

search

Canonical link to search resources

Technology

Details

Example request

$ curl 'http://skylar.livingfire.de/api/profile/technologys' -i -X GET

Create

A POST request will create a Technology.

Example request

$ curl 'http://skylar.livingfire.de/api/technologys' -i -X POST \
    -H 'Content-Type: application/hal+json' \
    -d '{
  "id" : null,
  "uuid" : "f3ad6eb6-8f0d-44a5-a936-9f78d030f885",
  "logstash" : "2017-04-01T00:00:00Z",
  "description" : "Java"
}'

Example response

HTTP/1.1 201 Created
Location: http://skylar.livingfire.de/api/technologys/5

Retrieve

A GET request will retrieve a Technology.

Response fields

Path Type Description

uuid

String

Java UUID

logstash

String

ISO 8601 date with TimeZone UTC in format "yyyy-MM-dd’T’HH:mm:ssZ" e.g. 2017-04-01T00:00:00Z

description

String

Description or name

_links

Object

Links to other resources

Example request

$ curl 'http://skylar.livingfire.de/api/technologys/5' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 313

{
  "uuid" : "f3ad6eb6-8f0d-44a5-a936-9f78d030f885",
  "logstash" : "2017-04-01T00:00:00Z",
  "description" : "Java",
  "_links" : {
    "self" : {
      "href" : "http://skylar.livingfire.de/api/technologys/5"
    },
    "technology" : {
      "href" : "http://skylar.livingfire.de/api/technologys/5"
    }
  }
}
Relation Description

self

Canonical link for this resource

technology

This Technology

Update

A PATCH request will update a Technology.

Example request

$ curl 'http://skylar.livingfire.de/api/technologys/5' -i -X PATCH \
    -H 'Content-Type: application/hal+json' \
    -d '{
  "description" : "Java"
}'

Example response

HTTP/1.1 204 No Content

Delete

A DELETE request will delete a Technology.

Example request

$ curl 'http://skylar.livingfire.de/api/technologys/5' -i -X DELETE \
    -H 'Content-Type: application/hal+json'

Example response

HTTP/1.1 204 No Content

Details

Example request
$ curl 'http://skylar.livingfire.de/api/technologys/search' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 412

{
  "_links" : {
    "findByDescription" : {
      "href" : "http://skylar.livingfire.de/api/technologys/search/findByDescription{?description}",
      "templated" : true
    },
    "findByUuid" : {
      "href" : "http://skylar.livingfire.de/api/technologys/search/findByUuid{?uuid}",
      "templated" : true
    },
    "self" : {
      "href" : "http://skylar.livingfire.de/api/technologys/search"
    }
  }
}

findByUuid

A GET request will retrieve a Technology.

Request parameters
Parameter Description

uuid

Java UUID

Response fields
Path Type Description

uuid

String

Java UUID

logstash

String

ISO 8601 date with TimeZone UTC in format "yyyy-MM-dd’T’HH:mm:ssZ" e.g. 2017-04-01T00:00:00Z

description

String

Description or name

_links

Object

Links to other resources

Example request
$ curl 'http://skylar.livingfire.de/api/technologys/search/findByUuid?uuid=f3ad6eb6-8f0d-44a5-a936-9f78d030f885' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 313

{
  "uuid" : "f3ad6eb6-8f0d-44a5-a936-9f78d030f885",
  "logstash" : "2017-04-01T00:00:00Z",
  "description" : "Java",
  "_links" : {
    "self" : {
      "href" : "http://skylar.livingfire.de/api/technologys/5"
    },
    "technology" : {
      "href" : "http://skylar.livingfire.de/api/technologys/5"
    }
  }
}
Relation Description

self

Canonical link for this resource

technology

This Technology

findByDescription

A GET request will retrieve a array of Technology.

Request parameters
Parameter Description

description

Description or name

Response fields
Path Type Description

_embedded.technologys

Array

An array of Technology

_links

Object

Links to other resources

Example request
$ curl 'http://skylar.livingfire.de/api/technologys/search/findByDescription?description=Java' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 538

{
  "_embedded" : {
    "technologys" : [ {
      "uuid" : "f3ad6eb6-8f0d-44a5-a936-9f78d030f885",
      "logstash" : "2017-04-01T00:00:00Z",
      "description" : "Java",
      "_links" : {
        "self" : {
          "href" : "http://skylar.livingfire.de/api/technologys/5"
        },
        "technology" : {
          "href" : "http://skylar.livingfire.de/api/technologys/5"
        }
      }
    } ]
  },
  "_links" : {
    "self" : {
      "href" : "http://skylar.livingfire.de/api/technologys/search/findByDescription"
    }
  }
}
Relation Description

self

Canonical link for this resource

Technologies

Listing

A GET request will retrieve a paginated view of all Technology.

Response fields

Path Type Description

_embedded.technologys

Array

An array of Technology

_links

Object

Links to other resources

page

Object

paging information

Example request

$ curl 'http://skylar.livingfire.de/api/technologys' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 841

{
  "_embedded" : {
    "technologys" : [ {
      "uuid" : "f3ad6eb6-8f0d-44a5-a936-9f78d030f885",
      "logstash" : "2017-04-01T00:00:00Z",
      "description" : "Java",
      "_links" : {
        "self" : {
          "href" : "http://skylar.livingfire.de/api/technologys/5"
        },
        "technology" : {
          "href" : "http://skylar.livingfire.de/api/technologys/5"
        }
      }
    } ]
  },
  "_links" : {
    "self" : {
      "href" : "http://skylar.livingfire.de/api/technologys{?page,size,sort}",
      "templated" : true
    },
    "profile" : {
      "href" : "http://skylar.livingfire.de/api/profile/technologys"
    },
    "search" : {
      "href" : "http://skylar.livingfire.de/api/technologys/search"
    }
  },
  "page" : {
    "size" : 20,
    "totalElements" : 1,
    "totalPages" : 1,
    "number" : 0
  }
}
Relation Description

self

Canonical link for this resource

profile

The Application-Level Profile Semantics (ALPS)

search

Canonical link to search resources

User

The information stored for a Skylar User Account.

Details

Example request

$ curl 'http://skylar.livingfire.de/api/profile/users' -i -X GET

Create

A POST request will create a User.

Example request

$ curl 'http://skylar.livingfire.de/api/users' -i -X POST \
    -H 'Content-Type: application/hal+json' \
    -d '{
  "id" : null,
  "uuid" : "9ea65c1c-ae99-4a1a-b840-e8d7f5ec2c10",
  "logstash" : "2017-04-01T00:00:00+02:00",
  "description" : "Thomas",
  "relationSettingsSetBy" : [ ],
  "relationListdatasCanView" : [ ],
  "locationConfiguration" : {
    "language" : "de",
    "region" : "DE",
    "timeZoneString" : "Europe/Berlin",
    "locale" : "de_DE",
    "zoneId" : "Europe/Berlin",
    "zonedDateTime" : "2019-01-28T16:08:13.091+01:00"
  },
  "ttsConfiguration" : {
    "ttsGender" : "female",
    "ttsLanguage" : "de",
    "location" : {
      "language" : "de",
      "region" : "DE",
      "timeZoneString" : "Europe/Berlin",
      "locale" : "de_DE",
      "zoneId" : "Europe/Berlin",
      "zonedDateTime" : "2019-01-28T16:08:13.093+01:00"
    }
  }
}'

Example response

HTTP/1.1 201 Created
Location: http://skylar.livingfire.de/api/users/6

Retrieve

A GET request will retrieve a User.

Response fields

Path Type Description

uuid

String

Java UUID

logstash

String

ISO 8601 date with TimeZone UTC in format "yyyy-MM-dd’T’HH:mm:ssZ" e.g. 2017-04-01T00:00:00Z

description

String

Description or name

_links

Object

Links to other resources

locationConfiguration.language

String

LocationConfiguration - language e.g. de

locationConfiguration.region

String

LocationConfiguration - region e.g. DE

locationConfiguration.timeZoneString

String

LocationConfiguration - timeZoneString e.g. Europe/Berlin

locationConfiguration.locale

String

LocationConfiguration - locale e.g. de_DE

locationConfiguration.zoneId

String

LocationConfiguration - zoneId e.g. Europe/Berlin

locationConfiguration.zonedDateTime

String

LocationConfiguration - zonedDateTime e.g. 2017-11-02T19:24:13.514+01:00

ttsConfiguration.

Object

TtsConfiguration - e.g.

ttsConfiguration.ttsGender

String

TtsConfiguration ttsGender - e.g. female

ttsConfiguration.ttsLanguage

String

TtsConfiguration ttsLanguage - e.g. german

ttsConfiguration.location.language

String

LocationConfiguration - language e.g. de

ttsConfiguration.location.region

String

LocationConfiguration - region e.g. DE

ttsConfiguration.location.timeZoneString

String

LocationConfiguration - timeZoneString e.g. Europe/Berlin

ttsConfiguration.location.locale

String

LocationConfiguration - locale e.g. de_DE

ttsConfiguration.location.zoneId

String

LocationConfiguration - zoneId e.g. Europe/Berlin

ttsConfiguration.location.zonedDateTime

String

LocationConfiguration - zonedDateTime e.g. 2017-11-02T19:24:13.514+01:00

Example request

$ curl 'http://skylar.livingfire.de/api/users/6' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 1088

{
  "uuid" : "9ea65c1c-ae99-4a1a-b840-e8d7f5ec2c10",
  "logstash" : "2017-04-01T00:00:00+02:00",
  "description" : "Thomas",
  "locationConfiguration" : {
    "language" : "de",
    "region" : "DE",
    "timeZoneString" : "Europe/Berlin",
    "locale" : "de_DE",
    "zoneId" : "Europe/Berlin",
    "zonedDateTime" : "2019-01-28T16:08:13.188+01:00"
  },
  "ttsConfiguration" : {
    "ttsGender" : "female",
    "ttsLanguage" : "de",
    "location" : {
      "language" : "de",
      "region" : "DE",
      "timeZoneString" : "Europe/Berlin",
      "locale" : "de_DE",
      "zoneId" : "Europe/Berlin",
      "zonedDateTime" : "2019-01-28T16:08:13.192+01:00"
    }
  },
  "_links" : {
    "self" : {
      "href" : "http://skylar.livingfire.de/api/users/6"
    },
    "user" : {
      "href" : "http://skylar.livingfire.de/api/users/6"
    },
    "relationListdatasCanView" : {
      "href" : "http://skylar.livingfire.de/api/users/6/relationListdatasCanView"
    },
    "relationSettingsSetBy" : {
      "href" : "http://skylar.livingfire.de/api/users/6/relationSettingsSetBy"
    }
  }
}
Relation Description

self

Canonical link for this resource

user

This User

relationListdatasCanView

Relation ListDatas

relationSettingsSetBy

Relation Settings

Update

A PATCH request will update a User.

Example request

$ curl 'http://skylar.livingfire.de/api/users/6' -i -X PATCH \
    -H 'Content-Type: application/hal+json' \
    -d '{
  "description" : "Skylar"
}'

Example response

HTTP/1.1 204 No Content

Delete

A DELETE request will delete a User.

Example request

$ curl 'http://skylar.livingfire.de/api/users/6' -i -X DELETE \
    -H 'Content-Type: application/hal+json'

Example response

HTTP/1.1 204 No Content

Details

Example request
$ curl 'http://skylar.livingfire.de/api/users/search' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 521

{
  "_links" : {
    "findByUuid" : {
      "href" : "http://skylar.livingfire.de/api/users/search/findByUuid{?uuid}",
      "templated" : true
    },
    "findByDescription" : {
      "href" : "http://skylar.livingfire.de/api/users/search/findByDescription{?description}",
      "templated" : true
    },
    "exportAllRelationsToCsv" : {
      "href" : "http://skylar.livingfire.de/api/users/search/exportAllRelationsToCsv"
    },
    "self" : {
      "href" : "http://skylar.livingfire.de/api/users/search"
    }
  }
}

findByUuid

A GET request will retrieve a User.

Request parameters
Parameter Description

uuid

Java UUID

Response fields
Path Type Description

uuid

String

Java UUID

logstash

String

ISO 8601 date with TimeZone UTC in format "yyyy-MM-dd’T’HH:mm:ssZ" e.g. 2017-04-01T00:00:00Z

description

String

Description or name

_links

Object

Links to other resources

locationConfiguration.language

String

LocationConfiguration - language e.g. de

locationConfiguration.region

String

LocationConfiguration - region e.g. DE

locationConfiguration.timeZoneString

String

LocationConfiguration - timeZoneString e.g. Europe/Berlin

locationConfiguration.locale

String

LocationConfiguration - locale e.g. de_DE

locationConfiguration.zoneId

String

LocationConfiguration - zoneId e.g. Europe/Berlin

locationConfiguration.zonedDateTime

String

LocationConfiguration - zonedDateTime e.g. 2017-11-02T19:24:13.514+01:00

ttsConfiguration.

Object

TtsConfiguration - e.g.

ttsConfiguration.ttsGender

String

TtsConfiguration ttsGender - e.g. female

ttsConfiguration.ttsLanguage

String

TtsConfiguration ttsLanguage - e.g. german

ttsConfiguration.location.language

String

LocationConfiguration - language e.g. de

ttsConfiguration.location.region

String

LocationConfiguration - region e.g. DE

ttsConfiguration.location.timeZoneString

String

LocationConfiguration - timeZoneString e.g. Europe/Berlin

ttsConfiguration.location.locale

String

LocationConfiguration - locale e.g. de_DE

ttsConfiguration.location.zoneId

String

LocationConfiguration - zoneId e.g. Europe/Berlin

ttsConfiguration.location.zonedDateTime

String

LocationConfiguration - zonedDateTime e.g. 2017-11-02T19:24:13.514+01:00

Example request
$ curl 'http://skylar.livingfire.de/api/users/search/findByUuid?uuid=9ea65c1c-ae99-4a1a-b840-e8d7f5ec2c10' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 1088

{
  "uuid" : "9ea65c1c-ae99-4a1a-b840-e8d7f5ec2c10",
  "logstash" : "2017-04-01T00:00:00+02:00",
  "description" : "Skylar",
  "locationConfiguration" : {
    "language" : "de",
    "region" : "DE",
    "timeZoneString" : "Europe/Berlin",
    "locale" : "de_DE",
    "zoneId" : "Europe/Berlin",
    "zonedDateTime" : "2019-01-28T16:08:13.386+01:00"
  },
  "ttsConfiguration" : {
    "ttsGender" : "female",
    "ttsLanguage" : "de",
    "location" : {
      "language" : "de",
      "region" : "DE",
      "timeZoneString" : "Europe/Berlin",
      "locale" : "de_DE",
      "zoneId" : "Europe/Berlin",
      "zonedDateTime" : "2019-01-28T16:08:13.387+01:00"
    }
  },
  "_links" : {
    "self" : {
      "href" : "http://skylar.livingfire.de/api/users/6"
    },
    "user" : {
      "href" : "http://skylar.livingfire.de/api/users/6"
    },
    "relationListdatasCanView" : {
      "href" : "http://skylar.livingfire.de/api/users/6/relationListdatasCanView"
    },
    "relationSettingsSetBy" : {
      "href" : "http://skylar.livingfire.de/api/users/6/relationSettingsSetBy"
    }
  }
}
Relation Description

self

Canonical link for this resource

user

This User

relationListdatasCanView

Relation ListDatas

relationSettingsSetBy

Relation Settings

findByDescription

A GET request will retrieve a array of User.

Request parameters
Parameter Description

description

Description or name

Response fields
Path Type Description

_embedded.users

Array

An array of User

_links

Object

Links to other resources

Example request
$ curl 'http://skylar.livingfire.de/api/users/search/findByDescription?description=Thomas' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 164

{
  "_embedded" : {
    "users" : [ ]
  },
  "_links" : {
    "self" : {
      "href" : "http://skylar.livingfire.de/api/users/search/findByDescription"
    }
  }
}
Relation Description

self

Canonical link for this resource

Users

Listing

A GET request will retrieve a paginated view of all User.

Response fields

Path Type Description

_embedded.users

Array

An array of User

_links

Object

Links to other resources

page

Object

paging information

Example request

$ curl 'http://skylar.livingfire.de/api/users' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/hal+json;charset=UTF-8
Content-Length: 1696

{
  "_embedded" : {
    "users" : [ {
      "uuid" : "9ea65c1c-ae99-4a1a-b840-e8d7f5ec2c10",
      "logstash" : "2017-04-01T00:00:00+02:00",
      "description" : "Skylar",
      "locationConfiguration" : {
        "language" : "de",
        "region" : "DE",
        "timeZoneString" : "Europe/Berlin",
        "locale" : "de_DE",
        "zoneId" : "Europe/Berlin",
        "zonedDateTime" : "2019-01-28T16:08:13.336+01:00"
      },
      "ttsConfiguration" : {
        "ttsGender" : "female",
        "ttsLanguage" : "de",
        "location" : {
          "language" : "de",
          "region" : "DE",
          "timeZoneString" : "Europe/Berlin",
          "locale" : "de_DE",
          "zoneId" : "Europe/Berlin",
          "zonedDateTime" : "2019-01-28T16:08:13.336+01:00"
        }
      },
      "_links" : {
        "self" : {
          "href" : "http://skylar.livingfire.de/api/users/6"
        },
        "user" : {
          "href" : "http://skylar.livingfire.de/api/users/6"
        },
        "relationListdatasCanView" : {
          "href" : "http://skylar.livingfire.de/api/users/6/relationListdatasCanView"
        },
        "relationSettingsSetBy" : {
          "href" : "http://skylar.livingfire.de/api/users/6/relationSettingsSetBy"
        }
      }
    } ]
  },
  "_links" : {
    "self" : {
      "href" : "http://skylar.livingfire.de/api/users{?page,size,sort}",
      "templated" : true
    },
    "profile" : {
      "href" : "http://skylar.livingfire.de/api/profile/users"
    },
    "search" : {
      "href" : "http://skylar.livingfire.de/api/users/search"
    }
  },
  "page" : {
    "size" : 20,
    "totalElements" : 1,
    "totalPages" : 1,
    "number" : 0
  }
}
Relation Description

self

Canonical link for this resource

profile

The Application-Level Profile Semantics (ALPS)

search

Canonical link to search resources

Export

A GET request will list the index.

Example request

$ curl -i http://skylar.livingfire.de/api/export

Response fields

Path Type Description

_links

Object

Links to other resources

Relation Description

self

Canonical link for this resource

exportDatabase

See Export Database

Database

A GET request will download the database as a ZIP file.

Example request
$ curl -D headers.txt -o skylar_database.zip http://skylar.livingfire.de/api/export/database
$ cat headers.txt
Response Header
HTTP/1.1 201
Content-Disposition: attachment; filename="20160401_1706_skylar_database.zip"

Import

A GET request will list the index.

Example request

$ curl -i http://skylar.livingfire.de/api/import

Response fields

Path Type Description

_links

Object

Links to other resources

Relation Description

self

Canonical link for this resource

importOruxmaps

See Oruxmaps

importLibra

See Libra

importMicrolife

See Microlife

importGarmin

See Garmin

Oruxmaps

A POST request will import a Oruxmaps KML file.

Example request
$ curl -i --form file=@oruxmaps.kml http://skylar.livingfire.de/api/import/oruxmaps
Example response
HTTP/1.1 201 OK
Content-Type: application/json;charset=UTF-8

{
  "status" : 201,
  "code" : "009004",
  "userMessage" : "upload oruxmaps successful: oruxmaps.kml",
  "developerMessage" : "upload oruxmaps successful",
  "moreInfoURL" : "https://github.com/phoen1x/skylar-the-scholar/blob/master/book_en.pdf"
}

Libra

A POST request will import a Libra CSV file.

Example request
$ echo '#Version:5
#Units:kg

#date;weight;weight trend;body fat;body fat trend;comment
2017-04-01 00:00:00;75.1;75.1;;;' \
    > libra.csv

$ curl -i --form file=@libra.csv http://skylar.livingfire.de/api/import/libra
Example response
HTTP/1.1 201 OK
Content-Type: application/json;charset=UTF-8

{
  "status" : 201,
  "code" : "009007",
  "userMessage" : "libra import successful: libra.csv",
  "developerMessage" : "libra import successful",
  "moreInfoURL" : "https://github.com/phoen1x/skylar-the-scholar/blob/master/book_en.pdf"
}

Microlife

A POST request will import a Microlife CSV file.

Example request
$ echo 'Name : Skylar
ID : skylar
Geschlecht : Weiblich
Geburtsdatum : 1. April 2010
Datum,Zeit,Systole,Diastole,Puls,Arrhythmie,MAM
"01.04.17","21:37","120","80","70","",""' \
    > microlife.csv

$ curl -i --form file=@microlife.csv http://skylar.livingfire.de/api/import/microlife
Example response
HTTP/1.1 201 OK
Content-Type: application/json;charset=UTF-8

{
  "status" : 201,
  "code" : "009009",
  "userMessage" : "microlife import successful: microlife.csv",
  "developerMessage" : "microlife import successful",
  "moreInfoURL" : "https://github.com/phoen1x/skylar-the-scholar/blob/master/book_en.pdf"
}

Garmin

A GET request will list the index.

Example request
$ curl -i http://skylar.livingfire.de/api/import/garmin
Response fields
Path Type Description

_links

Object

Links to other resources

Relation Description

self

Canonical link for this resource

importGarminActivity

See Garmin Activity

Activity

A POST request will import a Training Center XML (TCX) file.

Example request
$ # download sample https://developer.garmin.com/garmin-connect-api/sample-data/
$ curl https://developer.garmin.com/downloads/connect-api/sample_file.tcx > activity.tcx
$ curl -i --form file=@activity.tcx http://skylar.livingfire.de/api/import/garmin/activity
Example response
HTTP/1.1 201 OK
Content-Type: application/json;charset=UTF-8

{
  "status" : 201,
  "code" : "009005",
  "userMessage" : "garmin activity import successful: activity.tcx",
  "developerMessage" : "garmin activity import successful",
  "moreInfoURL" : "https://github.com/phoen1x/skylar-the-scholar/blob/master/book_en.pdf"
}

JavaScript

Helper methods for JavaScript. A GET request will list the index.

Example request

$ curl -i http://skylar.livingfire.de/api/javascript

Response fields

Path Type Description

_links

Object

Links to other resources

Relation Description

self

Canonical link for this resource

entityProperties

See Entity properties

ttsGreeting

See TTS greeting

ttsKanboardOverdue

See Kanboard overdue

emailKanboardShopping

See Kanboard shopping email

ttsKanboardShopping

See Kanboard shopping TTS

ttsWeather

See TTS Weather

ttsGoogleCalendar

See TTS Google Calendar

listdataGroupDimensions

See Listdata Group-Dimension Mapping

notesOfActiveFirms

See Notes of active Firms

Entity properties

A GET request will retrieve properties needed to create a new Skylar entity.

Response fields
Path Type Description

uuid

String

Java UUID

logstash

String

ISO 8601 date with TimeZone UTC in format "yyyy-MM-dd’T’HH:mm:ssZ" e.g. 2017-04-01T00:00:00Z

Example request
$ curl 'http://skylar.livingfire.de/api/javascript/entityProperties' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 86

{"uuid":"79e8bdea-da15-4869-be5f-c31296f16c6e","logstash":"2017-07-01T22:44:25+02:00"}

TTS Greeting

A GET will trigger a TTS greeting.

Response fields
Path Type Description

status

Number

a HTTP status code like 201

code

String

native Skylar code like 005001 see SkylarCodeConstant.java

userMessage

String

Message shown in the user interface

developerMessage

String

Additional information for debugging

Example request
$ curl 'http://skylar.livingfire.de/api/javascript/ttsGreeting' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 118

{"status":201,"code":"005001","userMessage":"Text-To-Speech created","developerMessage":"message sent into JMS queue"}

Kanboard overdue

A GET will trigger a TTS output of all overdue kanboard tasks in Skylar.

Response fields
Path Type Description

status

Number

a HTTP status code like 201

code

String

native Skylar code like 005001 see SkylarCodeConstant.java

userMessage

String

Message shown in the user interface

developerMessage

String

Additional information for debugging

Example request
$ curl 'http://skylar.livingfire.de/api/javascript/ttsKanboardOverdue' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 118

{"status":201,"code":"005001","userMessage":"Text-To-Speech created","developerMessage":"message sent into JMS queue"}

Kanboard shopping TTS

A GET will trigger a TTS output with the shopping list.

Response fields
Path Type Description

status

Number

a HTTP status code like 201

code

String

native Skylar code like 005001 see SkylarCodeConstant.java

userMessage

String

Message shown in the user interface

developerMessage

String

Additional information for debugging

Example request
$ curl 'http://skylar.livingfire.de/api/javascript/ttsKanbaordShopping' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 118

{"status":201,"code":"005001","userMessage":"Text-To-Speech created","developerMessage":"message sent into JMS queue"}

Kanboard shopping email

A GET will trigger a Email with the shopping list.

Response fields
Path Type Description

status

Number

a HTTP status code like 201

code

String

native Skylar code like 005001 see SkylarCodeConstant.java

userMessage

String

Message shown in the user interface

developerMessage

String

Additional information for debugging

Example request
$ curl 'http://skylar.livingfire.de/api/javascript/emailKanbaordShopping' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 95

{"status":201,"code":"004001","userMessage":"email sent OK","developerMessage":"email sent OK"}

TTS Weather

A GET will trigger a TTS output of a weather report.

Response fields
Path Type Description

status

Number

a HTTP status code like 201

code

String

native Skylar code like 005001 see SkylarCodeConstant.java

userMessage

String

Message shown in the user interface

developerMessage

String

Additional information for debugging

Example request
$ curl 'http://skylar.livingfire.de/api/javascript/ttsWeather' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 118

{"status":201,"code":"005001","userMessage":"Text-To-Speech created","developerMessage":"message sent into JMS queue"}

TTS Google Calendar

A GET will trigger a TTS output of a Google Calendar events overdue report.

Response fields
Path Type Description

status

Number

a HTTP status code like 201

code

String

native Skylar code like 005001 see SkylarCodeConstant.java

userMessage

String

Message shown in the user interface

developerMessage

String

Additional information for debugging

Example request
$ curl 'http://skylar.livingfire.de/api/javascript/ttsGoogleCalendar' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 118

{"status":201,"code":"005001","userMessage":"Text-To-Speech created","developerMessage":"message sent into JMS queue"}

Listdata Group-Dimension Mapping

A GET will retrieve a mapping of all dimensions to their coresponding groups. Group and dimension in this context mean the properties: Listdata.group and Listdata.dimension

Response fields
Path Type Description

[].group

String

group

[].dimension

String

dimension

Example request
$ curl 'http://skylar.livingfire.de/api/javascript/listdataGroupDimensions' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 84

[{"group":"body","dimension":"bodyWeight"},{"group":"body","dimension":"heartrate"}]

Notes of Active Firms

A GET will retrieve a array of Strings with all Note.description of Firm.active == true. The data can be uses as an overview of all notes. (activity log)

Example request
$ curl 'http://skylar.livingfire.de/api/javascript/notesOfActiveFirms' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 2

[]

Selenium

A GET request will list the index.

Example request

$ curl -i http://skylar.livingfire.de/api/selenium

Response fields

Path Type Description

_links

Object

Links to other resources

Relation Description

self

Canonical link for this resource

seleniumWebpageOpen

See web page open

seleniumWebRadio

See web radio

seleniumSessionClose

See session close

seleniumSessionHtml

See session html

web page open

A GET request will open a url in a web browser session.

Request parameters
Parameter Description

open

a URL like https://www.youtube.com/

Response fields
Path Type Description

status

Number

a HTTP status code like 201

code

String

native Skylar code like 005001 see SkylarCodeConstant.java

userMessage

String

Message shown in the user interface

developerMessage

String

Additional information for debugging

Example request
$ curl 'http://skylar.livingfire.de/api/selenium/webpage?open=https://www.youtube.com/' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 115

{"status":200,"code":"011001","userMessage":"selenium webpage opened","developerMessage":"selenium webpage opened"}

web radio

A GET request will start the web radio.

Response fields
Path Type Description

status

Number

a HTTP status code like 201

code

String

native Skylar code like 005001 see SkylarCodeConstant.java

userMessage

String

Message shown in the user interface

developerMessage

String

Additional information for debugging

Example request
$ curl 'http://skylar.livingfire.de/api/selenium/webRadio' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 115

{"status":200,"code":"011001","userMessage":"selenium webpage opened","developerMessage":"selenium webpage opened"}

session close

A GET request will close the web browser session.

Response fields
Path Type Description

status

Number

a HTTP status code like 201

code

String

native Skylar code like 005001 see SkylarCodeConstant.java

userMessage

String

Message shown in the user interface

developerMessage

String

Additional information for debugging

Example request
$ curl 'http://skylar.livingfire.de/api/selenium/session/close' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 115

{"status":200,"code":"011002","userMessage":"selenium session closed","developerMessage":"selenium session closed"}

session HTML

A GET request will get the HTML of the web browser session.

Example request
$ curl 'http://skylar.livingfire.de/api/selenium/session/html' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: text/plain;charset=ISO-8859-1
Content-Length: 29

<html><body>foo</body></html>