PebblePad : API documentation

User

Provides the methods for interacting with user records. Each record has a unique Id that is maintained internally by PebblePad's systems. This is not configurable. In every record type, it is the "Id" Guid field, and will be described as "PebblePad's xxxx Id", or similar. There is another field: "CustomId". This is a string in all records. You can use this to match records in PebblePad to those in your own systems. This field will normally be described as "Your Custom Id" or similar.

Methods

Method HTTP request Description
AddContactDetails PUT https://v3.pebblepad.co.uk/api/1.1/User/AddContactDetails/{id} Adds contact details to a user using the supplied PebblePad User Id.
AddContactDetailsOnCustomId PUT https://v3.pebblepad.co.uk/api/1.1/User/AddContactDetailsOnCustomId/{id} Adds contact details to a user using your user's supplied Custom Id.
AddOtherDetails PUT https://v3.pebblepad.co.uk/api/1.1/User/AddOtherDetails/{id} Adds other details to a user using the supplied PebblePad User Id.
AddOtherDetailsOnCustomId PUT https://v3.pebblepad.co.uk/api/1.1/User/AddOtherDetailsOnCustomId/{id} Adds other details to a user using your user's supplied Custom Id.
Create POST https://v3.pebblepad.co.uk/api/1.1/User/Create/ Create a user record.
Delete DELETE https://v3.pebblepad.co.uk/api/1.1/User/Delete/{id} Deletes a user by Id. This action marks the user for deletion.
DeleteContactDetails PUT https://v3.pebblepad.co.uk/api/1.1/User/DeleteContactDetails/{id} Deletes one or more of the contact records from the user associated with a PebblePad Id.
DeleteContactDetailsOnCustomId PUT https://v3.pebblepad.co.uk/api/1.1/User/DeleteContactDetailsOnCustomId/{id} Deletes one or more contact records from the user associated with your Custom Id.
DeleteOnCustomId DELETE https://v3.pebblepad.co.uk/api/1.1/User/DeleteOnCustomId/{id} Deletes a user by your Custom Id. This action marks the user for deletion.
DeleteOtherDetails PUT https://v3.pebblepad.co.uk/api/1.1/User/DeleteOtherDetails/{id} Deletes one or more of the other detail records from the user associated with a PebblePad Id.
DeleteOtherDetailsOnCustomId PUT https://v3.pebblepad.co.uk/api/1.1/User/DeleteOtherDetailsOnCustomId/{id} Deletes one or more of the other detail records from the user associated with your Custom Id.
Get GET https://v3.pebblepad.co.uk/api/1.1/User/Get/{id} Gets a user's metadata by Id.
GetContactDetails GET https://v3.pebblepad.co.uk/api/1.1/User/GetContactDetails/{id} Returns an array of contact details for the specified user associated with a PebblePad user Id.
GetContactDetailsOnCustomId GET https://v3.pebblepad.co.uk/api/1.1/User/GetContactDetailsOnCustomId/{id} Returns an array of contact details for the specified user associated with a user's Custom Id.
GetOnCustomId GET https://v3.pebblepad.co.uk/api/1.1/User/GetOnCustomId/{id} Gets a user's metadata by your Custom Id.
GetOnUsername GET https://v3.pebblepad.co.uk/api/1.1/User/GetOnUsername/{id} Gets a user's metadata by username.
GetOtherDetails GET https://v3.pebblepad.co.uk/api/1.1/User/GetOtherDetails/{id} Returns the array of other details for the specified user associated with a PebblePad user Id.
GetOtherDetailsOnCustomId GET https://v3.pebblepad.co.uk/api/1.1/User/GetOtherDetailsOnCustomId/{id} Returns the array of other details for the specified user using your supplied custom user Id.
Update PUT https://v3.pebblepad.co.uk/api/1.1/User/Update/{id} Updates a user's metadata by Id.
UpdateOnCustomId PUT https://v3.pebblepad.co.uk/api/1.1/User/UpdateOnCustomId/{id} Updates a user's metadata by your Custom Id.

Methods

AddContactDetails

Adds contact details to a user using the supplied PebblePad User Id.

Scope Required

