Matching Algorithm API Reference
The FindU matching API provides personalized college recommendations and manages student-school interactions.Base URL
Authentication
All endpoints require a valid Supabase JWT token:Endpoints
Get Recommendations
Retrieve personalized college recommendations for a student.Request Body
| Parameter | Type | Required | Description |
|---|---|---|---|
| student_id | string | Yes | UUID of the student |
| limit | integer | No | Number of recommendations (default: 20) |
| offset | integer | No | Pagination offset (default: 0) |
Response
Record Swipe
Record a student’s interaction with a school recommendation.Request Body
| Parameter | Type | Required | Description |
|---|---|---|---|
| student_id | string | Yes | UUID of the student |
| school_id | string | Yes | UUID of the school |
| direction | string | Yes | ”left” (dislike) or “right” (like) |
| interaction_type | string | No | Type of interaction (default: “swipe”) |
| time_spent | float | No | Seconds spent viewing |
Response
Get Match Details
Get detailed match information between a student and school.Response
Mobile-Optimized Endpoints
Compressed Recommendations
Get recommendations with compressed field names for mobile.Response
i= idn= names= scoreg= gradec= cityst= state
Batch School Fetch
Fetch multiple schools in one request.Request Body
Minimal Onboarding API
Create Minimal Profile
Create a student profile with minimal information.Request Body
Get Category Schools
Get the 6 archetype schools for preference discovery.Response
Error Handling
Error Response Format
Common Error Codes
| Code | Description |
|---|---|
| INVALID_STUDENT_ID | Student ID not found |
| INVALID_SCHOOL_ID | School ID not found |
| MISSING_PROFILE | Student profile incomplete |
| RATE_LIMITED | Too many requests |
| INTERNAL_ERROR | Server error |
Rate Limiting
- Recommendations: 60 requests per minute
- Swipes: 300 requests per minute
- Batch operations: 20 requests per minute