API:Program Search

Attributes:

  • current_page: Current page # of results
  • total_entries: Total number of results for the given query
  • total_pages: Total number of pages of results
  • programs: List of instructors
    • id: Id of the instructor record
    • subject: Subject name of the program
    • round: Round name the program is preparing for
    • description: Description of the program
    • starts_at: Start date of the program
    • ends_at: End date of the program
    • enrollment_cap: Maximum number of students that may enroll in the program. If null, there is no limit.
    • seats_remaining: Remaining number of spaces available in the program. Will be null if enrollment_cap is null
    • meetings_at: String listing the days and times the program meets
    • price: Price of the program
    • enroll_url: Url to visit to add program to store cart
    • hybrid price: Price of the program with the Hybrid upgrade
    • hybrid_enroll_url: Url to visit to add hybrid program to store cart
    • venue: (optional) venue details
      • name: name of venue location
      • address: street address of venue
      • city: city of venue
      • state: state of venue
      • zip_code: zip of venue
      • distance: (optional) distance from user to location
    • account: (optional) associated account
      • id: account id
      • name: account name
      • restrict_by_account: if true, only students attending this account may enroll in the program
    • instructors: (optional) List of staffed classroom instructors (does not include proctors for exams)
      • id: instructor id
      • name: instructor's abbreviated name
      • avatar_url: instructor avatar url

List

URL: https://console.revolutionprep.com/api/v1/programs.json
Method: GET

Optional Parameters
brand_key:

Limit programs to be of a certain brand specified by the brand key.

Options: ap_tutoring, bootcamp, final_review, group_course, instructor_interview, instructor_training, national_merit, private_tutoring, senior_refresher, small_group_tutoring, special_event

segment:

Limit by segment.

Options: MathFocus, ReadingWritingFocus, ScorebackPresentation, SummerAccelerated

account_id:

integer id of an account. Programs must be associated with supplied account_id.

boost_account_id:

integer id of an account. Boost programs associated with supplied boost_account_id to the top of the results, but still include non-associated programs.

instructor_id:

integer id of instructor. Will only return programs that are taught by supplied instructor_id.

delivery_method:

string specifying the program delivery method.

Options: in-person, online

zip:

to located nearby programs.

limit:

the number of programs to be returned.

page:

an integer value which specifies which page of results to fetch, starting at 1. Fetching successively higher page numbers will return additional results, until there are no results to return (in which case an empty result set will be returned). Defaults to 1 page and 25 records per page.

JSON example

https://console.revolutionprep.com/api/v1/programs.json?brand_key=small_group_course

{
  current_page: 1,
  total_entries: 250,
  total_pages: 13,
  key: null,
  programs: [
    {
      id: 22457,
      subject: "SAT",
      round: "SAT on Oct 11",
      description: "Location: Live Online Classroom, Meets on Mon 11 AM, Wed 11 AM PDT starting 08/04/14 with Merrin M.",
      starts_at: "08/04/14",
      ends_at: "08/20/14",
      meetings_at: "Mon 11 AM, Wed 11 AM PDT",
      enrollment_cap: 6,
      seats_remaining: 3,
      price: "$599",
      enroll_url: "https://store.revolutionprep.com/add_to_cart/19876",
      hybrid_price: "$899",
      hybrid_enroll_url: "https://store.revolutionprep.com/add_to_cart/19877",
      account: {
        id: null,
        name: null,
        restrict_by_account: false
      },
      instructors: [
        {
          id: 6807,
           name: "Merrin M.",
          avatar_url: "https://s3.amazonaws.com/revrails-production/profile_attachments/21959/muxlow__merrin_cropped.jpg"
        }
      ]
    }
  ]
}

API:Program Details

Attributes:

  • id: Id of the program record
  • name: Custom name of the program - usually nil
  • full_name: Descriptive name of program. Includes subject, segment, name and brand name
  • round: Round the program is preparing for.
  • enrollment_cap: Maximum number of students that may enroll in the program. If null, there is no limit.
  • seats_remaining: Remaining number of spaces available in the program. Will be null if enrollment_cap is null
  • price: Price of the program
  • enroll_url: Url to purchase the program
  • hybrid price: Price of the program with the Hybrid upgrade
  • hybrid_enroll_url: Url to visit to add hybrid program to store cart
  • location: Geographical location where the program is based
    • address: Address of location
    • city: Name of city
    • state: Name of state
    • zip: Postal zip code
  • instructor_ids: Collection of instructor_ids that are teaching classes in the program
  • schedule: Collection of meetings ordered ascending by date
    • starts_at: Datetime of meeting
    • name: Name of the meeting
    • location_name: Name of where the meeting will take place

Methods:

List

URL: https://console.revolutionprep.com/api/v1/programs/[id].[format]
Method: GET
Required Parameters:
id: This is the primary id of the program

JSON example

https://console.revolutionprep.com/api/v1/programs/1309.json

{
    "id":17,
    "name":null,
    "full_name":"ACT Small Group Course",
    "round":"2012 - Oct 27 ACT",
    "enrollment_cap": 10,
    "seats_remaining": 5,
    "price":599.0,
    "enroll_url":"https://store.revolutionprep.com/store/confirm/113011",
    "hybrid_price": "$899",
    "hybrid_enroll_url": "https://store.revolutionprep.com/add_to_cart/19877",
    "instructors_ids":[825,24],
    "schedule": [
        { 
            "starts_at":"2012-09-19T23:00:00Z",
            "name":"Class 1",
            "location_name":"Live Online Classroom"
        },{
            "starts_at":"2012-09-26T23:00:00Z",
            "name":"Class 2",
            "location_name":"Live Online Classroom"
        },{
            "starts_at":"2012-10-03T23:00:00Z",
            "name":"Class 3",
            "location_name":"Live Online Classroom"
        },{
            "starts_at":"2012-10-10T23:00:00Z",
            "name":"Class 4",
            "location_name":"Live Online Classroom"
        },{
            "starts_at":"2012-10-17T23:00:00Z",
            "name":"Class 5",
            "location_name":"Live Online Classroom"
        },{
            "starts_at":"2012-10-24T23:00:00Z",
            "name":"Class 6",
            "location_name":"Live Online Classroom"
        }
    ]
}