Todo
The Todo object
The Todo object looks like this in JSON:
{
"object": "todo",
"id": 8,
"name": "Print new brocures",
"assigned_to": 1,
"assigned_by_id": 1,
"attached_to": null,
"completed_by_id": 1,
"due_date": "2019-07-02",
"completed_time": null,
"added_time": "2019-06-26T00:57:21+00:00",
"communication_plan_id": null,
"sandbox": true
}
| Attribute | Required | Data Type |
|---|---|---|
| id | Yes | int |
| name | Yes | text (500) |
| assigned_to | Yes | int |
| assigned_by_id | No | int |
| attached_to | No | int |
| completed_by_id | No | int |
| due_date | Yes | date |
| completed_time | No | datetime |
| added_time | Yes | datetime |
| communication_plan_id | No | int |
| sandbox | No | bool |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/todos" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": []
}' \
require 'httparty'
response = HTTParty.get(
'https://yourschool.populiweb.com/api2/todos',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.get(
'https://yourschool.populiweb.com/api2/todos',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
)
print(response.json())
using Newtonsoft.Json;
using RestSharp;
var client = new RestClient();
var request = new RestRequest(new Uri("https://yourschool.populiweb.com/api2/todos"), Method.Get);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
var response = client.Execute(request);
var response_object = JsonConvert.DeserializeObject(response.Content);
Console.Write(response_object);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://yourschool.populiweb.com/api2/todos');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
Example response:
{
"object": "list",
"count": 6,
"results": 6,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "todo",
"id": 104,
"name": "Update emergency contact info - NO DATE",
"assigned_to": 1018,
"assigned_by_id": 1,
"attached_to": null,
"completed_by_id": null,
"due_date": null,
"completed_time": null,
"added_time": "2024-03-27T13:00:00+00:00",
"communication_plan_id": null,
"report_data": []
}
],
"sandbox": true
}
Retrieves all Todo objects that match given filter conditions.
HTTP Request
GET /todos
Parameters
| Name | Required | Data Type | Description |
|---|---|---|---|
| page | No | int | The page of results to return if more than 200 records are found. |
| filter | No | mixed | See available filter conditions |
Expandable Properties
- assigned_to_person
- assigned_by_person
- attached_to_person
- completed_by_person
- communication_plan
Filter Condition Parameters
These conditions can be used to narrow the results returned.
| Name | Type |
|---|---|
| name | text |
| assigned_to | object id |
| assigned_by | object id |
| attached_to | object id |
| completed_by | object id |
| communication_plan | object id |
| added_on | datetime |
Permissions
One of the following roles is required to call this method:
- Staff
- Staff
- Faculty
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/todos" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"name": "Send out Fall promo postcards."
}' \
require 'httparty'
response = HTTParty.post(
'https://yourschool.populiweb.com/api2/todos',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
body: {
:name => 'Send out Fall promo postcards.'
}.to_json
)
puts response.body
import requests
response = requests.post(
'https://yourschool.populiweb.com/api2/todos',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
json={
'name': 'Send out Fall promo postcards.'
}
)
print(response.json())
using Newtonsoft.Json;
using RestSharp;
var client = new RestClient();
var request = new RestRequest(new Uri("https://yourschool.populiweb.com/api2/todos"), Method.Post);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
request.AddJsonBody(new {
name = "Send out Fall promo postcards."
});
var response = client.Execute(request);
var response_object = JsonConvert.DeserializeObject(response.Content);
Console.Write(response_object);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://yourschool.populiweb.com/api2/todos');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode([
'name' => 'Send out Fall promo postcards.'
]));
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
Example response:
{
"object": "todo",
"id": 105,
"name": "Send out Fall promo postcards.",
"assigned_to": 22,
"assigned_by_id": 22,
"attached_to": null,
"completed_by_id": null,
"due_date": null,
"completed_time": null,
"added_time": "2026-07-25T16:24:09+00:00",
"communication_plan_id": null,
"sandbox": true
}
Creates a new Todo object.
HTTP Request
POST /todos
Parameters
| Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | text (500) | |
| assigned_to | No | int | |
| attached_to | No | int | |
| due_date | No | date |
Permissions
One of the following roles is required to call this method:
- Staff
- Faculty
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/todos/(todo)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
require 'httparty'
response = HTTParty.get(
'https://yourschool.populiweb.com/api2/todos/(todo)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.get(
'https://yourschool.populiweb.com/api2/todos/(todo)',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
)
print(response.json())
using Newtonsoft.Json;
using RestSharp;
var client = new RestClient();
var request = new RestRequest(new Uri("https://yourschool.populiweb.com/api2/todos/(todo)"), Method.Get);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
var response = client.Execute(request);
var response_object = JsonConvert.DeserializeObject(response.Content);
Console.Write(response_object);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://yourschool.populiweb.com/api2/todos/(todo)');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
Example response:
{
"object": "todo",
"id": 8,
"name": "Print new brocures",
"assigned_to": 1,
"assigned_by_id": 1,
"attached_to": null,
"completed_by_id": 1,
"due_date": "2019-07-02",
"completed_time": null,
"added_time": "2019-06-26T00:57:21+00:00",
"communication_plan_id": null,
"sandbox": true
}
Retrieves a specific Todo object.
HTTP Request
GET /todos/(todo)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Permissions
One of the following roles is required to call this method:
- Staff
- Faculty
delete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/todos/(todo)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
require 'httparty'
response = HTTParty.delete(
'https://yourschool.populiweb.com/api2/todos/(todo)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.delete(
'https://yourschool.populiweb.com/api2/todos/(todo)',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
)
print(response.json())
using Newtonsoft.Json;
using RestSharp;
var client = new RestClient();
var request = new RestRequest(new Uri("https://yourschool.populiweb.com/api2/todos/(todo)"), Method.Delete);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
var response = client.Execute(request);
var response_object = JsonConvert.DeserializeObject(response.Content);
Console.Write(response_object);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://yourschool.populiweb.com/api2/todos/(todo)');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'DELETE');
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
Example response:
{
"object": "todo",
"id": 8,
"deleted": true
}
Deletes an existing Todo object.
HTTP Request
DELETE /todos/(todo)
Parameters
No additional parameters are needed beyond the ID of the object to delete that appears in the URL.
Permissions
One of the following roles is required to call this method:
- Staff
- Faculty
complete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/todos/(todo)/complete" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
require 'httparty'
response = HTTParty.post(
'https://yourschool.populiweb.com/api2/todos/(todo)/complete',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.post(
'https://yourschool.populiweb.com/api2/todos/(todo)/complete',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
)
print(response.json())
using Newtonsoft.Json;
using RestSharp;
var client = new RestClient();
var request = new RestRequest(new Uri("https://yourschool.populiweb.com/api2/todos/(todo)/complete"), Method.Post);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
var response = client.Execute(request);
var response_object = JsonConvert.DeserializeObject(response.Content);
Console.Write(response_object);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://yourschool.populiweb.com/api2/todos/(todo)/complete');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
Example response:
{
"object": "todo",
"id": 8,
"name": "Print new brocures",
"assigned_to": 1,
"assigned_by_id": 1,
"attached_to": null,
"completed_by_id": 22,
"due_date": "2019-07-02",
"completed_time": "2026-07-25T16:24:09+00:00",
"added_time": "2019-06-26T00:57:21+00:00",
"communication_plan_id": null,
"sandbox": true
}
HTTP Request
POST /todos/(todo)/complete
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
- Faculty