Skip to content

Financial Aid API ​

This domain is retired

Financial aid is not administered in this system and this API is deliberately unreachable. Migration 144 deleted its permission nodes and grants, so every endpoint below returns 403 — there is no role that can be granted access.

The Go domain, its routes and the financialaid schema all still exist, which is why these endpoints still appear in the route table. The schema and its rows are retained for historical reference.

Documented here for completeness and for whoever eventually removes it. See Financial Aid (retired) for the layer-by-layer picture.

Base URL: /api/v1/financial-aid/

Manage financial aid award types, student awards, FAFSA data, financial estimates, and cost of attendance calculations.

Endpoints Overview ​

Award Types ​

MethodEndpointDescription
GET/award-typesList award types
POST/award-typesCreate award type
GET/award-types/{awardTypeID}Get award type details
PATCH/award-types/{awardTypeID}Update award type
DELETE/award-types/{awardTypeID}Delete award type

Awards ​

MethodEndpointDescription
GET/awardsList awards
POST/awardsCreate award
GET/awards/{awardID}Get award details
PATCH/awards/{awardID}Update award
DELETE/awards/{awardID}Delete award
POST/awards/{awardID}/approveApprove award

FAFSA ​

MethodEndpointDescription
GET/fafsaList FAFSA records
POST/fafsaCreate FAFSA record
GET/fafsa/{fafsaID}Get FAFSA details
PATCH/fafsa/{fafsaID}Update FAFSA record
DELETE/fafsa/{fafsaID}Delete FAFSA record
POST/fafsa/{fafsaID}/verifyVerify FAFSA

Financial Estimates ​

MethodEndpointDescription
GET/estimatesList financial estimates
POST/estimatesCreate estimate
GET/estimates/{estimateID}Get estimate details
PATCH/estimates/{estimateID}Update estimate
DELETE/estimates/{estimateID}Delete estimate
POST/estimates/{estimateID}/publishPublish estimate
POST/estimates/{estimateID}/acceptAccept estimate
POST/estimates/{estimateID}/declineDecline estimate

Estimate Cost Items ​

MethodEndpointDescription
GET/estimates/{estimateID}/cost-itemsList cost items
POST/estimates/{estimateID}/cost-itemsCreate cost item
PATCH/cost-items/{costItemID}Update cost item
DELETE/cost-items/{costItemID}Delete cost item

Estimate Awards ​

MethodEndpointDescription
GET/estimates/{estimateID}/awardsList estimate awards
POST/estimates/{estimateID}/awardsLink award to estimate
PATCH/estimate-awards/{estAwardID}Update estimate award
DELETE/estimate-awards/{estAwardID}Remove award from estimate

Award Types ​

Award types are template definitions for awards (scholarships, grants, loans, work-study).

List Award Types ​

GET /api/v1/financial-aid/award-types

Returns all award type definitions.

Example Request ​

bash
curl -X GET http://localhost:8000/api/v1/financial-aid/award-types \
  -b cookies.txt

Success Response (200 OK) ​

json
{
  "count": 15,
  "results": [
    {
      "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
      "code": "PRES_SCHOLAR",
      "name": "Presidential Scholarship",
      "award_type": "scholarship",
      "award_category": "merit",
      "default_amount": "10000.00",
      "min_amount": "5000.00",
      "max_amount": "15000.00",
      "is_renewable": true,
      "requires_fafsa": false,
      "disbursement_schedule": "per_term",
      "eligibility_criteria": "GPA >= 3.8",
      "assigned_by_department": "ADMISSIONS",
      "is_active": true,
      "display_order": 1,
      "created_at": "2024-01-01T00:00:00Z",
      "updated_at": "2024-01-01T00:00:00Z"
    }
  ]
}

TypeScript Types ​

typescript
interface AwardType {
  id: string
  code: string
  name: string
  award_type: 'scholarship' | 'grant' | 'loan' | 'work_study'
  award_category: string | null
  default_amount: string | null
  min_amount: string | null
  max_amount: string | null
  is_renewable: boolean
  requires_fafsa: boolean
  disbursement_schedule: string | null
  eligibility_criteria: string | null
  assigned_by_department: 'ADMISSIONS' | 'STUDENT_FINANCE' | null
  is_active: boolean
  display_order: number
  created_at: string
  created_by: string | null
  updated_at: string
  updated_by: string | null
}