admin_usermanagement:u

Request

PUT https://v3.pebblepad.co.uk/api/1.1/User/AddContactDetails/{id}

Remarks

If the user has existing contact details with the same Id , the existing details are overwritten.

Parameters

Parameter name Value Required Description
details contactinfo[] Yes The new contact details, ContactInfo object.
id string Yes PebblePad's user Id.

Example request

PUT api/1.1/User/AddContactDetails/aa85e6f1-67d4-4892-9102-2ea2e7dd7495 HTTP/1.1
Host: https://v3.pebblepad.co.uk/
Authorization: Bearer xxxxxxxxxxxxxxxx

[
  {
    "value":"01234 567890",
    "type":"Phone",
    "location":"Home"
  }
] 

Response

HTTP / 1.1 200 (OK)
{
  "aa85e6f1-67d4-4892-9102-2ea2e7dd7495"
} 

Example error response

HTTP/1.1 400 (Bad Request)
{
  "errormessage":"User could not be found."
} 

AddContactDetailsOnCustomId

Adds contact details to a user using your user's supplied Custom Id.

Scope Required

admin_usermanagement:u

Request

PUT https://v3.pebblepad.co.uk/api/1.1/User/AddContactDetailsOnCustomId/{id}

Remarks

If the user has existing contact details with the same CustomId , the existing details are overwritten.

Parameters

Parameter name Value Required Description
details contactinfo[] Yes The new contact details, ContactInfo object.
id string Yes Your Custom user Id.

Example request

PUT api/1.1/User/AddContactDetailsOnCustomId/2ea2e7dd7495 HTTP/1.1
Host: https://v3.pebblepad.co.uk/
Authorization: Bearer xxxxxxxxxxxxxxxx

[
  {
    "value":"01234 567890",
    "type":"Phone",
    "location":"Home",
    "customid":"id234sf"
  }
] 

Response

HTTP / 1.1 200 (OK)
{
  "aa85e6f1-67d4-4892-9102-2ea2e7dd7495"
} 

Example error response

HTTP/1.1 400 (Bad Request)
{
  "errormessage":"User could not be found."
} 

AddOtherDetails

Adds other details to a user using the supplied PebblePad User Id.

Scope Required

admin_management:u

Request

PUT https://v3.pebblepad.co.uk/api/1.1/User/AddOtherDetails/{id}

Remarks

A new entry will be made using this method unless the user already has an entry with the same CustomId. Entries that have the same Source (API in this case), Type and Value will not be duplicated.

Parameters

Parameter name Value Required Description
details aboutmeotherinfo[] Yes The new other details, AboutMeOtherInfo object.
id string Yes PebblePad's user Id.

Example request

PUT api/1.1/User/AddOtherDetails/aa85e6f1-67d4-4892-9102-2ea2e7dd7495 HTTP/1.1
Host: https://v3.pebblepad.co.uk/
Authorization: Bearer xxxxxxxxxxxxxxxx

[
  {
    "type": "Dob",
    "value": "03/09/1975"
  },
  {
    "type": "MemberNo",
    "value": "001"
  }
] 

Response

HTTP / 1.1 200 (OK) 

Example error response

HTTP/1.1 400 (Bad Request)
{
  "errormessage":"User could not be found."
} 

AddOtherDetailsOnCustomId

Adds other details to a user using your user's supplied Custom Id.

Scope Required

admin_management:u

Request

PUT https://v3.pebblepad.co.uk/api/1.1/User/AddOtherDetailsOnCustomId/{id}

Remarks

The user cannot have multiple other details with the same CustomId. Entries that have the same Source (API in this case), Type and Value will not be duplicated.

Parameters

Parameter name Value Required Description
details aboutmeotherinfo[] Yes The new other details, AboutMeOtherInfo object.
id string Yes User's Custom Id.

Example request

PUT api/1.1/User/AddOtherDetailsOnCustomId/id234sf HTTP/1.1
Host: https://v3.pebblepad.co.uk/
Authorization: Bearer xxxxxxxxxxxxxxxx

