WelcomePryvdevelopers

A safe home for your users' timestamped data.
Unite custom & existing streams onto one simple yet remarkably powerful platform. All data is kept per-user.

To learn about Pryv itself, see our main website.

Discover our applications and libraries and implement your own using our tutorials:

  • Web applications
  • iOs applications
  • Android applications
  • Integrations

Events for anything, contextualized

The API supports any timestamped content, including files. Health metrics, locations, pictures, audio samples, notes, activities, vegetable garden yields, you name it. See the standard types directory.

Organization is handled in a hierarchical structure with streams, that act as folders in a file system and encode context for your events.

Event types

One simple HTTP + websockets API

GET {user}/events HTTP/1.1
Authorization: {token}
{
  "events": [
    {
      "time": 1369143391.115,
      "type": "temperature/c",
      "content": 27.7,
      "...": "..."
    },
    {
      "time": 1369140027.36,
      "type": "position/wgs84",
      "content": {
        "latitude": 46.517699,
        "longitude": 6.562671
      },
      "...": "..."
    },
    ...
  ]
}
GET /events HTTP/1.1
Host: {user}.pryv.me
Authorization: {token}
{
  "events": [
    {
      "time": 1369143391.115,
      "type": "temperature/c",
      "content": 27.7,
      "...": "..."
    },
    {
      "time": 1369140027.36,
      "type": "position/wgs84",
      "content": {
        "latitude": 46.517699,
        "longitude": 6.562671
      },
      "...": "..."
    },
    ...
  ]
}
socket.emit('events.get', {}, function (err, result) {
  // > result.events
  // [
  //   {
  //     time: 1369143391.115,
  //     type: 'temperature/c',
  //     content: 27.7,
  //     ...
  //   },
  //   ...
  // ]
});

Decentralized & built for privacy

Each user account can be served by a different server, which can be located anywhere.

Decentralization