Skip to main content

Overview

Returns comprehensive information about a specific school using its Vepler school ID.

Path Parameters

ParameterTypeRequiredDescription
idstringYesVepler school ID (e.g., sch_abc123)

Query Parameters

ParameterTypeRequiredDescription
expandstringNoComma-separated list of expansions: ratings, performance, catchment, demographics, finance

Response

{
  "data": {
    "id": "sch_abc123",
    "urn": "100000",
    "name": "Westminster Academy",
    "slug": "westminster-academy",
    "type": "Academy",
    "phase": "Secondary",
    "status": "Open",
    "address": {
      "line1": "123 School Street",
      "locality": "Westminster",
      "town": "London",
      "postcode": "SW1A 2AA",
      "county": "Greater London"
    },
    "location": {
      "latitude": 51.5074,
      "longitude": -0.1278
    },
    "localAuthority": "Westminster",
    "ofstedRating": "Good",
    "lastInspection": "2023-09-15",
    "numberOfPupils": 1200,
    "ageRange": {
      "from": 11,
      "to": 18
    },
    "religiousCharacter": "None",
    "admissionsPolicy": "Non-selective",
    "gender": "Mixed",
    "website": "https://westminsteracademy.example.com",
    "telephone": "020 1234 5678",
    "email": "[email protected]",
    "headteacher": "Dr. Jane Smith",
    "createdAt": "2024-01-15T10:30:00Z",
    "updatedAt": "2024-03-20T14:45:00Z"
  }
}

Expansions

Use the expand parameter to include additional related data:

Ratings Expansion

"ratings": {
  "overall": "Good",
  "effectiveness": "Good",
  "quality": "Good",
  "behaviour": "Outstanding",
  "leadership": "Good",
  "sixthForm": "Good"
}

Performance Expansion

"performance": {
  "progress8": 0.45,
  "attainment8": 52.3,
  "ebaccEntry": 0.42,
  "ebaccAveragePointScore": 4.8,
  "examResults": {
    "gcse": {
      "grade5OrAboveEnglishMaths": 0.68
    },
    "aLevel": {
      "averagePointScore": 35.2
    }
  }
}

Example Requests

Basic Request

import { Vepler } from '@vepler/sdk';

const vepler = new Vepler({ apiKey: process.env.VEPLER_API_KEY });

const school = await vepler.schools.get('sch_abc123');

console.log(school.name);
console.log(`Ofsted Rating: ${school.ofstedRating}`);

With Expansions

const school = await vepler.schools.get('sch_abc123', {
  expand: 'ratings,performance'
});

console.log(`Progress 8: ${school.performance.progress8}`);
console.log(`Overall Rating: ${school.ratings.overall}`);