[
  {
    "type": "Dob",
    "value": "03/09/1975",
    "customid": "fhsuydrn"
  },
  {
    "type": "MemberNo",
    "value": "001",
    "customid": "fdjbdvs"
  }
] 

Response

HTTP / 1.1 200 (OK) 

Example error response

HTTP/1.1 400 (Bad Request)
{
  "errormessage":"User could not be found."
} 

Create

Create a user record.

Scope Required

admin_usermanagement:c

Request

POST https://v3.pebblepad.co.uk/api/1.1/User/Create/

Remarks

If you add a user supplying a Custom Id then the first Contact details Custom Id is set to the user's Custom Id.

Parameters

Parameter name Value Required Description
usersDetails createbasicuserinfo Yes CreateBasicUserInfo , username, forename, surname and email are all required.

Example request

POST api/1.1/User/Create HTTP/1.1
Host: https://v3.pebblepad.co.uk/
Authorization: Bearer xxxxxxxxxxxxxxxx
{
  "username":"mathewe",
  "customid":"mathewe",
  "forename":"Mathew",
  "surname":"Evans",
  "email":"mathew.e@pebblepad.co.uk",
  "notes":"Notes to be stored against the user",
  "password":"s09d3dk9!",
  "expiry":"2017-09-28T08:00:00Z",
  "sendemailoncreation":"true",
  "changepasswordonnextlogon":"true"
} 

Response

HTTP 200 (OK)
{
  "aa85e6f1-67d4-4892-9102-2ea2e7dd7495"
} 

Example error response

HTTP/1.1 400 (Bad Request)
{
  "errormessage":"The 'Username' field value is used in another record."
} 

Delete

Deletes a user by Id. This action marks the user for deletion.

Scope Required

admin_usermanagement:d

Request

DELETE https://v3.pebblepad.co.uk/api/1.1/User/Delete/{id}

Parameters

Parameter name Value Required Description
id GUID Yes Your custom user Id

Example request

DELETE api/1.1/User/Delete/aa85e6f1-67d4-4892-9102-2ea2e7dd7495 HTTP/1.1
Host: https://v3.pebblepad.co.uk/
Authorization: Bearer xxxxxxxxxxxxxxxx 

Response

HTTP / 1.1 200 (OK) 

Example error response

HTTP/1.1 400 (Bad Request)
{
  "errormessage":"User could not be found."
} 

DeleteContactDetails

Deletes one or more of the contact records from the user associated with a PebblePad Id.

Scope Required

admin_usermanagement:u

Request

PUT https://v3.pebblepad.co.uk/api/1.1/User/DeleteContactDetails/{id}

Remarks

The API can only delete entries made either by the user in Pebble+ or by the API.

Parameters

Parameter name Value Required Description
contactDetailIds GUID[] Yes Array of PebblePad's contact detail Ids.
id string Yes PebblePad's user Id.

Example request

          PUT api/1.1/User/DeleteContactDetails/aa85e6f1-67d4-4892-9102-2ea2e7dd7495 HTTP/1.1
          Host: https://v3.pebblepad.co.uk/
          Authorization: Bearer xxxxxxxxxxxxxxxx

          [
             "bc45e6f1-67d4-4892-9102-2ea2e7dd7495",
             "bdfd5814-db4b-45e4-bc1c-dd3357d4c5bd"
          ] 

Response

HTTP / 1.1 200 (OK) 

Example error response

HTTP/1.1 400 (Bad Request)
{
  "errormessage":"User could not be found."
} 

DeleteContactDetailsOnCustomId

Deletes one or more contact records from the user associated with your Custom Id.

Scope Required

admin_usermanagement:u

Request

PUT https://v3.pebblepad.co.uk/api/1.1/User/DeleteContactDetailsOnCustomId/{id}

Remarks

The API can only delete entries made either by the user in Pebble+ or by the API.

Parameters

Parameter name Value Required Description
contactDetailIds string[] Yes An array of your Custom contact Ids.
id string Yes Your Custom user Id.

Example request

            PUT api/1.1/User/DeleteContactDetailsOnCustomId/Id2ea2e7dd7495 HTTP/1.1
            Host: https://v3.pebblepad.co.uk/
            Authorization: Bearer xxxxxxxxxxxxxxxx

            [            
               "Idbc45e6f1", "Mdo23ds2g3"
            ] 

