PingOne Platform APIs

Read Active Identity Counts

 

GET {{apiPath}}/environments/{{envID}}/activeIdentityCounts?filter=startDate%20ge%20%222024-05-01T19:00:00Z%22%20and%20samplingPeriod%20eq%20%2224%22&limit=10

Use the GET {{apiPath}}/environments/{{envID}}/activeIdentityCounts request to return the active identity counts for a specified time period. You need to specify a SCIM filtering expression (URL-encoded) that designates a start date and a sampling period value in the request URL. The end date is set automatically to the current date, and cannot be set manually in the request.

Currently, the active identity count does not return product-specific counts (such as, for PingOne SSO, MFA, or Protect), nor does it count active users when DaVinci is used.

These SCIM operators can be applied to the following attributes:

  • eq (equals)

    Supported attributes: startDate

  • ge (greater than or equal to)

    Supported attributes: startDate

  • and (logical AND)

    Logical AND for building compound expressions in which both expressions are true.

These SCIM operators are not supported: gt (greater than), lt (less than), le (less than or equal to), ne (not equal), co (contains), ew (ends with), in (includes), pr (present, is a non-empty or non-null value), sw (starts with), or (logical OR), not (logical NOT).

For more information about SCIM syntax and operators, paging, ordering, and limiting collections, refer to Conventions.

Query parameters
Parameter Description

filter

Required. The date and time active identity count data collection starts (ISO 8601 format). You must apply the SCIM filter ge (greater than or equal to) to this parameter. Refer to the preceding example. Note: Collection ends on the current date and time.

samplePeriod

This can be DAY or MONTH.

limit

Indicates the number of counts to be returned per page. This value can be 1-100, inclusive.

order

Indicates the sort order of the returned counts. This can be: startDate (ascending) or -startDate (descending).

cursor

Indicates the first item to retrieve.

Response codes

Code Message

200

Successful operation.

400

The request could not be completed.

401

You do not have access to this resource.

403

You do not have permissions or are not licensed to make this request.

404

The requested resource was not found.

500

Internal server error.

Headers

Authorization      Bearer {{accessToken}}

Example Request

  • cURL

  • C#

  • Go

  • HTTP

  • Java

  • jQuery

  • NodeJS

  • Python

  • PHP

  • Ruby

  • Swift

curl --location --globoff '{{apiPath}}/environments/{{envID}}/activeIdentityCounts?filter=startDate%20ge%20%222024-05-01T19%3A00%3A00Z%22%20and%20samplingPeriod%20eq%20%2224%22&limit=10' \
--header 'Authorization: Bearer {{accessToken}}'
var options = new RestClientOptions("{{apiPath}}/environments/{{envID}}/activeIdentityCounts?filter=startDate%20ge%20%222024-05-01T19:00:00Z%22%20and%20samplingPeriod%20eq%20%2224%22&limit=10")
{
  MaxTimeout = -1,
};
var client = new RestClient(options);
var request = new RestRequest("", Method.Get);
request.AddHeader("Authorization", "Bearer {{accessToken}}");
RestResponse response = await client.ExecuteAsync(request);
Console.WriteLine(response.Content);
package main

import (
  "fmt"
  "net/http"
  "io"
)

func main() {

  url := "{{apiPath}}/environments/{{envID}}/activeIdentityCounts?filter=startDate%20ge%20%222024-05-01T19%3A00%3A00Z%22%20and%20samplingPeriod%20eq%20%2224%22&limit=10"
  method := "GET"

  client := &http.Client {
  }
  req, err := http.NewRequest(method, url, nil)

  if err != nil {
    fmt.Println(err)
    return
  }
  req.Header.Add("Authorization", "Bearer {{accessToken}}")

  res, err := client.Do(req)
  if err != nil {
    fmt.Println(err)
    return
  }
  defer res.Body.Close()

  body, err := io.ReadAll(res.Body)
  if err != nil {
    fmt.Println(err)
    return
  }
  fmt.Println(string(body))
}
GET /environments/{{envID}}/activeIdentityCounts?filter=startDate%20ge%20%222024-05-01T19:00:00Z%22%20and%20samplingPeriod%20eq%20%2224%22&limit=10 HTTP/1.1
Host: {{apiPath}}
Authorization: Bearer {{accessToken}}
OkHttpClient client = new OkHttpClient().newBuilder()
  .build();
