Teachers

Teachers are users who use ManageBac to delivery curriculum

Update Teacher Avatar

put

This endpoint allows to update teacher's avatar.

Authorizations
Path parameters
idintegerRequired

Unique identifier for a teacher.

Body
avatarany ofOptional
or
Responses
200

Success

application/json
put
PUT /v2/teachers/{id}/avatar HTTP/1.1
Host: api.managebac.com
auth-token: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 37

{
  "avatar": {
    "remote_file_url": "text"
  }
}
{
  "status": "ok"
}

Delete Teacher Avatar

delete

This endpoint allows to delete teacher's avatar.

Authorizations
Path parameters
idintegerRequired

Unique identifier for a teacher.

Responses
200

Success

application/json
delete
DELETE /v2/teachers/{id}/avatar HTTP/1.1
Host: api.managebac.com
auth-token: YOUR_API_KEY
Accept: */*
200

Success

{
  "status": "ok"
}

Get all Teachers

get

This endpoint retrieves all teachers it returns teacher ID and personal details.

Authorizations
Query parameters
ids[]integer[]Optional

Return only records with the given IDs.

archivedbooleanOptional

Return only archived (1) or only active (0) teachers. If value is not specified, all teachers are returned.

modified_sincestringOptional

A timestamp to filter results by modification date.

pagestringOptional

An integer defining which page to display.

per_pagestringOptional

An integer defining the number of records to display per page.

deleted_sincestringOptional

A timestamp to filter results by deletion date of records.

qstringOptional

A string to search across all fields for.

Responses
200

Success

application/json
get
GET /v2/teachers HTTP/1.1
Host: api.managebac.com
auth-token: YOUR_API_KEY
Accept: */*
200

Success

{
  "teachers": [
    {
      "id": 2139,
      "email": "[email protected]",
      "first_name": "Kevin",
      "last_name": "Reyes",
      "archived": false,
      "ui_language": "en",
      "gender": "Male",
      "timezone": "Europe/Kyiv",
      "street_address": "5 Dovetail Crossing",
      "city": "Montclair",
      "state": "18956",
      "zipcode": "73571-3710",
      "country": "SY",
      "programs": [],
      "nationalities": [],
      "languages": [],
      "role": "Advisor",
      "identifier": "AA1001"
    }
  ],
  "meta": {
    "current_page": 1,
    "total_pages": 1,
    "total_count": 1,
    "per_page": 100
  }
}

Create New Teacher

post

This endpoint creates a new teacher record. Note, the Content-Type header must be set to application/json, and the request body should contain the field structure as a JSON payload. Only users with admin role are able to update users.

Authorizations
Body
teacherall ofRequired
and
anyOptional

Fields for create teacher.

Responses
201

Success

application/json
post
POST /v2/teachers HTTP/1.1
Host: api.managebac.com
auth-token: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 524

{
  "teacher": {
    "email": "[email protected]",
    "first_name": "Richard",
    "middle_name": "David",
    "password": "qwerty9876",
    "last_name": "Chandler",
    "nickname": "Ricky",
    "other_name": "",
    "identifier": "AA1001",
    "gender": "Male",
    "birthday": "1972-10-24",
    "phone_number": "977 840-2231",
    "mobile_phone_number": "977 840-2231",
    "street_address": "301 Massachusetts Ave",
    "street_address_ii": "",
    "city": "Lunenburg",
    "state": "Virginia",
    "zipcode": "1462",
    "country": "United States",
    "nationalities": [
      "US",
      "GB"
    ],
    "languages": [
      "ENG"
    ],
    "timezone": "Europe/Kyiv"
  }
}
201

Success

{
  "teacher": {
    "id": 2144,
    "email": "[email protected]",
    "first_name": "John",
    "last_name": "Epelbaum",
    "archived": false,
    "ui_language": "en",
    "programs": [],
    "nationalities": [],
    "languages": [],
    "role": "Advisor",
    "identifier": "AA1001"
  }
}

Get a Teacher

get

This endpoint retrieves a teacher as specified by teacher ID. It returns the ID and contact details.

Authorizations
Path parameters
idintegerRequired

Unique identifier for a teacher.

Responses
200

Success