Response

HTTP / 1.1 200 (OK) 

Example error response

HTTP/1.1 400 (Bad Request)
{
  "errormessage":"User could not be found."
} 

DeleteOnCustomId

Deletes a user by your Custom Id. This action marks the user for deletion.

Scope Required

admin_usermanagement:d

Request

DELETE https://v3.pebblepad.co.uk/api/1.1/User/DeleteOnCustomId/{id}

Parameters

Parameter name Value Required Description
id string Yes Your Custom user Id

Example request

DELETE api/1.1/User/DeleteOnCustomId/mathewe HTTP/1.1
Host: https://v3.pebblepad.co.uk/
Authorization: Bearer xxxxxxxxxxxxxxxx 

Response

HTTP / 1.1 200 (OK) 

Example error response

HTTP/1.1 400 (Bad Request)
{
  "errormessage":"User could not be found."
} 

DeleteOtherDetails

Deletes one or more of the other detail records from the user associated with a PebblePad Id.

Scope Required

admin_usermanagement:u

Request

PUT https://v3.pebblepad.co.uk/api/1.1/User/DeleteOtherDetails/{id}

Remarks

The API can only delete entries made either by the user in Pebble+ or by the API.

Parameters

Parameter name Value Required Description
ids GUID[] Yes Array of Id identifying the other details.
id string Yes PebblePad's user Id.

Example request

PUT api/1.1/User/DeleteOtherDetails/aa85e6f1-67d4-4892-9102-2ea2e7dd7495 HTTP/1.1
Host: https://v3.pebblepad.co.uk/
Authorization: Bearer xxxxxxxxxxxxxxxx

[
    "aa8bb6f1-67d4-4892-9102-2ea2e7dd74ab",
    "aa85e6f1-67d4-4892-9102-2ea2e7dd74ax"
] 

Response

HTTP / 1.1 200 (OK) 

Example error response

HTTP/1.1 400 (Bad Request)
{
  "errormessage":"User could not be found."
} 

DeleteOtherDetailsOnCustomId

Deletes one or more of the other detail records from the user associated with your Custom Id.

Scope Required

admin_usermanagement:u

Request

PUT https://v3.pebblepad.co.uk/api/1.1/User/DeleteOtherDetailsOnCustomId/{id}

Remarks

The API can only delete entries made either by the user in Pebble+ or by the API.

Parameters

Parameter name Value Required Description
customIds string[] Yes Array of CustomId identifying the other details.
id string Yes Your user's custom Id.

Example request

PUT api/1.1/User/DeleteOtherDetails/id234sf HTTP/1.1
Host: https://v3.pebblepad.co.uk/
Authorization: Bearer xxxxxxxxxxxxxxxx

[
    "fdjbdvs",
    "fdjbRBs"
] 

Response

Example error response

HTTP/1.1 400 (Bad Request)
{
  "errormessage":"User could not be found."
} 

Get

Gets a user's metadata by Id.

Scope Required

admin_usermanagement:r

Request

GET https://v3.pebblepad.co.uk/api/1.1/User/Get/{id}

Parameters

Parameter name Value Required Description
id string Yes PebblePad's user Id

Example request

GET api/1.1/User/Get/968f13b7-a5f5-4e77-89ee-9f44373ddcf5 HTTP/1.1
Host: https://v3.pebblepad.co.uk/
Authorization: Bearer xxxxxxxxxxxxxxxx 

Response

HTTP 200 (OK)
{
  "id":"aa85e6f1-67d4-4892-9102-2ea2e7dd7495",
  "customid":"mathewe",
  "username":"mathew.e",
  "forename":"Mathew",
  "surname":"Evans",
  "email":"mathew.e@pebblepad.co.uk",
  "password":null,
  "notes":null,
  "status":"MarkedForDeletion"
} 

Example error response

HTTP/1.1 400 (Bad Request)
{
  "errormessage":"User could not be found."
} 

GetContactDetails

Returns an array of contact details for the specified user associated with a PebblePad user Id.

