Device service

A REST API towards the Pointsharp ID user’s devices.

API Description

POST Device/Window

Creates a new device window for a user. A device window allows a new device to retrieve content without passing through the new device rules in Pointsharp ID.

DELETE Device/Windows?Username={Username}&UserStorageName={UserStorageName}

Removes the user’s device windows.

DELETE Device/Windows/Expired?Username={Username}&UserStorageName={UserStorageName}

Removes the user’s expired device windows.

DELETE Device/Windows/Waiting?Username={Username}&UserStorageName={UserStorageName}

Removes the user’s waiting device windows.

PUT Device/State

Updates the state of a user’s device.

PUT Device/UpdateTime

Updates the "timeout" of a Timed Device.

GET Device?Id={Id}&Username={Username}&UserStorageName={UserStorageName}

Retrieves the user’s devices specified by the request.

DELETE Device?Id={Id}&Username={Username}&UserStorageName={UserStorageName}

Removes the user’s device(s) specified by the request.

POST Device/Window

Creates a new device window for a user.A device window allows a new device to retrieve content without passing through the new device rules in Pointsharp ID.

Request information

Parameters

Name Description Additional information

request

The request specifying the device window.

Define this parameter in the request body.

Parameter information

request

Contains data specifying a user device window.

Property Description Additional information

Timeout (Int32)

The time in minutes that the device window will be open.

This parameter is required.

UserAgentPattern (String)

The pattern of the device user agent that is allowed inside the device window.

This parameter is required.

Username (String)

The name of the user.

This parameter is required.

UserStorageName (String)

The name of the storage where the user resides. If this value is NULL (not set) then Pointsharp ID tries to find the unique user by searching through all configured user storages.

This parameter is optional.

Request body formats

application/json, text/json
{
  "UserAgentPattern": "sample string 1",
  "Timeout": 2,
  "Username": "sample string 3",
  "UserStorageName": "sample string 4"
}
application/xml, text/xml
<DeviceWindowRequest xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <Username>sample string 3</Username>
  <UserStorageName>sample string 4</UserStorageName>
  <UserAgentPattern>sample string 1</UserAgentPattern>
  <Timeout>2</Timeout>
</DeviceWindowRequest>

DELETE Device/Windows?Username={Username}&UserStorageName={UserStorageName}

Removes the user’s device windows.

Request information

Parameters

Name Description Additional information

request

The request specifying the user.

Define this parameter in the request URI.

Parameter information

request

Contains data required to request any data related to a specific user.

Property Description Additional information

Username (String)

The name of the user.

This parameter is required.

UserStorageName (String)

The name of the storage where the user resides. If this value is NULL (not set) then Pointsharp ID tries to find the unique user by searching through all configured user storages.

This parameter is optional.

DELETE Device/Windows/Expired?Username={Username}&UserStorageName={UserStorageName}

Removes the user’s expired device windows.

Request information

Parameters

Name Description Additional information

request

The request specifying the user.

Define this parameter in the request URI.

Parameter information

request

Contains data required to request any data related to a specific user.

Property Description Additional information

Username (String)

The name of the user.

This parameter is required.

UserStorageName (String)

The name of the storage where the user resides. If this value is NULL (not set) then Pointsharp ID tries to find the unique user by searching through all configured user storages.

This parameter is optional.

DELETE Device/Windows/Waiting?Username={Username}&UserStorageName={UserStorageName}

Removes the user’s waiting device windows.

Request information

Parameters

Name Description Additional information

request

The request specifying the user.

Define this parameter in the request URI.

Parameter information

request

Contains data required to request any data related to a specific user.

Property Description Additional information

Username (String)

The name of the user.

This parameter is required.

UserStorageName (String)

The name of the storage where the user resides. If this value is NULL (not set) then Pointsharp ID tries to find the unique user by searching through all configured user storages.

This parameter is optional.

PUT Device/State

Updates the state of a user’s device.

Request information

Parameters

Name Description Additional information

request