Create Award Type ​

POST /api/v1/financial-aid/award-types

Request Body ​

FieldTypeRequiredDescription
codestringYesUnique code (max 50)
namestringYesDisplay name (max 200)
award_typestringYesOne of: scholarship, grant, loan, work_study
award_categorystringNoCategory classification
default_amountdecimalNoDefault award amount
min_amountdecimalNoMinimum allowed amount
max_amountdecimalNoMaximum allowed amount
is_renewablebooleanNoWhether award is renewable
requires_fafsabooleanNoWhether FAFSA is required
disbursement_schedulestringNoHow award is disbursed
eligibility_criteriastringNoEligibility description
assigned_by_departmentstringNoOne of: ADMISSIONS, STUDENT_FINANCE
is_activebooleanNoActive status
display_orderintegerNoDisplay sort order

Example Request ​

bash
curl -X POST http://localhost:8000/api/v1/financial-aid/award-types \
  -b cookies.txt \
  -H "Content-Type: application/json" \
  -d '{
    "code": "DEAN_SCHOLAR",
    "name": "Dean'\''s Scholarship",
    "award_type": "scholarship",
    "award_category": "merit",
    "default_amount": "5000.00",
    "is_renewable": true,
    "requires_fafsa": false,
    "disbursement_schedule": "per_term"
  }'

Update Award Type ​

PATCH /api/v1/financial-aid/award-types/{awardTypeID}

All fields are optional. Only provided fields are updated.


Awards ​

Awards represent financial aid assigned to individual students.

List Awards ​

GET /api/v1/financial-aid/awards

Query Parameters ​

ParameterTypeDescription
person_iduuidFilter by person
term_idintegerFilter by term
award_typestringFilter by type: scholarship, grant, loan, work_study
statusstringFilter by status
departmentstringFilter by assigning department
searchstringSearch awards
order_bystringSort field
limitintegerPage size
offsetintegerPage offset

Example Request ​

bash
curl -X GET "http://localhost:8000/api/v1/financial-aid/awards?award_type=scholarship&status=approved" \
  -b cookies.txt

Success Response (200 OK) ​

json
{
  "count": 25,
  "results": [
    {
      "id": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
      "person_id": "c3d4e5f6-a7b8-9012-cdef-123456789012",
      "application_id": 100,
      "term_id": 10,
      "award_type_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
      "award_type": "scholarship",
      "award_category": "merit",
      "award_name": "Presidential Scholarship",
      "amount": "10000.00",
      "status": "approved",
      "is_renewable": true,
      "requires_fafsa": false,
      "disbursement_schedule": "per_term",
      "renewal_conditions": "Maintain 3.5 GPA",
      "assigned_by_department": "ADMISSIONS",
      "assigned_by": 1,
      "assigned_at": "2024-03-15T10:00:00Z",
      "approved_by": 2,
      "approved_at": "2024-03-20T14:30:00Z",
      "notes": null,
      "created_at": "2024-03-15T10:00:00Z",
      "updated_at": "2024-03-20T14:30:00Z"
    }
  ]
}

TypeScript Types ​

typescript
interface Award {
  id: string
  person_id: string
  application_id: number | null
  term_id: number | null
  award_type_id: string | null
  award_type: 'scholarship' | 'grant' | 'loan' | 'work_study'
  award_category: string | null
  award_name: string
  amount: string
  status: 'pending' | 'approved' | 'active' | 'disbursed' | 'cancelled' | 'expired'
  is_renewable: boolean
  requires_fafsa: boolean
  disbursement_schedule: string | null
  renewal_conditions: string | null
  assigned_by_department: string | null
  assigned_by: number
  assigned_at: string
  approved_by: number | null
  approved_at: string | null
  notes: string | null
  created_at: string
  created_by: string | null
  updated_at: string
  updated_by: string | null
  award_type_ref: AwardType | null
}

Create Award ​

POST /api/v1/financial-aid/awards

Request Body ​

