v1.0 · Institutional Access

Nabola Institutional Data API

Programmatic access to Nabola's recycling, environmental, and demographic data for government agencies, NGOs, research institutions, and corporate partners.

To get access, contact: nabolaafrica@gmail.com · Website: nabola.bybimport.com

Authentication

All requests require a Bearer token in the Authorization header. Your token is provided by Nabola when your institution is onboarded.

Authorization: Bearer YOUR_API_TOKEN
Accept: application/json

If your token is missing or invalid, you'll receive:

{
  "error": "Unauthorized",
  "message": "Provide your API token in the Authorization header: Bearer YOUR_TOKEN"
}

Base URL

https://nabola.bybimport.com/api/v1/data

Endpoints

{{-- /me --}}
GET/me

Returns your institution profile and which datasets you have access to.

Example Response

{
  "institution": "Federal Ministry of Environment",
  "type": "government",
  "country": "Nigeria",
  "status": "active",
  "data_access": ["waste_summary", "co2_impact", "recycling_trends"],
  "contract_end": "2027-12-31"
}
{{-- /waste-summary --}}
GET/waste-summary waste_summary

Aggregated waste collection data by category and month.

ParameterTypeDescription
date_fromdateFilter from date (YYYY-MM-DD) — optional
date_todateFilter to date (YYYY-MM-DD) — optional

Example Request

GET /api/v1/data/waste-summary?date_from=2026-01-01&date_to=2026-03-31
Authorization: Bearer YOUR_TOKEN

Example Response

{
  "dataset": "waste_summary",
  "generated_at": "2026-04-10T12:00:00Z",
  "totals": { "logs": 1240, "kg": 3820.5, "cities": 12 },
  "by_category": [
    { "waste_category": "plastic", "total_logs": 540, "total_kg": 1200.0, "avg_kg_per_log": 2.22 },
    { "waste_category": "metal",   "total_logs": 210, "total_kg": 980.5,  "avg_kg_per_log": 4.67 }
  ],
  "by_month": [
    { "month": "2026-01", "logs": 380, "kg": 1100.0 }
  ]
}
{{-- /recycling-trends --}}
GET/recycling-trends recycling_trends

Monthly recycling growth trends with percentage change.

Example Response

{
  "dataset": "recycling_trends",
  "monthly": [
    { "month": "2026-01", "total_logs": 380, "total_kg": 1100.0, "unique_recyclers": 210, "growth_pct": null },
    { "month": "2026-02", "total_logs": 420, "total_kg": 1350.0, "unique_recyclers": 245, "growth_pct": 22.7 }
  ],
  "summary": { "peak_month": "2026-03", "avg_monthly_kg": 1250.0 }
}
{{-- /demographics --}}
GET/demographics user_demographics

Anonymised and aggregated user statistics. No personal data is shared.

Example Response

{
  "dataset": "user_demographics",
  "note": "All data is anonymised and aggregated. No personal identifiers are shared.",
  "totals": { "total_users": 8420, "verified_users": 3100, "verification_rate": "36.8%" },
  "by_state": [
    { "state": "Kano", "users": 2100 },
    { "state": "Lagos", "users": 1850 }
  ],
  "monthly_signups": [
    { "month": "2026-01", "new_users": 340 }
  ]
}
{{-- /co2-impact --}}
GET/co2-impact co2_impact

Environmental impact data — CO₂ savings, tree equivalents, and more.

Example Response

{
  "dataset": "co2_impact",
  "methodology": "1 kg of recycled waste prevents approximately 2.5 kg of CO₂ equivalent emissions.",
  "totals": {
    "total_waste_kg": 38200.0,
    "total_co2_saved_kg": 95500.0,
    "total_co2_saved_tonnes": 95.5,
    "equivalent_trees_planted": 4547,
    "equivalent_car_km_avoided": 454761
  }
}
{{-- /machines --}}
GET/machines machine_activity

Active Nabola machine locations and usage statistics.

Example Response

{
  "dataset": "machine_activity",
  "total_machines": 14,
  "machines": [
    {
      "id": 1, "name": "Nabola Kano Central", "city": "Kano", "state": "Kano",
      "coordinates": { "lat": 12.0022, "lng": 8.5920 },
      "accepted_waste": ["plastic","metal","paper"],
      "total_uses": 312
    }
  ]
}
{{-- /reports --}}
GET/reports

List all pre-generated reports available for your institution.

GET/reports/{id}/download

Download a specific pre-generated report file (JSON or CSV).

Error Codes

CodeMeaning
401No token provided
403Invalid token, inactive account, or no access to dataset
404Report not found
429Rate limit exceeded (60 requests/minute)

Rate Limits

60 requests per minute per token. Contact us to increase limits for bulk data needs.

Data Privacy

All user data returned is anonymised and aggregated. Nabola does not share individual user records, names, emails, or financial data with any institution. Access is governed by your signed data sharing agreement.

Nabola Africa · nabolaafrica@gmail.com · nabola.bybimport.com · @i_usenabola