Scope Required

admin_usermanagement:r

Request

GET https://v3.pebblepad.co.uk/api/1.1/User/GetContactDetails/{id}

Parameters

Parameter name Value Required Description
id string Yes PebblePad's user Id.

Example request

GET api/1.1/User/GetContactDetails/aa85e6f1-67d4-4892-9102-2ea2e7dd7495 HTTP/1.1
Host: https://v3.pebblepad.co.uk/
Authorization: Bearer xxxxxxxxxxxxxxxx 

Response

HTTP / 1.1 200 (OK)
[
  {
    "id":"bf75e6f1-67d4-4892-9102-2ea2e7dd7354",
    "value":"01234 567890",
    "type":"Phone",
    "location":"Home",
    "customid":"id234sf"
  }
] 

Example error response

HTTP/1.1 400 (Bad Request)
{
  "errormessage":"User could not be found."
} 

GetContactDetailsOnCustomId

Returns an array of contact details for the specified user associated with a user's Custom Id.

Scope Required

admin_usermanagement:r

Request

GET https://v3.pebblepad.co.uk/api/1.1/User/GetContactDetailsOnCustomId/{id}

Parameters

Parameter name Value Required Description
id string Yes Your Custom user Id

Example request

GET api/1.1/User/GetContactDetailsOnCustomId/id234sf HTTP/1.1
Host: https://v3.pebblepad.co.uk/
Authorization: Bearer xxxxxxxxxxxxxxxx 

Response

HTTP / 1.1 200 (OK)
[
  {
    "id":"aa85e6f1-67d4-4892-9102-2ea2e7dd7495",
    "value":"01234 567890",
    "type":"Phone",
    "location":"Home",
    "customid":"id5534cd"
  }
] 

Example error response

HTTP/1.1 400 (Bad Request)
{
  "errormessage":"User could not be found."
} 

GetOnCustomId

Gets a user's metadata by your Custom Id.

Scope Required

admin_usermanagement:r

Request

GET https://v3.pebblepad.co.uk/api/1.1/User/GetOnCustomId/{id}

Parameters

Parameter name Value Required Description
id string Yes Your Custom user Id

Example request

GET api/1.1/User/GetOnCustomId/mathewe HTTP/1.1
Host: https://v3.pebblepad.co.uk/
Authorization: Bearer xxxxxxxxxxxxxxxx 

Response

HTTP 200 (OK)
{
  "id":"aa85e6f1-67d4-4892-9102-2ea2e7dd7495",
  "customid":"mathewe",
  "username":"mathew.e",
  "forename":"Mathew",
  "surname":"Evans",
  "email":"mathew.e@pebblepad.co.uk",
  "password":null,
  "notes":null,
  "status":"MarkedForDeletion"
} 

Example error response

HTTP/1.1 400 (Bad Request)
{
  "errormessage":"User could not be found."
} 

GetOnUsername

Gets a user's metadata by username.

Scope Required

admin_usermanagement:r

Request

GET https://v3.pebblepad.co.uk/api/1.1/User/GetOnUsername/{id}

Parameters

Parameter name Value Required Description
id string Yes Username

Example request

GET api/1.1/User/GetOnUsername/mathewe HTTP/1.1
Host: https://v3.pebblepad.co.uk/
Authorization: Bearer xxxxxxxxxxxxxxxx 

Response

HTTP 200 (OK)
{
  "id":"aa85e6f1-67d4-4892-9102-2ea2e7dd7495",
  "customid":"mathewe",
  "username":"mathew.e",
  "forename":"Mathew",
  "surname":"Evans",
  "email":"mathew.e@pebblepad.co.uk",
  "password":null,
  "notes":null,
  "status":"MarkedForDeletion"
} 

Example error response

HTTP/1.1 400 (Bad Request)
{
  "errormessage":"User could not be found."
} 

GetOtherDetails

Returns the array of other details for the specified user associated with a PebblePad user Id.

Scope Required

admin_usermanagement:r

Request

GET https://v3.pebblepad.co.uk/api/1.1/User/GetOtherDetails/{id}

Parameters

Parameter name Value Required Description
id string Yes PebblePad's user Id.