FieldTypeRequiredDescription
person_iduuidYesPerson receiving the award
application_idintegerNoRelated admission application
term_idintegerNoTerm the award applies to
award_type_iduuidNoAward type template ID
award_typestringYesOne of: scholarship, grant, loan, work_study
award_categorystringNoCategory classification
award_namestringYesAward name (max 200)
amountdecimalYesAward amount
statusstringNoOne of: pending, approved, active, disbursed, cancelled, expired
is_renewablebooleanNoWhether award is renewable
requires_fafsabooleanNoWhether FAFSA is required
disbursement_schedulestringNoDisbursement schedule
renewal_conditionsstringNoConditions for renewal
assigned_by_departmentstringNoOne of: ADMISSIONS, STUDENT_FINANCE
notesstringNoStaff notes

Example Request ​

bash
curl -X POST http://localhost:8000/api/v1/financial-aid/awards \
  -b cookies.txt \
  -H "Content-Type: application/json" \
  -d '{
    "person_id": "c3d4e5f6-a7b8-9012-cdef-123456789012",
    "term_id": 10,
    "award_type": "scholarship",
    "award_name": "Presidential Scholarship",
    "amount": "10000.00",
    "assigned_by_department": "ADMISSIONS"
  }'

Approve Award ​

POST /api/v1/financial-aid/awards/{awardID}/approve

Approve a pending award. Sets status to approved and records the approver.

Request Body ​

FieldTypeRequiredDescription
notesstringNoApproval notes

Example Request ​

bash
curl -X POST http://localhost:8000/api/v1/financial-aid/awards/b2c3d4e5-f6a7-8901-bcde-f12345678901/approve \
  -b cookies.txt \
  -H "Content-Type: application/json" \
  -d '{"notes": "Approved per committee review"}'

Success Response (200 OK) ​

json
{
  "id": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
  "status": "approved",
  "approved_by": 2,
  "approved_at": "2024-03-20T14:30:00Z"
}

FAFSA ​

Manage FAFSA (Free Application for Federal Student Aid) data for students.

List FAFSA Records ​

GET /api/v1/financial-aid/fafsa

Query Parameters ​

ParameterTypeDescription
person_iduuidFilter by person
fafsa_yearintegerFilter by FAFSA year
verifiedbooleanFilter by verification status
searchstringSearch records
order_bystringSort field
limitintegerPage size
offsetintegerPage offset

Example Request ​

bash
curl -X GET "http://localhost:8000/api/v1/financial-aid/fafsa?fafsa_year=2025" \
  -b cookies.txt

Success Response (200 OK) ​

json
{
  "count": 10,
  "results": [
    {
      "id": "d4e5f6a7-b8c9-0123-defg-234567890123",
      "person_id": "c3d4e5f6-a7b8-9012-cdef-123456789012",
      "application_id": 100,
      "fafsa_year": 2025,
      "submission_date": "2024-10-01T00:00:00Z",
      "processed_date": "2024-10-15T00:00:00Z",
      "efc": 5000,
      "sai": -1500,
      "pell_eligible": true,
      "pell_amount": "7395.00",
      "dependency_status": "dependent",
      "income_range": "30000-39999",
      "housing_plan": "on_campus",
      "verification_required": false,
      "verification_completed": false,
      "verified_by": null,
      "verified_at": null,
      "entered_by": 1,
      "entered_at": "2024-10-01T00:00:00Z",
      "notes": null,
      "created_at": "2024-10-01T00:00:00Z",
      "updated_at": "2024-10-15T00:00:00Z"
    }
  ]
}

TypeScript Types ​

typescript
interface FAFSAData {
  id: string
  person_id: string
  application_id: number | null
  fafsa_year: number
  submission_date: string | null
  processed_date: string | null
  efc: number | null
  sai: number | null
  pell_eligible: boolean | null
  pell_amount: string | null
  dependency_status: 'dependent' | 'independent' | null
  income_range: string | null
  housing_plan: 'on_campus' | 'off_campus_with_parents' | 'off_campus_not_with_parents' | null
  verification_required: boolean
  verification_completed: boolean
  verified_by: number | null
  verified_at: string | null
  entered_by: number
  entered_at: string
  notes: string | null
  created_at: string
  created_by: string | null
  updated_at: string
  updated_by: string | null
}

Create FAFSA Record ​

POST /api/v1/financial-aid/fafsa

Request Body ​