application/json
get
GET /v2/teachers/{id} HTTP/1.1
Host: api.managebac.com
auth-token: YOUR_API_KEY
Accept: */*
200

Success

{
  "teacher": {
    "id": 2142,
    "email": "[email protected]",
    "first_name": "Marie",
    "last_name": "Fowler",
    "archived": false,
    "ui_language": "en",
    "gender": "Male",
    "timezone": "Etc/UTC",
    "street_address": "70 Morning Trail",
    "city": "Livermore",
    "state": "82919-3933",
    "zipcode": "28638",
    "country": "RO",
    "programs": [],
    "nationalities": [],
    "languages": [],
    "role": "Advisor",
    "identifier": "AA1001"
  }
}

Update a Teacher

patch

This endpoint updates a teacher record, as specified by the teacher ID. Note, the Content-Type header must be set to application/json, and the request body should contain the fields you want to update as a JSON payload. Only users with admin role are able to update users.

Authorizations
Path parameters
idintegerRequired

A numeric value that specifies a Teacher id.

Body
teacherall ofRequired
and
anyOptional

Fields for update teacher.

Responses
200

Success

application/json
patch
PATCH /v2/teachers/{id} HTTP/1.1
Host: api.managebac.com
auth-token: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 524

{
  "teacher": {
    "email": "[email protected]",
    "first_name": "Richard",
    "middle_name": "David",
    "password": "qwerty9876",
    "last_name": "Chandler",
    "nickname": "Ricky",
    "other_name": "",
    "identifier": "AA1001",
    "gender": "Male",
    "birthday": "1972-10-24",
    "phone_number": "977 840-2231",
    "mobile_phone_number": "977 840-2231",
    "street_address": "301 Massachusetts Ave",
    "street_address_ii": "",
    "city": "Lunenburg",
    "state": "Virginia",
    "zipcode": "1462",
    "country": "United States",
    "nationalities": [
      "US",
      "GB"
    ],
    "languages": [
      "ENG"
    ],
    "timezone": "Europe/Kyiv"
  }
}
200

Success

{
  "teacher": {
    "id": 2147,
    "email": "[email protected]",
    "first_name": "Sharon",
    "last_name": "Arese",
    "archived": false,
    "ui_language": "en",
    "gender": "Male",
    "timezone": "Etc/UTC",
    "street_address": "9 Lindbergh Center",
    "city": "Hawthorne",
    "state": "86249",
    "zipcode": "55539",
    "country": "NR",
    "programs": [],
    "nationalities": [],
    "languages": [],
    "role": "Advisor",
    "identifier": "AA1001"
  }
}

Archive a Teacher

put

This endpoint archives a teacher record as specified by ID. This effectively removes the teacher from groups they are members of.

Authorizations
Path parameters
idintegerRequired

Unique identifier for a teacher.

Responses
200

Success

application/json
put
PUT /v2/teachers/{id}/archive HTTP/1.1
Host: api.managebac.com
auth-token: YOUR_API_KEY
Accept: */*
200

Success

{
  "status": "ok"
}

Unarchive a Teacher

put

This endpoint reverses the archive operation on the teacher record as specified by ID. This effectively restores the teacher’s group memberships.

Authorizations
Path parameters
idintegerRequired

Unique identifier for a teacher.

Responses
200

Success

application/json
put
PUT /v2/teachers/{id}/unarchive HTTP/1.1
Host: api.managebac.com
auth-token: YOUR_API_KEY
Accept: */*
200

Success

{
  "status": "ok"
}

Get teacher Classes Memberships

get

This endpoint retrieves all classes memberships of a teacher.

Authorizations
Path parameters
idintegerRequired

A unique teacher ID.

Query parameters
show_on_reportsbooleanOptional

A boolean param to filter classes memberships by Show on Reports status.

Default: true
archivedbooleanOptional

A boolean param to filter classes memberships by class archived status.

Default: false
Responses
200

Success

application/json
get
GET /v2/teachers/{id}/classes HTTP/1.1
Host: api.managebac.com
auth-token: YOUR_API_KEY
Accept: */*
200

Success

{
  "classes": [
    {
      "id": 1,
      "name": "IB DP Class",
      "uniq_id": "QAZWSXEDC",
      "archived": false,
      "start_term_id": 1234,
      "end_term_id": 1235,
      "show_on_reports": true
    }
  ]
}

Get teacher Groups Memberships

get

This endpoint retrieves all groups memberships of a teacher.

Authorizations
Path parameters
idintegerRequired

A unique teacher ID.

Query parameters
archivedbooleanOptional

A boolean param to filter groups memberships by group archived status.

Default: false
Responses
200

Success

application/json
get
GET /v2/teachers/{id}/groups HTTP/1.1
Host: api.managebac.com
auth-token: YOUR_API_KEY
Accept: */*
200

Success

{
  "groups": [
    {
      "id": 1,
      "name": "Art Group",
      "archived": false,
      "primary_group_advisor": false,
      "group_advisor": true
    }
  ]
}

Was this helpful?