Institutions

Browse educational institutions and view their active campaigns and fundraising efforts.


The Institution Model

Properties

  • Name
    id
    Type
    integer
    Description

    Unique identifier for the institution

  • Name
    name
    Type
    string
    Description

    Institution name

  • Name
    slug
    Type
    string
    Description

    URL-friendly identifier (unique)

  • Name
    logo
    Type
    string | null
    Description

    URL to institution logo

  • Name
    email
    Type
    string
    Description

    Institution email address

  • Name
    phone
    Type
    string | null
    Description

    Contact phone number

  • Name
    address
    Type
    text | null
    Description

    Full address

  • Name
    city
    Type
    string | null
    Description

    City location

  • Name
    country
    Type
    string
    Description

    Country (default: "Philippines")

  • Name
    status
    Type
    enum
    Description

    Institution status: active, suspended, or pending

  • Name
    created_at
    Type
    timestamp
    Description

    Record creation timestamp

  • Name
    updated_at
    Type
    timestamp
    Description

    Record last update timestamp

Relationships

  • Name
    campaigns
    Type
    Campaign[]
    Description

    All campaigns created by the institution

  • Name
    users
    Type
    User[]
    Description

    Users affiliated with the institution

  • Name
    alumniCommittees
    Type
    AlumniCommittee[]
    Description

    Alumni committees managing campaigns


GET/api/v1/institutions

List Institutions

Retrieves a paginated list of institutions. By default, only active institutions are shown to regular users.

Authentication: Optional (shows active institutions only for unauthenticated users)

Query Parameters

  • Name
    search
    Type
    string
    Description

    Search by name, email, or city (case-insensitive)

  • Name
    status
    Type
    string
    Description

    Filter by status: active, suspended, pending (guests see only active)

  • Name
    page
    Type
    integer
    Description

    Page number for pagination

Request

curl -G https://batchmates-v2.revlv.com/api/v1/institutions \
  -d "search=university" \
  -d "page=1"

Response

{
  "success": true,
  "data": {
    "current_page": 1,
    "data": [
      {
        "id": 1,
        "name": "University of the Philippines",
        "slug": "university-of-the-philippines",
        "logo": "https://storage.batchmates-v2.revlv.com/institutions/up.jpg",
        "email": "info@up.edu.ph",
        "phone": "+632-8981-8500",
        "address": "Diliman",
        "city": "Quezon City",
        "country": "Philippines",
        "status": "active",
        "created_at": "2023-01-15T10:00:00.000000Z",
        "updated_at": "2024-01-20T14:30:00.000000Z"
      },
      {
        "id": 2,
        "name": "De La Salle University",
        "slug": "de-la-salle-university",
        "logo": "https://storage.batchmates-v2.revlv.com/institutions/dlsu.jpg",
        "email": "info@dlsu.edu.ph",
        "phone": "+632-8524-4611",
        "city": "Manila",
        "country": "Philippines",
        "status": "active",
        "created_at": "2023-02-10T11:00:00.000000Z",
        "updated_at": "2024-02-01T09:15:00.000000Z"
      }
    ],
    "per_page": 15,
    "total": 45,
    "last_page": 3
  }
}

Request (With Search)

curl -G https://batchmates-v2.revlv.com/api/v1/institutions \
  -d "search=quezon%20city"

GET/api/v1/institutions/{id}

Get Institution

Retrieves detailed information about a specific institution, including related campaigns, users, and alumni committees.

Authentication: Optional

Path Parameters

  • Name
    id
    Type
    integer
    Description

    The institution ID

Request

curl https://batchmates-v2.revlv.com/api/v1/institutions/1

Response

{
  "success": true,
  "data": {
    "id": 1,
    "name": "University of the Philippines",
    "slug": "university-of-the-philippines",
    "logo": "https://storage.batchmates-v2.revlv.com/institutions/up.jpg",
    "email": "info@up.edu.ph",
    "phone": "+632-8981-8500",
    "address": "Diliman",
    "city": "Quezon City",
    "country": "Philippines",
    "status": "active",
    "created_at": "2023-01-15T10:00:00.000000Z",
    "updated_at": "2024-01-20T14:30:00.000000Z",
    "campaigns": [
      {
        "id": 5,
        "title": "Engineering Scholarship Fund",
        "description": "Supporting future engineers...",
        "goal_amount": "100000.00",
        "raised_amount": "45000.00",
        "status": "active",
        "image": "https://..."
      },
      {
        "id": 12,
        "title": "Medical Student Support",
        "goal_amount": "200000.00",
        "raised_amount": "89000.00",
        "status": "active"
      }
    ],
    "users": [],
    "alumniCommittees": [
      {
        "id": 1,
        "name": "UP Engineering Alumni Committee",
        "description": "Supporting our engineering students",
        "status": "active"
      }
    ]
  }
}

Error (Not Found)

{
  "message": "No query results for model [Institution] 999"
}

GET/api/v1/institutions/{id}/stats

Get Institution Stats

Retrieves statistical information about an institution, including total campaigns, funds raised, and user counts.

Authentication: Optional

Path Parameters

  • Name
    id
    Type
    integer
    Description

    The institution ID

Request

curl https://batchmates-v2.revlv.com/api/v1/institutions/1/stats

Response

{
  "success": true,
  "data": {
    "total_users": 1250,
    "total_campaigns": 24,
    "active_campaigns": 8,
    "total_raised": "2450000.00",
    "total_committees": 3,
    "active_committees": 2,
    "total_donations": "2450000.00"
  }
}

Search Examples

By Name

curl -G https://batchmates-v2.revlv.com/api/v1/institutions \
  -d "search=university%20of%20the%20philippines"

By City

curl -G https://batchmates-v2.revlv.com/api/v1/institutions \
  -d "search=manila"

By Email Domain

curl -G https://batchmates-v2.revlv.com/api/v1/institutions \
  -d "search=%40up.edu.ph"

Institution Status

Institutions can have three statuses:

  • Name
    active
    Description

    Fully operational with active campaigns

  • Name
    pending
    Description

    Awaiting approval or verification

  • Name
    suspended
    Description

    Temporarily restricted from creating campaigns

Note: Regular users and guests only see active institutions by default.


Using Institution Data

Finding Campaigns

After getting an institution's details, you can browse their campaigns:

{
  "campaigns": [
    {
      "id": 5,
      "title": "Engineering Scholarship Fund",
      "goal_amount": "100000.00",
      "raised_amount": "45000.00"
    }
  ]
}

Use these campaign IDs with the Donations API to make contributions.

Institution Slug

The slug field provides a URL-friendly identifier:

https://batchmates-v2.revlv.com/institutions/university-of-the-philippines

Error Responses

  • Name
    404 Not Found
    Description

    Institution does not exist

Not Found Error

{
  "message": "No query results for model [Institution] 999"
}

Was this page helpful?