FieldTypeRequiredDescription
person_iduuidYesPerson ID
application_idintegerNoRelated admission application
fafsa_yearintegerYesFAFSA award year
submission_datedatetimeNoDate submitted
processed_datedatetimeNoDate processed
efcintegerNoExpected Family Contribution (legacy)
saiintegerNoStudent Aid Index (new formula)
pell_eligiblebooleanNoPell Grant eligibility
pell_amountdecimalNoPell Grant amount
dependency_statusstringNoOne of: dependent, independent
income_rangestringNoIncome range bracket
housing_planstringNoOne of: on_campus, off_campus_with_parents, off_campus_not_with_parents
verification_requiredbooleanNoWhether verification is needed
notesstringNoStaff notes

Example Request ​

bash
curl -X POST http://localhost:8000/api/v1/financial-aid/fafsa \
  -b cookies.txt \
  -H "Content-Type: application/json" \
  -d '{
    "person_id": "c3d4e5f6-a7b8-9012-cdef-123456789012",
    "fafsa_year": 2025,
    "submission_date": "2024-10-01T00:00:00Z",
    "efc": 5000,
    "sai": -1500,
    "pell_eligible": true,
    "dependency_status": "dependent",
    "housing_plan": "on_campus"
  }'

Verify FAFSA ​

POST /api/v1/financial-aid/fafsa/{fafsaID}/verify

Mark a FAFSA record as verified. Sets verification_completed to true and records the verifier.

Request Body ​

FieldTypeRequiredDescription
notesstringNoVerification notes

Example Request ​

bash
curl -X POST http://localhost:8000/api/v1/financial-aid/fafsa/d4e5f6a7-b8c9-0123-defg-234567890123/verify \
  -b cookies.txt \
  -H "Content-Type: application/json" \
  -d '{"notes": "Documents reviewed and verified"}'

Financial Estimates ​

Financial estimates represent cost of attendance projections for prospective or current students.

List Estimates ​

GET /api/v1/financial-aid/estimates

Query Parameters ​

ParameterTypeDescription
person_iduuidFilter by person
application_idintegerFilter by application
term_idintegerFilter by term
statusstringFilter by status
departmentstringFilter by requesting department
searchstringSearch estimates
order_bystringSort field
limitintegerPage size
offsetintegerPage offset

Example Request ​

bash
curl -X GET "http://localhost:8000/api/v1/financial-aid/estimates?status=published" \
  -b cookies.txt

Success Response (200 OK) ​

json
{
  "count": 5,
  "results": [
    {
      "id": "e5f6a7b8-c9d0-1234-efgh-345678901234",
      "person_id": "c3d4e5f6-a7b8-9012-cdef-123456789012",
      "application_id": 100,
      "term_id": 10,
      "degree_id": 5,
      "fafsa_data_id": "d4e5f6a7-b8c9-0123-defg-234567890123",
      "estimate_name": "Fall 2025 Financial Estimate",
      "estimate_type": "single_term",
      "academic_year": "2025-2026",
      "enrollment_status": "full_time",
      "housing_type": "on_campus",
      "credits_per_term": 15,
      "version": 1,
      "previous_estimate_id": null,
      "tuition_fees_total": "12000.00",
      "housing_costs_total": "5000.00",
      "meal_plan_total": "3000.00",
      "books_supplies_total": "1200.00",
      "other_costs_total": "500.00",
      "total_costs": "21700.00",
      "scholarships_grants_total": "10000.00",
      "loans_total": "5500.00",
      "work_study_total": "2000.00",
      "total_aid": "17500.00",
      "net_cost": "4200.00",
      "fafsa_required": true,
      "fafsa_received": true,
      "status": "published",
      "requested_by_department": "ADMISSIONS",
      "published_at": "2024-11-01T00:00:00Z",
      "expires_at": "2025-05-01T00:00:00Z",
      "created_at": "2024-10-15T00:00:00Z",
      "updated_at": "2024-11-01T00:00:00Z"
    }
  ]
}

TypeScript Types ​