The request defining the state and device.

Define this parameter in the request body.

Parameter information

request

Contains data to specify a device state of a user’s device.

Property Description Additional information

DeviceId (String)

The identifier of the device. It corresponds to the device ID retrieved at device synchronization.

This parameter is required.

State (Int32)

The state to set for the device.

This parameter is required.

Username (String)

The name of the user.

This parameter is required.

UserStorageName (String)

The name of the storage where the user resides. If this value is NULL (not set) then Pointsharp ID tries to find the unique user by searching through all configured user storages.

This parameter is optional.

Request body formats

application/json, text/json
{
  "DeviceId": "sample string 1",
  "State": 2,
  "Username": "sample string 3",
  "UserStorageName": "sample string 4"
}
application/xml, text/xml
<DeviceStateRequest xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <Username>sample string 3</Username>
  <UserStorageName>sample string 4</UserStorageName>
  <DeviceId>sample string 1</DeviceId>
  <State>2</State>
</DeviceStateRequest>

PUT Device/UpdateTime

Updates the "timeout" of a timed device.

Request information

Parameters

Name Description Additional information

request

The request defining the state and device.

Define this parameter in the request body.

Parameter information

request

Update time. If not, it will expire and time-out.

Property Description Additional information

DeviceId (String)

The identifier of the device. It corresponds to the device ID retrieved at device synchronization.

This parameter is required.

Username (String)

The name of the user.

This parameter is required.

UserStorageName (String)

The name of the storage where the user resides. If this value is NULL (not set) then Pointsharp ID tries to find the unique user by searching through all configured user storages.

This parameter is optional.

Request body formats

application/json, text/json
{
  "DeviceId": "sample string 1",
  "Username": "sample string 2",
  "UserStorageName": "sample string 3"
}
application/xml, text/xml
<DeviceUpdateTime xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <Username>sample string 2</Username>
  <UserStorageName>sample string 3</UserStorageName>
  <DeviceId>sample string 1</DeviceId>
</DeviceUpdateTime>

GET Device?Id={Id}&Username={Username}&UserStorageName={UserStorageName}

Retrieves the user’s devices specified by the request.

Request information

Parameters

Name Description Additional information

request

The request specifying the device(s).

Define this parameter in the request URI.

Parameter information

request

Contains data specifying a user device.

Property Description Additional information

Id (String)

The identifier of the device. It corresponds to the device ID retrieved at device synchronization. If not set then all devices for the specified user will be targeted.

This parameter is optional.

Username (String)

The name of the user.

This parameter is required.

UserStorageName (String)

The name of the storage where the user resides. If this value is NULL (not set) then Pointsharp ID tries to find the unique user by searching through all configured user storages.

This parameter is optional.

Response information

The requested devices.

Response body formats

