Chilkat Online Tools

Node.js / Braze Endpoints / Custom Events Analytics

Back to Collection Items

var os = require('os');
if (os.platform() == 'win32') {  
    if (os.arch() == 'ia32') {
        var chilkat = require('@chilkat/ck-node21-win-ia32');
    } else {
        var chilkat = require('@chilkat/ck-node21-win64'); 
    }
} else if (os.platform() == 'linux') {
    if (os.arch() == 'arm') {
        var chilkat = require('@chilkat/ck-node21-arm');
    } else if (os.arch() == 'x86') {
        var chilkat = require('@chilkat/ck-node21-linux32');
    } else {
        var chilkat = require('@chilkat/ck-node21-linux64');
    }
} else if (os.platform() == 'darwin') {
    if (os.arch() == 'arm64') {
        var chilkat = require('@chilkat/ck-node21-mac-m1');
    } else {
        var chilkat = require('@chilkat/ck-node21-macosx');
    }
}


function chilkatExample() {

    // This example assumes the Chilkat API to have been previously unlocked.
    // See Global Unlock Sample for sample code.

    var http = new chilkat.Http();
    var success;

    var queryParams = new chilkat.JsonObject();
    queryParams.UpdateString("event","event_name");
    queryParams.UpdateInt("length",24);
    queryParams.UpdateString("unit","hour");
    queryParams.UpdateString("ending_at","2014-12-10T23:59:59-05:00");
    queryParams.UpdateString("app_id","{{app_identifier}}");
    queryParams.UpdateString("segment_id","{{segment_identifier}}");

    // Adds the "Authorization: Bearer {{api_key}}" header.
    http.AuthToken = "{{api_key}}";

    // resp: HttpResponse
    var resp = http.QuickRequestParams("GET","https://rest.iad-01.braze.com/events/data_series",queryParams);
    if (http.LastMethodSuccess == false) {
        console.log(http.LastErrorText);
        return;
    }

    console.log(resp.StatusCode);
    console.log(resp.BodyStr);


}

chilkatExample();

Curl Command

curl -G -d "event=event_name"
	-d "length=24"
	-d "unit=hour"
	-d "ending_at=2014-12-10T23%3A59%3A59-05%3A00"
	-d "app_id=%7B%7Bapp_identifier%7D%7D"
	-d "segment_id=%7B%7Bsegment_identifier%7D%7D"
	-H "Authorization: Bearer {{api_key}}"
https://rest.iad-01.braze.com/events/data_series

Postman Collection Item JSON

{
  "name": "Custom Events Analytics",
  "request": {
    "method": "GET",
    "header": [
      {
        "key": "Authorization",
        "value": "Bearer {{api_key}}",
        "type": "text"
      }
    ],
    "url": {
      "raw": "https://{{instance_url}}/events/data_series?event=event_name&length=24&unit=hour&ending_at=2014-12-10T23:59:59-05:00&app_id={{app_identifier}}&segment_id={{segment_identifier}}",
      "protocol": "https",
      "host": [
        "{{instance_url}}"
      ],
      "path": [
        "events",
        "data_series"
      ],
      "query": [
        {
          "key": "event",
          "value": "event_name",
          "description": "(Required) String\n\nThe name of the custom event for which to return analytics "
        },
        {
          "key": "length",
          "value": "24",
          "description": "(Required) Integer\n\nMax number of units (days or hours) before ending_at to include in the returned series - must be between 1 and 100 inclusive"
        },
        {
          "key": "unit",
          "value": "hour",
          "description": "(Optional) String\n\nUnit of time between data points - can be \"day\" or \"hour\" (defaults to \"day\")"
        },
        {
          "key": "ending_at",
          "value": "2014-12-10T23:59:59-05:00",
          "description": "(Optional) DateTime (ISO 8601 string)\n\nPoint in time when the data series should end - defaults to time of the request"
        },
        {
          "key": "app_id",
          "value": "{{app_identifier}}",
          "description": "(Optional) String\n\nApp API identifier retrieved from the Developer Console to limit analytics to a specific app"
        },
        {
          "key": "segment_id",
          "value": "{{segment_identifier}}",
          "description": "(Optional) String\n\nSegment API identifier indicating the analytics enabled segment for which event analytics should be returned"
        }
      ]
    },
    "description": "This endpoint allows you to retrieve a series of the number of occurrences of a custom event in your app over a designated time period.\n\n### Components Used\n-[Segment Identifier](https://www.braze.com/docs/api/identifier_types/)\n\n\n## Response\n\n```json\nContent-Type: application/json\nAuthorization: Bearer YOUR-REST-API-KEY\n{\n    \"message\": (required, string) the status of the export, returns 'success' when completed without errors,\n    \"data\" : [\n        {\n            \"time\" : (string) point in time - as ISO 8601 extended when unit is \"hour\" and as ISO 8601 date when unit is \"day\",\n            \"count\" : (int)\n        },\n        ...\n    ]\n}\n```\n\n### Fatal Error Response Codes\nThe following status codes and associated error messages will be returned if your request encounters a fatal error. Any of these error codes indicate that no data will be processed.\n\n| Error Code       | Reason / Cause                                                   |\n| ---------------- | ---------------------------------------------------------------- |\n| 400 Bad Request  | Bad Syntax                                                       |\n| 401 Unauthorized | Unknown or missing REST API Key                                  |\n| 429 Rate Limited | Over rate limit                                                  |\n| 5XX              | Internal server error, you should retry with exponential backoff |"
  },
  "response": [
  ]
}