typescript
interface FinancialEstimate {
  id: string
  person_id: string
  application_id: number | null
  term_id: number | null
  degree_id: number | null
  fafsa_data_id: string | null
  estimate_name: string
  estimate_type: 'full_year' | 'single_term'
  academic_year: string | null
  enrollment_status: 'full_time' | 'part_time' | 'half_time' | null
  housing_type: string | null
  credits_per_term: number | null
  version: number
  previous_estimate_id: string | null
  tuition_fees_total: string
  housing_costs_total: string
  meal_plan_total: string
  books_supplies_total: string
  other_costs_total: string
  total_costs: string
  scholarships_grants_total: string
  loans_total: string
  work_study_total: string
  total_aid: string
  net_cost: string
  fafsa_required: boolean
  fafsa_received: boolean
  status: 'draft' | 'pending_review' | 'published' | 'accepted' | 'declined' | 'expired' | 'superseded'
  requested_by_department: string | null
  requested_by: number | null
  requested_at: string | null
  published_at: string | null
  published_by: number | null
  accepted_at: string | null
  declined_at: string | null
  expires_at: string | null
  staff_notes: string | null
  student_notes: string | null
  created_at: string
  created_by: string | null
  updated_at: string
  updated_by: string | null
  cost_items: EstimateCostItem[]
  awards: EstimateAward[]
}

Create Estimate ​

POST /api/v1/financial-aid/estimates

Request Body ​

FieldTypeRequiredDescription
person_iduuidYesPerson ID
application_idintegerNoRelated admission application
term_idintegerNoTerm ID
degree_idintegerNoDegree program ID
fafsa_data_iduuidNoLinked FAFSA record
estimate_namestringYesEstimate name
estimate_typestringNoOne of: full_year, single_term
academic_yearstringNoAcademic year (e.g., "2025-2026")
enrollment_statusstringNoOne of: full_time, part_time, half_time
housing_typestringNoHousing type
credits_per_termintegerNoExpected credits per term
tuition_fees_totaldecimalNoTuition and fees total
housing_costs_totaldecimalNoHousing costs total
meal_plan_totaldecimalNoMeal plan total
books_supplies_totaldecimalNoBooks and supplies total
other_costs_totaldecimalNoOther costs total
scholarships_grants_totaldecimalNoScholarships/grants total
loans_totaldecimalNoLoans total
work_study_totaldecimalNoWork-study total
fafsa_requiredbooleanNoWhether FAFSA is required
fafsa_receivedbooleanNoWhether FAFSA has been received
staff_notesstringNoInternal staff notes
student_notesstringNoNotes visible to student
requested_by_departmentstringNoOne of: ADMISSIONS, STUDENT_FINANCE

Example Request ​

bash
curl -X POST http://localhost:8000/api/v1/financial-aid/estimates \
  -b cookies.txt \
  -H "Content-Type: application/json" \
  -d '{
    "person_id": "c3d4e5f6-a7b8-9012-cdef-123456789012",
    "term_id": 10,
    "estimate_name": "Fall 2025 Financial Estimate",
    "estimate_type": "single_term",
    "enrollment_status": "full_time",
    "housing_type": "on_campus",
    "credits_per_term": 15,
    "requested_by_department": "ADMISSIONS"
  }'

Estimate Workflow Actions ​

Publish Estimate ​

POST /api/v1/financial-aid/estimates/{estimateID}/publish

Publish an estimate, making it visible to the student. Changes status from draft or pending_review to published.

Example Request ​

bash
curl -X POST http://localhost:8000/api/v1/financial-aid/estimates/e5f6a7b8-c9d0-1234-efgh-345678901234/publish \
  -b cookies.txt

Accept Estimate ​

POST /api/v1/financial-aid/estimates/{estimateID}/accept

Student accepts the published estimate. Changes status to accepted.

Example Request ​

bash
curl -X POST http://localhost:8000/api/v1/financial-aid/estimates/e5f6a7b8-c9d0-1234-efgh-345678901234/accept \
  -b cookies.txt

Decline Estimate ​

POST /api/v1/financial-aid/estimates/{estimateID}/decline

Student declines the published estimate. Changes status to declined.

Example Request ​

bash
curl -X POST http://localhost:8000/api/v1/financial-aid/estimates/e5f6a7b8-c9d0-1234-efgh-345678901234/decline \
  -b cookies.txt

Estimate Cost Items ​

Itemized cost breakdowns within a financial estimate.

List Cost Items ​

GET /api/v1/financial-aid/estimates/{estimateID}/cost-items

Example Request ​

bash
curl -X GET http://localhost:8000/api/v1/financial-aid/estimates/e5f6a7b8-c9d0-1234-efgh-345678901234/cost-items \
  -b cookies.txt