MediaType mediaType = MediaType.parse("text/plain");
RequestBody body = RequestBody.create(mediaType, "");
Request request = new Request.Builder()
  .url("{{apiPath}}/environments/{{envID}}/activeIdentityCounts?filter=startDate%20ge%20%222024-05-01T19:00:00Z%22%20and%20samplingPeriod%20eq%20%2224%22&limit=10")
  .method("GET", body)
  .addHeader("Authorization", "Bearer {{accessToken}}")
  .build();
Response response = client.newCall(request).execute();
var settings = {
  "url": "{{apiPath}}/environments/{{envID}}/activeIdentityCounts?filter=startDate%20ge%20%222024-05-01T19:00:00Z%22%20and%20samplingPeriod%20eq%20%2224%22&limit=10",
  "method": "GET",
  "timeout": 0,
  "headers": {
    "Authorization": "Bearer {{accessToken}}"
  },
};

$.ajax(settings).done(function (response) {
  console.log(response);
});
var request = require('request');
var options = {
  'method': 'GET',
  'url': '{{apiPath}}/environments/{{envID}}/activeIdentityCounts?filter=startDate%20ge%20%222024-05-01T19:00:00Z%22%20and%20samplingPeriod%20eq%20%2224%22&limit=10',
  'headers': {
    'Authorization': 'Bearer {{accessToken}}'
  }
};
request(options, function (error, response) {
  if (error) throw new Error(error);
  console.log(response.body);
});
import requests

url = "{{apiPath}}/environments/{{envID}}/activeIdentityCounts?filter=startDate%20ge%20%222024-05-01T19:00:00Z%22%20and%20samplingPeriod%20eq%20%2224%22&limit=10"

payload = {}
headers = {
  'Authorization': 'Bearer {{accessToken}}'
}

response = requests.request("GET", url, headers=headers, data=payload)

print(response.text)
<?php
require_once 'HTTP/Request2.php';
$request = new HTTP_Request2();
$request->setUrl('{{apiPath}}/environments/{{envID}}/activeIdentityCounts?filter=startDate%20ge%20%222024-05-01T19:00:00Z%22%20and%20samplingPeriod%20eq%20%2224%22&limit=10');
$request->setMethod(HTTP_Request2::METHOD_GET);
$request->setConfig(array(
  'follow_redirects' => TRUE
));
$request->setHeader(array(
  'Authorization' => 'Bearer {{accessToken}}'
));
try {
  $response = $request->send();
  if ($response->getStatus() == 200) {
    echo $response->getBody();
  }
  else {
    echo 'Unexpected HTTP status: ' . $response->getStatus() . ' ' .
    $response->getReasonPhrase();
  }
}
catch(HTTP_Request2_Exception $e) {
  echo 'Error: ' . $e->getMessage();
}
require "uri"
require "net/http"

url = URI("{{apiPath}}/environments/{{envID}}/activeIdentityCounts?filter=startDate%20ge%20%222024-05-01T19:00:00Z%22%20and%20samplingPeriod%20eq%20%2224%22&limit=10")

http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::Get.new(url)
request["Authorization"] = "Bearer {{accessToken}}"

response = http.request(request)
puts response.read_body
var request = URLRequest(url: URL(string: "{{apiPath}}/environments/{{envID}}/activeIdentityCounts?filter=startDate%20ge%20%222024-05-01T19%3A00%3A00Z%22%20and%20samplingPeriod%20eq%20%2224%22&limit=10")!,timeoutInterval: Double.infinity)
request.addValue("Bearer {{accessToken}}", forHTTPHeaderField: "Authorization")

