Behaviors API

The Behaviors module tracks student behavior incidents (positive and negative).

Model

{
  "id": "uuid",
  "name": "Late to Class",
  "student_id": "student-uuid",
  "student": {...},
  "behavior_type": "negative",
  "category": "attendance",
  "incident_date": "2024-01-15",
  "description": "Student arrived 15 minutes late",
  "points": -5,
  "reported_by_id": "teacher-uuid",
  "status": "open",
  "team_id": "team-uuid"
}

Behavior Types

Type

Description

positive

Good behavior, achievements

negative

Infractions, issues

neutral

Informational notes

Categories

Configurable per school, common examples:

  • attendance

  • discipline

  • academic

  • social

  • achievement

Status Values

Status

Description

open

Active incident

resolved

Addressed/closed

escalated

Referred to admin

Endpoints

Standard CRUD

Method

Endpoint

Description

POST

/api/behaviors/list

List behaviors

GET

/api/behaviors/:id

Get behavior

POST

/api/behaviors

Create behavior

PUT

/api/behaviors/:id

Update behavior

DELETE

/api/behaviors/:id

Delete behavior

Send Notification

Notify parents/guardians:

POST /api/behaviors/:id/send-notification

Filtering

By Student

{
  "filter": {
    "conditions": [
      {"field": "student_id", "operator": "=", "value": "student-uuid"}
    ]
  }
}

By Date Range

{
  "filter": {
    "conditions": [
      {"field": "incident_date", "operator": ">=", "value": "2024-01-01"},
      {"field": "incident_date", "operator": "<=", "value": "2024-01-31"}
    ]
  }
}

Auto-Generated Codes

Behavior records can have auto-generated codes based on AutoCode settings.