Success Response (200 OK) ​

json
[
  {
    "id": "f6a7b8c9-d0e1-2345-fghi-456789012345",
    "estimate_id": "e5f6a7b8-c9d0-1234-efgh-345678901234",
    "category": "tuition",
    "item_name": "Undergraduate Tuition",
    "description": "15 credits at $800/credit",
    "unit_cost": "800.00",
    "quantity": 15,
    "total_cost": "12000.00",
    "frequency": "per_term",
    "is_required": true,
    "display_order": 1,
    "created_at": "2024-10-15T00:00:00Z",
    "updated_at": "2024-10-15T00:00:00Z"
  }
]

TypeScript Types ​

typescript
interface EstimateCostItem {
  id: string
  estimate_id: string
  category: 'tuition' | 'fees' | 'housing' | 'meals' | 'books' | 'supplies' | 'transportation' | 'personal' | 'technology' | 'health_insurance' | 'other'
  item_name: string
  description: string | null
  unit_cost: string
  quantity: number
  total_cost: string
  frequency: 'per_term' | 'per_year' | 'per_credit' | 'one_time'
  is_required: boolean
  display_order: number
  created_at: string
  created_by: string | null
  updated_at: string
  updated_by: string | null
}

Create Cost Item ​

POST /api/v1/financial-aid/estimates/{estimateID}/cost-items

Request Body ​

FieldTypeRequiredDescription
estimate_iduuidYesParent estimate ID
categorystringYesOne of: tuition, fees, housing, meals, books, supplies, transportation, personal, technology, health_insurance, other
item_namestringYesItem name
descriptionstringNoItem description
unit_costdecimalYesCost per unit
quantityintegerYesQuantity (>= 1)
frequencystringYesOne of: per_term, per_year, per_credit, one_time
is_requiredbooleanNoWhether item is required
display_orderintegerNoDisplay sort order

Example Request ​

bash
curl -X POST http://localhost:8000/api/v1/financial-aid/estimates/e5f6a7b8-c9d0-1234-efgh-345678901234/cost-items \
  -b cookies.txt \
  -H "Content-Type: application/json" \
  -d '{
    "estimate_id": "e5f6a7b8-c9d0-1234-efgh-345678901234",
    "category": "tuition",
    "item_name": "Undergraduate Tuition",
    "unit_cost": "800.00",
    "quantity": 15,
    "frequency": "per_term",
    "is_required": true
  }'

Update Cost Item ​

PATCH /api/v1/financial-aid/cost-items/{costItemID}

All fields are optional. Only provided fields are updated.


Delete Cost Item ​

DELETE /api/v1/financial-aid/cost-items/{costItemID}

Estimate Awards ​

Link awards to financial estimates to show projected aid.

List Estimate Awards ​

GET /api/v1/financial-aid/estimates/{estimateID}/awards

Example Request ​

bash
curl -X GET http://localhost:8000/api/v1/financial-aid/estimates/e5f6a7b8-c9d0-1234-efgh-345678901234/awards \
  -b cookies.txt

Success Response (200 OK) ​

json
[
  {
    "id": "a7b8c9d0-e1f2-3456-ghij-567890123456",
    "estimate_id": "e5f6a7b8-c9d0-1234-efgh-345678901234",
    "award_id": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
    "estimated_amount": "10000.00",
    "display_order": 1,
    "notes": null,
    "created_at": "2024-10-15T00:00:00Z",
    "updated_at": "2024-10-15T00:00:00Z"
  }
]

TypeScript Types ​

typescript
interface EstimateAward {
  id: string
  estimate_id: string
  award_id: string
  estimated_amount: string
  display_order: number
  notes: string | null
  created_at: string
  created_by: string | null
  updated_at: string
  updated_by: string | null
  award: Award | null
}

Create Estimate Award ​

POST /api/v1/financial-aid/estimates/{estimateID}/awards

Request Body ​

FieldTypeRequiredDescription
estimate_iduuidYesParent estimate ID
award_iduuidYesAward to link
estimated_amountdecimalYesEstimated amount for this estimate
display_orderintegerNoDisplay sort order
notesstringNoNotes about this award in context

Example Request ​