application/json, text/json
[
  {
    "$type": "PointSharp.WebServices.Models.User.MappedDevice, PointSharp.WebServices.Models",
    "Details": {
      "$type": "PointSharp.WebServices.Models.User.DeviceData, PointSharp.WebServices.Models",
      "Title": "sample string 1",
      "Platform": "sample string 2",
      "ServiceName": "sample string 3"
    },
    "FriendlyName": "sample string 1",
    "State": 2,
    "DeviceId": "sample string 3",
    "DeviceType": "sample string 4",
    "UserAgent": "sample string 5",
    "CreateTime": "2025-09-10T12:24:21.0062894+02:00",
    "LastOkTime": "2025-09-10T12:24:21.0062894+02:00",
    "LastErrorTime": "2025-09-10T12:24:21.0062894+02:00",
    "TimeoutConf": 9,
    "TimeoutConfAheadNotification": 10,
    "Timeout": "2025-09-10T12:24:21.0062894+02:00",
    "TimeoutNotificationSent": true,
    "EASSyncKeyPrefix": 13
  },
  {
    "$type": "PointSharp.WebServices.Models.User.MappedDevice, PointSharp.WebServices.Models",
    "Details": {
      "$type": "PointSharp.WebServices.Models.User.DeviceData, PointSharp.WebServices.Models",
      "Title": "sample string 1",
      "Platform": "sample string 2",
      "ServiceName": "sample string 3"
    },
    "FriendlyName": "sample string 1",
    "State": 2,
    "DeviceId": "sample string 3",
    "DeviceType": "sample string 4",
    "UserAgent": "sample string 5",
    "CreateTime": "2025-09-10T12:24:21.0062894+02:00",
    "LastOkTime": "2025-09-10T12:24:21.0062894+02:00",
    "LastErrorTime": "2025-09-10T12:24:21.0062894+02:00",
    "TimeoutConf": 9,
    "TimeoutConfAheadNotification": 10,
    "Timeout": "2025-09-10T12:24:21.0062894+02:00",
    "TimeoutNotificationSent": true,
    "EASSyncKeyPrefix": 13
  }
]
application/xml, text/xml
<ArrayOfMappedDevice xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <MappedDevice>
    <FriendlyName>sample string 1</FriendlyName>
    <State>2</State>
    <DeviceId>sample string 3</DeviceId>
    <DeviceType>sample string 4</DeviceType>
    <UserAgent>sample string 5</UserAgent>
    <CreateTime>2025-09-10T12:24:21.0062894+02:00</CreateTime>
    <LastOkTime>2025-09-10T12:24:21.0062894+02:00</LastOkTime>
    <LastErrorTime>2025-09-10T12:24:21.0062894+02:00</LastErrorTime>
    <TimeoutConf>9</TimeoutConf>
    <TimeoutConfAheadNotification>10</TimeoutConfAheadNotification>
    <Timeout>2025-09-10T12:24:21.0062894+02:00</Timeout>
    <TimeoutNotificationSent>true</TimeoutNotificationSent>
    <EASSyncKeyPrefix>13</EASSyncKeyPrefix>
    <Details>
      <Title>sample string 1</Title>
      <Platform>sample string 2</Platform>
      <ServiceName>sample string 3</ServiceName>
    </Details>
  </MappedDevice>
  <MappedDevice>
    <FriendlyName>sample string 1</FriendlyName>
    <State>2</State>
    <DeviceId>sample string 3</DeviceId>
    <DeviceType>sample string 4</DeviceType>
    <UserAgent>sample string 5</UserAgent>
    <CreateTime>2025-09-10T12:24:21.0062894+02:00</CreateTime>
    <LastOkTime>2025-09-10T12:24:21.0062894+02:00</LastOkTime>
    <LastErrorTime>2025-09-10T12:24:21.0062894+02:00</LastErrorTime>
    <TimeoutConf>9</TimeoutConf>
    <TimeoutConfAheadNotification>10</TimeoutConfAheadNotification>
    <Timeout>2025-09-10T12:24:21.0062894+02:00</Timeout>
    <TimeoutNotificationSent>true</TimeoutNotificationSent>
    <EASSyncKeyPrefix>13</EASSyncKeyPrefix>
    <Details>
      <Title>sample string 1</Title>
      <Platform>sample string 2</Platform>
      <ServiceName>sample string 3</ServiceName>
    </Details>
  </MappedDevice>
</ArrayOfMappedDevice>

DELETE Device?Id={Id}&Username={Username}&UserStorageName={UserStorageName}

Removes the user’s device(s) specified by the request.

Request information

Parameters

Name Description Additional information

request

The request specifying the device to delete.

Define this parameter in the request URI.

Parameter information

request

Contains data specifying a user device.

Property Description Additional information

Id (String)

The identifier of the device. It corresponds to the device ID retrieved at device synchronization. If not set then all devices for the specified user will be targeted.

This parameter is optional.

Username (String)

The name of the user.

This parameter is required.

UserStorageName (String)

The name of the storage where the user resides. If this value is NULL (not set) then Pointsharp ID tries to find the unique user by searching through all configured user storages.

This parameter is optional.