Example request

GET api/1.1/User/GetOtherDetails/aa85e6f1-67d4-4892-9102-2ea2e7dd7495 HTTP/1.1
Host: https://v3.pebblepad.co.uk/
Authorization: Bearer xxxxxxxxxxxxxxxx 

Response

HTTP / 1.1 200 (OK)
[
  {
    "id": "aa85e6f1-67d4-4892-9102-2ea2e7dd74ax",
    "customid": "fhsuydrn",
    "type": "Dob",
    "value": "03/09/1975",
    "source": null
  },
  {
    "id": "aa8bb6f1-67d4-4892-9102-2ea2e7dd74ab",
    "type": "MemberNo",
    "value": "001",
    "customid": "fdjbdvs",
    "source": "API"
  }
] 

Example error response

HTTP/1.1 400 (Bad Request)
{
  "errormessage":"User could not be found."
} 

GetOtherDetailsOnCustomId

Returns the array of other details for the specified user using your supplied custom user Id.

Scope Required

admin_usermanagement:r

Request

GET https://v3.pebblepad.co.uk/api/1.1/User/GetOtherDetailsOnCustomId/{id}

Parameters

Parameter name Value Required Description
id string Yes User's Custom Id.

Example request

GET api/1.1/User/GetOtherDetailsOnCustomId/id234sf HTTP/1.1
Host: https://v3.pebblepad.co.uk/
Authorization: Bearer xxxxxxxxxxxxxxxx 

Response

HTTP / 1.1 200 (OK)
[
  {
    "id": "aa85e6f1-67d4-4892-9102-2ea2e7dd74ax",
    "customid": "fhsuydrn",
    "type": "Dob",
    "value": "03/09/1975",
    "source": null
  },
  {
    "id": "aa8bb6f1-67d4-4892-9102-2ea2e7dd74ab",
    "type": "MemberNo",
    "value": "001",
    "customid": "fdjbdvs",
    "source": "API"
  }
] 

Example error response

HTTP/1.1 400 (Bad Request)
{
  "errormessage":"User could not be found."
} 

Update

Updates a user's metadata by Id.

Scope Required

admin_usermanagement:u

Request

PUT https://v3.pebblepad.co.uk/api/1.1/User/Update/{id}

Parameters

Parameter name Value Required Description
id GUID Yes PebblePad's user Id
basicUserInfo basicuserinfo Yes BasicUserInfo , forename, surname and email are all required.

Example request

PUT api/1.1/User/Update/aa85e6f1-67d4-4892-9102-2ea2e7dd7495 HTTP/1.1
Host: https://v3.pebblepad.co.uk/
Authorization: Bearer xxxxxxxxxxxxxxxx
{
  "customid":"mathewe",
  "username":"mathew.e",
  "forename":"Mathew",
  "surname":"Evans",
  "email":"mathew.e@pebblepad.co.uk",
  "password":null,
  "notes":null
} 

Response

HTTP / 1.1 200 (OK) 

Example error response

HTTP/1.1 400 (Bad Request)
{
  "errormessage":"User could not be found."
} 

UpdateOnCustomId

Updates a user's metadata by your Custom Id.

Scope Required

admin_usermanagement:u

Request

PUT https://v3.pebblepad.co.uk/api/1.1/User/UpdateOnCustomId/{id}

Parameters

Parameter name Value Required Description
id string Yes Your Custom Id
basicUserInfo basicuserinfo No BasicUserInfo , forename, surname and email are all required.

Example request

PUT api/1.1/User/Update/aa85e6f1-67d4-4892-9102-2ea2e7dd7495 HTTP/1.1
Host: https://v3.pebblepad.co.uk/
Authorization: Bearer xxxxxxxxxxxxxxxx
{
  "customid":"mathewe",
  "username":"mathew.e",
  "forename":"Mathew",
  "surname":"Evans",
  "email":"mathew.e@pebblepad.co.uk",
  "password":null,
  "notes":null
} 

Response

HTTP / 1.1 200 (OK) 

Example error response

HTTP/1.1 400 (Bad Request)
{
  "errormessage":"User could not be found."
}