bash
curl -X POST http://localhost:8000/api/v1/financial-aid/estimates/e5f6a7b8-c9d0-1234-efgh-345678901234/awards \
  -b cookies.txt \
  -H "Content-Type: application/json" \
  -d '{
    "estimate_id": "e5f6a7b8-c9d0-1234-efgh-345678901234",
    "award_id": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
    "estimated_amount": "10000.00",
    "display_order": 1
  }'

Update Estimate Award ​

PATCH /api/v1/financial-aid/estimate-awards/{estAwardID}

Request Body ​

FieldTypeRequiredDescription
estimated_amountdecimalNoUpdated amount
display_orderintegerNoUpdated sort order
notesstringNoUpdated notes

Delete Estimate Award ​

DELETE /api/v1/financial-aid/estimate-awards/{estAwardID}



Complete endpoint reference ​

Every route this domain registers, with the permission node that gates it. Generated from the route table, so it is complete by construction — the sections above explain behaviour, this one guarantees nothing is missing.

Paths are relative to /api/v1/financial-aid. A node in italics is an exemption rather than a grant: selfservice acts only on the caller's own record, public needs no session at all, and custom carries its own wrapper.

MethodEndpointPermission nodeDescription
GET/award-typesFINANCIALAID.AWARD_TYPESList award types
POST/award-typesFINANCIALAID.AWARD_TYPESCreate a award type
DELETE/award-types/{awardTypeID}FINANCIALAID.AWARD_TYPESDelete a award type
GET/award-types/{awardTypeID}FINANCIALAID.AWARD_TYPESGet one award type
PATCH/award-types/{awardTypeID}FINANCIALAID.AWARD_TYPESUpdate a award type
GET/awardsFINANCIALAID.AWARDSList awards
POST/awardsFINANCIALAID.AWARDSCreate a award
DELETE/awards/{awardID}FINANCIALAID.AWARDSDelete a award
GET/awards/{awardID}FINANCIALAID.AWARDSGet one award
PATCH/awards/{awardID}FINANCIALAID.AWARDSUpdate a award
POST/awards/{awardID}/approveFINANCIALAID.AWARDSApprove for a award
DELETE/cost-items/{costItemID}FINANCIALAID.ESTIMATESDelete a cost item
PATCH/cost-items/{costItemID}FINANCIALAID.ESTIMATESUpdate a cost item
DELETE/estimate-awards/{estAwardID}FINANCIALAID.ESTIMATESDelete a estimate award
PATCH/estimate-awards/{estAwardID}FINANCIALAID.ESTIMATESUpdate a estimate award
GET/estimatesFINANCIALAID.ESTIMATESList estimates
POST/estimatesFINANCIALAID.ESTIMATESCreate a estimate
DELETE/estimates/{estimateID}FINANCIALAID.ESTIMATESDelete a estimate
GET/estimates/{estimateID}FINANCIALAID.ESTIMATESGet one estimate
PATCH/estimates/{estimateID}FINANCIALAID.ESTIMATESUpdate a estimate
POST/estimates/{estimateID}/acceptFINANCIALAID.ESTIMATESAccept for a estimate
GET/estimates/{estimateID}/awardsFINANCIALAID.ESTIMATESList the estimate's awards
POST/estimates/{estimateID}/awardsFINANCIALAID.ESTIMATESAdd awards to a estimate
GET/estimates/{estimateID}/cost-itemsFINANCIALAID.ESTIMATESList the estimate's cost items
POST/estimates/{estimateID}/cost-itemsFINANCIALAID.ESTIMATESAdd cost items to a estimate
POST/estimates/{estimateID}/declineFINANCIALAID.ESTIMATESDecline for a estimate
POST/estimates/{estimateID}/publishFINANCIALAID.ESTIMATESPublish for a estimate
GET/fafsaFINANCIALAID.FAFSAGet FAFSA
POST/fafsaFINANCIALAID.FAFSACreate FAFSA
DELETE/fafsa/{fafsaID}FINANCIALAID.FAFSADelete a FAFSA
GET/fafsa/{fafsaID}FINANCIALAID.FAFSAGet one FAFSA
PATCH/fafsa/{fafsaID}FINANCIALAID.FAFSAUpdate a FAFSA
POST/fafsa/{fafsaID}/verifyFINANCIALAID.FAFSAVerify for a FAFSA

Student Information System Documentation