Kepla API

Records

Records are the primary data type in Kepla. They have custom fields and can be linked to tags, activities, transactions and form relationships with other records. They will always be associated with a type and can be created, updated or deleted.

Though you can list records and page through them, any kind of bulk operation will be much more efficient if you use a bulk endpoint like imports, exports or batches.

Records Overview

{
  "{fieldId}": "foo",
String

Every field is assigned a unique ID that will be the key on the record object. You will generally need to map these fields, as they are unique for every record type.

  "createdAt": "2016-07-09T13:52:21.240Z",
String (Date-time)

The date/time for when the record was first added to Kepla.

  "id": "290bee0a-2eee-4294-b268-a019326dc46e",
String (Uuid)
  "meta": {
  "meta": { ... }
Object

Additional ancillary information on the record, generally updated by the system.

    locations: [
Array

Coordinates for geocoded addresses, referenced by their field ID.

      {
      { ... }
Object

Locations

        "id": "xgu6egd",
String
        "point": {
        "point": { ... }
Object
          "coordinates": [
    151.2092955,
    151.2092955,
    151.2092955
  ]
Array
        }
      }
    ]
    "regions": [
    "foo",
    "foo",
    "foo"
  ],
Array

Geopolitical regions based on an address location, referenced by field ID.

    "externalIds": [
    "foo",
    "foo",
    "foo"
  ],
Array

Other IDs saved by the system, generally integrations.

    communications: [
Array

A reference of fields and communications options for them, used for subscribes/unsubscribes on email fields.

      {
      { ... }
Object

Communications

        "id": "cfg365de",
String
        "active": true
Boolean
      }
    ]
  },
  tags: [
Array
    {
    { ... }
Object

List

      "items": {
      "items": { ... }
Object
        "color": "#f4983c",
String

(Optional) A HEX code for the color of the tag in the app.

        "id": "a99cfd2a-829c-483d-8c4f-2c8627c027a4",
String (Uuid)
        "name": "api tag",
String

Friendly name for the tag in the app and in exports

        "typeId": "a387d549-2ebd-47f8-a8e3-b54a1d1d6d04"
String (Uuid)
      }
    }
  ]
  teams: [
Array

A list of teams assigned to the record

    {
    { ... }
Object

List

      "items": {
      "items": { ... }
Object
        "accountId": "e1f4cca4-1cbc-42cb-bb2f-5bbbab513f5c",
String
        "createdAt": "2016-07-19T11:06:52.692Z",
String
        "id": "0dd4e0e0-635f-4f07-8edd-d41de58af810",
String
        "name": "Staff",
String
        users: [
Array

An array of users who are members of the team.

          {
          { ... }
Object

Condensed

            "createdAt": "2015-11-02T00:30:23.968Z",
String
            "email": "[email protected]",
String (Email)
            "id": "77c8a907-40b7-40ab-91ad-8034df0fa7a0",
String
            "name": "Tom Maitland"
String
          }
        ]
      }
    }
  ]
  "typeId": "a387d549-2ebd-47f8-a8e3-b54a1d1d6d04",
String
  "updatedAt": "2016-07-19T11:07:12.487Z",
String (Date-time)

The date/time for when the record was last updated by any source

  users: [
Array

A list of users assigned to the record

    {
    { ... }
Object

List

      "items": {
      "items": { ... }
Object
        "createdAt": "2015-11-02T00:30:23.968Z",
String (Date-time)

Date the user was first created in Tempo (across all accounts)

        "email": "[email protected]",
String (Email)

Users will use this email to log in and receive invite notifications.

        "id": "77c8a907-40b7-40ab-91ad-8034df0fa7a0",
String (Uuid)
        "name": "Test User",
String
        roles: [
Array
          {
          { ... }
Object

Roles

            "accountId": "ad032f79-fa7e-45b6-a31d-10a4e43bd69b",
String
            "capabilities": {
            "capabilities": { ... }
Object
              "default": {
              "default": { ... }
Object
                "*": true
Boolean
              }
            },
            "createdAt": "2016-07-17T22:44:35.683Z",
String
            "id": "9ad68f5d-c4bb-4db4-870b-c688afcbb1f3",
String
            "name": "Admin",
String
            "system": "admin"
String
          }
        ]
        teams: [
Array
          {
          { ... }
Object

Teams

            "accountId": "ad032f79-fa7e-45b6-a31d-10a4e43bd69b",
String
            "createdAt": "2016-07-17T22:44:35.763Z",
String
            "id": "843cd093-a038-44a4-b1f2-6caad7cfe49a",
String
            "name": "Staff"
String
          }
        ]
      }
    }
  ]
  "display": {
  "display": { ... }
Object

The title and subtitle for the record. These are the first two values in the record based on the order of fields.

    "title": "Joe API",
String

The first value on the record by field order

    "subtitle": "[email protected]"
String

The second value on the record by field order

  }
}

Records Endpoints