request.httpMethod = "GET"

let task = URLSession.shared.dataTask(with: request) { data, response, error in
  guard let data = data else {
    print(String(describing: error))
    return
  }
  print(String(data: data, encoding: .utf8)!)
}

task.resume()

Example Response

200 OK

{
    "_links": {
        "next": {
            "href": "https://api.pingone.com/v1/environments/abfba8f6-49eb-49f5-a5d9-80ad5c98f9f6/activeIdentityCounts?cursor=ewogICJzdGFydFBlcmlvZCIgOiAiMjAyNC0wNS0xMVQxOTowMFoiLAogICJlbmRQZXJpb2QiIDogIjIwMjQtMDQtMzBUMTk6MDBaIiwKICAiZW5kRGF0ZSIgOiAiMjAyNS0xMS0wM1QxNjoyNDoyNC43MDI4NjMzODZaIiwKICAibGFzdEN1bXVsYXRpdmUiIDogMCwKICAiZGVzY2VuZGluZyIgOiBmYWxzZSwKICAibGltaXQiIDogMTAsCiAgInN0YXJ0RGF0ZSIgOiAiMjAyNC0wNS0wMVQxOTowMFoiLAogICJzYW1wbGluZ1BlcmlvZCIgOiAyNAp9"
        },
        "self": {
            "href": "https://api.pingone.com/v1/environments/abfba8f6-49eb-49f5-a5d9-80ad5c98f9f6/activeIdentityCounts?filter=startDate%20ge%20%222024-05-01T19%3A00%3A00Z%22%20and%20samplingPeriod%20eq%20%2224%22&limit=10"
        }
    },
    "_embedded": {
        "activeIdentityCounts": [
            {
                "_links": {
                    "environment": {
                        "href": "https://api.pingone.com/v1/environments/abfba8f6-49eb-49f5-a5d9-80ad5c98f9f6"
                    },
                    "activities": {
                        "href": "https://api.pingone.com/v1/environments/abfba8f6-49eb-49f5-a5d9-80ad5c98f9f6/activities?filter=recordedat%20gt%20%222024-05-01T19%3A00%3A00Z%22%20AND%20recordedat%20lt%20%222024-05-02T18%3A59%3A59Z%22%20AND%20%28action.type%20eq%20%22SESSION.UPDATED%22%20OR%20action.type%20eq%20%22SESSION.CREATED%22%20OR%20action.type%20eq%20%22PASSWORD.CHECK_SUCCEEDED%22%29"
                    }
                },
                "value": 0,
                "cumulative": 0,
                "startDate": "2024-05-01T19:00:00Z",
                "endDate": "2024-05-02T18:59:59Z"
            },
            {
                "_links": {
                    "environment": {
                        "href": "https://api.pingone.com/v1/environments/abfba8f6-49eb-49f5-a5d9-80ad5c98f9f6"
                    },
                    "activities": {
                        "href": "https://api.pingone.com/v1/environments/abfba8f6-49eb-49f5-a5d9-80ad5c98f9f6/activities?filter=recordedat%20gt%20%222024-05-02T19%3A00%3A00Z%22%20AND%20recordedat%20lt%20%222024-05-03T18%3A59%3A59Z%22%20AND%20%28action.type%20eq%20%22SESSION.UPDATED%22%20OR%20action.type%20eq%20%22SESSION.CREATED%22%20OR%20action.type%20eq%20%22PASSWORD.CHECK_SUCCEEDED%22%29"
                    }
                },
                "value": 0,
                "cumulative": 0,
                "startDate": "2024-05-02T19:00:00Z",
                "endDate": "2024-05-03T18:59:59Z"
            },
            {
                "_links": {
                    "environment": {
                        "href": "https://api.pingone.com/v1/environments/abfba8f6-49eb-49f5-a5d9-80ad5c98f9f6"
                    },
                    "activities": {
                        "href": "https://api.pingone.com/v1/environments/abfba8f6-49eb-49f5-a5d9-80ad5c98f9f6/activities?filter=recordedat%20gt%20%222024-05-03T19%3A00%3A00Z%22%20AND%20recordedat%20lt%20%222024-05-04T18%3A59%3A59Z%22%20AND%20%28action.type%20eq%20%22SESSION.UPDATED%22%20OR%20action.type%20eq%20%22SESSION.CREATED%22%20OR%20action.type%20eq%20%22PASSWORD.CHECK_SUCCEEDED%22%29"
                    }
                },
                "value": 0,
                "cumulative": 0,
                "startDate": "2024-05-03T19:00:00Z",
                "endDate": "2024-05-04T18:59:59Z"
            },
            {
                "_links": {
                    "environment": {
                        "href": "https://api.pingone.com/v1/environments/abfba8f6-49eb-49f5-a5d9-80ad5c98f9f6"
                    },
                    "activities": {
                        "href": "https://api.pingone.com/v1/environments/abfba8f6-49eb-49f5-a5d9-80ad5c98f9f6/activities?filter=recordedat%20gt%20%222024-05-04T19%3A00%3A00Z%22%20AND%20recordedat%20lt%20%222024-05-05T18%3A59%3A59Z%22%20AND%20%28action.type%20eq%20%22SESSION.UPDATED%22%20OR%20action.type%20eq%20%22SESSION.CREATED%22%20OR%20action.type%20eq%20%22PASSWORD.CHECK_SUCCEEDED%22%29"
                    }
                },
                "value": 0,
                "cumulative": 0,
                "startDate": "2024-05-04T19:00:00Z",
                "endDate": "2024-05-05T18:59:59Z"
            },
            {
                "_links": {
                    "environment": {
                        "href": "https://api.pingone.com/v1/environments/abfba8f6-49eb-49f5-a5d9-80ad5c98f9f6"
                    },
                    "activities": {
                        "href": "https://api.pingone.com/v1/environments/abfba8f6-49eb-49f5-a5d9-80ad5c98f9f6/activities?filter=recordedat%20gt%20%222024-05-05T19%3A00%3A00Z%22%20AND%20recordedat%20lt%20%222024-05-06T18%3A59%3A59Z%22%20AND%20%28action.type%20eq%20%22SESSION.UPDATED%22%20OR%20action.type%20eq%20%22SESSION.CREATED%22%20OR%20action.type%20eq%20%22PASSWORD.CHECK_SUCCEEDED%22%29"
                    }
                },
                "value": 0,
                "cumulative": 0,
                "startDate": "2024-05-05T19:00:00Z",
                "endDate": "2024-05-06T18:59:59Z"
            },
            {
                "_links": {
                    "environment": {
                        "href": "https://api.pingone.com/v1/environments/abfba8f6-49eb-49f5-a5d9-80ad5c98f9f6"
                    },
                    "activities": {
                        "href": "https://api.pingone.com/v1/environments/abfba8f6-49eb-49f5-a5d9-80ad5c98f9f6/activities?filter=recordedat%20gt%20%222024-05-06T19%3A00%3A00Z%22%20AND%20recordedat%20lt%20%222024-05-07T18%3A59%3A59Z%22%20AND%20%28action.type%20eq%20%22SESSION.UPDATED%22%20OR%20action.type%20eq%20%22SESSION.CREATED%22%20OR%20action.type%20eq%20%22PASSWORD.CHECK_SUCCEEDED%22%29"
                    }
                },
                "value": 0,
                "cumulative": 0,
                "startDate": "2024-05-06T19:00:00Z",
                "endDate": "2024-05-07T18:59:59Z"
            },
            {
                "_links": {
                    "environment": {
                        "href": "https://api.pingone.com/v1/environments/abfba8f6-49eb-49f5-a5d9-80ad5c98f9f6"
                    },
                    "activities": {
                        "href": "https://api.pingone.com/v1/environments/abfba8f6-49eb-49f5-a5d9-80ad5c98f9f6/activities?filter=recordedat%20gt%20%222024-05-07T19%3A00%3A00Z%22%20AND%20recordedat%20lt%20%222024-05-08T18%3A59%3A59Z%22%20AND%20%28action.type%20eq%20%22SESSION.UPDATED%22%20OR%20action.type%20eq%20%22SESSION.CREATED%22%20OR%20action.type%20eq%20%22PASSWORD.CHECK_SUCCEEDED%22%29"
                    }
                },
                "value": 0,
                "cumulative": 0,
                "startDate": "2024-05-07T19:00:00Z",
                "endDate": "2024-05-08T18:59:59Z"
            },
            {
                "_links": {
                    "environment": {
                        "href": "https://api.pingone.com/v1/environments/abfba8f6-49eb-49f5-a5d9-80ad5c98f9f6"
                    },
                    "activities": {
                        "href": "https://api.pingone.com/v1/environments/abfba8f6-49eb-49f5-a5d9-80ad5c98f9f6/activities?filter=recordedat%20gt%20%222024-05-08T19%3A00%3A00Z%22%20AND%20recordedat%20lt%20%222024-05-09T18%3A59%3A59Z%22%20AND%20%28action.type%20eq%20%22SESSION.UPDATED%22%20OR%20action.type%20eq%20%22SESSION.CREATED%22%20OR%20action.type%20eq%20%22PASSWORD.CHECK_SUCCEEDED%22%29"
                    }
                },
                "value": 0,
                "cumulative": 0,
                "startDate": "2024-05-08T19:00:00Z",
                "endDate": "2024-05-09T18:59:59Z"
            },
            {
                "_links": {
                    "environment": {
                        "href": "https://api.pingone.com/v1/environments/abfba8f6-49eb-49f5-a5d9-80ad5c98f9f6"
                    },
                    "activities": {
                        "href": "https://api.pingone.com/v1/environments/abfba8f6-49eb-49f5-a5d9-80ad5c98f9f6/activities?filter=recordedat%20gt%20%222024-05-09T19%3A00%3A00Z%22%20AND%20recordedat%20lt%20%222024-05-10T18%3A59%3A59Z%22%20AND%20%28action.type%20eq%20%22SESSION.UPDATED%22%20OR%20action.type%20eq%20%22SESSION.CREATED%22%20OR%20action.type%20eq%20%22PASSWORD.CHECK_SUCCEEDED%22%29"
                    }
                },
                "value": 0,
                "cumulative": 0,
                "startDate": "2024-05-09T19:00:00Z",
                "endDate": "2024-05-10T18:59:59Z"
            },
            {
                "_links": {
                    "environment": {
                        "href": "https://api.pingone.com/v1/environments/abfba8f6-49eb-49f5-a5d9-80ad5c98f9f6"
                    },
                    "activities": {
                        "href": "https://api.pingone.com/v1/environments/abfba8f6-49eb-49f5-a5d9-80ad5c98f9f6/activities?filter=recordedat%20gt%20%222024-05-10T19%3A00%3A00Z%22%20AND%20recordedat%20lt%20%222024-05-11T18%3A59%3A59Z%22%20AND%20%28action.type%20eq%20%22SESSION.UPDATED%22%20OR%20action.type%20eq%20%22SESSION.CREATED%22%20OR%20action.type%20eq%20%22PASSWORD.CHECK_SUCCEEDED%22%29"
                    }
                },
                "value": 0,
                "cumulative": 0,
                "startDate": "2024-05-10T19:00:00Z",
                "endDate": "2024-05-11T18:59:59Z"
            }
        ]
    },
    "count": 551,
    "size": 10
}