PATCH
/
event_schema
/
{event_schema_name}
curl --request PATCH \
  --url https://api.togai.com/event_schema/{event_schema_name} \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "description": "Cab ride completed",
  "status": "DRAFT",
  "attributes": [
    {
      "name": "distance"
    },
    {
      "name": "time"
    }
  ],
  "dimensions": [
    {
      "name": "city"
    },
    {
      "name": "vehicle_type"
    }
  ],
  "enrichments": {
    "dependencies": [
      {
        "type": "SETTING",
        "key": "setting.user.meters_per_km",
        "name": "meters_per_km"
      }
    ],
    "fields": [
      {
        "name": "distanceInKM",
        "type": "ATTRIBUTE",
        "enrichmentType": "JSON_LOGIC",
        "value": "{\"/\":[{\"var\":[\"attribute.distance\"]},{\"var\":[\"dependencies.meters_per_km\"]}]}",
        "order": 1
      },
      {
        "name": "rideType",
        "type": "DIMENSION",
        "enrichmentType": "JSON_LOGIC",
        "value": "{\"if\":[{\"<=\":[100,{\"var\":[\"attribute.distanceInKM\"]}]},\"long_distance\",\"short_distance\"]}",
        "order": 2
      }
    ]
  }
}'
{
  "name": "ride_completed",
  "description": "Cab ride completed",
  "version": 1,
  "attributes": [
    {
      "name": "distance"
    },
    {
      "name": "time"
    }
  ],
  "dimensions": [
    {
      "name": "city"
    },
    {
      "name": "ride_type"
    }
  ],
  "featureDetails": {
    "featureId": "feature.1122.ahoiud",
    "attributeName": "distance"
  },
  "eventLevelRevenue": false
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

event_schema_name
string
required
Maximum length: 50
Example:

"rides"

Body

application/json
Payload to update event schema

Request to update event schema

description
string

Description of the event

Maximum length: 255
attributes
object[]

Structure of an event attribute

dimensions
object[]

Structure of dimensions

enrichments
object
filterFields
string[]

List of fields that can be used for filtering in usage meter

eventIdTemplate
string

Template used to generate event id based on event payload

Response

200
application/json
Response for Create and Get event schema requests

Structure of an event schema

name
string
required

Name of the event. Must be unique for an organization.

Maximum length: 50
version
integer
required

Version of event schema

Required range: x >= 1
Example:

1

description
string

Description of the event

Maximum length: 255
status
enum<string>

Status of event schema

  • DRAFT - Schema is in draft state
  • ACTIVE - Schema is currently active
  • INACTIVE - Schema is currently inactive
  • ARCHIVED - Older version of event schema
Available options:
DRAFT,
ACTIVE,
INACTIVE,
ARCHIVED
Example:

"DRAFT"

attributes
object[]

Structure of an event attribute

dimensions
object[]

Structure of dimensions

filterFields
string[]
featureDetails
object

details of feature associated with event schema with attribute name

enrichments
object
eventIdTemplate
string

Template used to generate event id based on event payload

eventLevelRevenue
boolean
createdAt
string
updatedAt
string