regis

<back to all web services

FinancialAidAllocationReviewRequest

Requires Authentication
Required role:REGISUserRole
The following routes are available for this service:
POST/Finance/FinancialAid/AllocationReview/{reporting_term}
import datetime
import decimal
from marshmallow.fields import *
from servicestack import *
from typing import *
from dataclasses import dataclass, field
from dataclasses_json import dataclass_json, LetterCase, Undefined, config
from enum import Enum, IntEnum


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class FinancialAidAllocationCandidateResponse:
    application_uuid: Optional[str] = None
    uuid: Optional[str] = None
    regent_id: int = 0
    first_name: Optional[str] = None
    last_name: Optional[str] = None
    application_start_term: Optional[str] = None
    current_status: Optional[str] = None
    submitted_date: Optional[datetime.datetime] = None
    eligibility_tier: Optional[str] = None
    award_target: Decimal = decimal.Decimal(0)
    committed_amount: Decimal = decimal.Decimal(0)
    unmet_amount: Decimal = decimal.Decimal(0)
    proposed_amount: Decimal = decimal.Decimal(0)
    incomplete_reason: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class FinancialAidAllocationCycleResponse:
    application_start_term: Optional[str] = None
    is_fallback_released: bool = False
    fallback_release_date: Optional[datetime.datetime] = None
    fallback_released_by: Optional[str] = None
    primary_candidates: Optional[List[FinancialAidAllocationCandidateResponse]] = None
    fallback_candidates: Optional[List[FinancialAidAllocationCandidateResponse]] = None
    manual_review_candidates: Optional[List[FinancialAidAllocationCandidateResponse]] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class FinancialAidAllocationProposalResponse:
    application_uuid: Optional[str] = None
    regent_id: int = 0
    student_name: Optional[str] = None
    application_start_term: Optional[str] = None
    eligibility_tier: Optional[str] = None
    amount: Decimal = decimal.Decimal(0)


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class FinancialAidAllocationAwardResponse:
    award_code: Optional[str] = None
    award_description: Optional[str] = None
    budget_amount: Decimal = decimal.Decimal(0)
    planned_or_offered_amount: Decimal = decimal.Decimal(0)
    accepted_or_issued_amount: Decimal = decimal.Decimal(0)
    committed_amount: Decimal = decimal.Decimal(0)
    reclaimable_amount: Decimal = decimal.Decimal(0)
    proposed_amount: Decimal = decimal.Decimal(0)
    projected_remaining_amount: Decimal = decimal.Decimal(0)
    must_award_whole_budget: bool = False
    requires_manual_review: bool = False
    manual_review_note: Optional[str] = None
    required_recipient_count: Optional[int] = None
    requires_equal_shares: bool = False
    application_cycles: Optional[List[FinancialAidAllocationCycleResponse]] = None
    proposals: Optional[List[FinancialAidAllocationProposalResponse]] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class FinancialAidAllocationConflictResponse:
    award_code: Optional[str] = None
    award_description: Optional[str] = None
    application_start_term: Optional[str] = None
    fallback_application_uuid: Optional[str] = None
    fallback_student_name: Optional[str] = None
    fallback_status: Optional[str] = None
    reclaimable_amount: Decimal = decimal.Decimal(0)
    primary_application_uuid: Optional[str] = None
    primary_student_name: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class FinancialAidAllocationReviewResponse:
    response_status: Optional[ResponseStatus] = None
    reporting_term: Optional[str] = None
    budget_amount: Decimal = decimal.Decimal(0)
    committed_amount: Decimal = decimal.Decimal(0)
    proposed_amount: Decimal = decimal.Decimal(0)
    projected_unused_amount: Decimal = decimal.Decimal(0)
    actionable_unmet_amount: Decimal = decimal.Decimal(0)
    awards: Optional[List[FinancialAidAllocationAwardResponse]] = None
    incomplete_candidates: Optional[List[FinancialAidAllocationCandidateResponse]] = None
    conflicts: Optional[List[FinancialAidAllocationConflictResponse]] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class FinancialAidAllocationReviewRequest:
    reporting_term: Optional[str] = None
    authorizing_uuid: Optional[str] = None

Python FinancialAidAllocationReviewRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json

To embed the response in a jsonp callback, append ?callback=myCallback

HTTP + JSON

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /Finance/FinancialAid/AllocationReview/{reporting_term} HTTP/1.1 
Host: data.regent-college.edu 
Accept: application/json
Content-Type: application/json
Content-Length: length

{"reporting_term":"String","authorizing_uuid":"String"}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"responseStatus":{"errorCode":"String","message":"String","stackTrace":"String","errors":[{"errorCode":"String","fieldName":"String","message":"String","meta":{"String":"String"}}],"meta":{"String":"String"}},"reporting_term":"String","budget_amount":0,"committed_amount":0,"proposed_amount":0,"projected_unused_amount":0,"actionable_unmet_amount":0,"awards":[{"award_code":"String","award_description":"String","budget_amount":0,"planned_or_offered_amount":0,"accepted_or_issued_amount":0,"committed_amount":0,"reclaimable_amount":0,"proposed_amount":0,"projected_remaining_amount":0,"must_award_whole_budget":false,"requires_manual_review":false,"manual_review_note":"String","required_recipient_count":0,"requires_equal_shares":false,"application_cycles":[{"application_start_term":"String","is_fallback_released":false,"fallback_release_date":"0001-01-01T00:00:00.0000000","fallback_released_by":"String","primary_candidates":[{"application_uuid":"String","uuid":"String","regent_id":0,"first_name":"String","last_name":"String","application_start_term":"String","current_status":"String","submitted_date":"0001-01-01T00:00:00.0000000","eligibility_tier":"String","award_target":0,"committed_amount":0,"unmet_amount":0,"proposed_amount":0,"incomplete_reason":"String"}],"fallback_candidates":[{"application_uuid":"String","uuid":"String","regent_id":0,"first_name":"String","last_name":"String","application_start_term":"String","current_status":"String","submitted_date":"0001-01-01T00:00:00.0000000","eligibility_tier":"String","award_target":0,"committed_amount":0,"unmet_amount":0,"proposed_amount":0,"incomplete_reason":"String"}],"manual_review_candidates":[{"application_uuid":"String","uuid":"String","regent_id":0,"first_name":"String","last_name":"String","application_start_term":"String","current_status":"String","submitted_date":"0001-01-01T00:00:00.0000000","eligibility_tier":"String","award_target":0,"committed_amount":0,"unmet_amount":0,"proposed_amount":0,"incomplete_reason":"String"}]}],"proposals":[{"application_uuid":"String","regent_id":0,"student_name":"String","application_start_term":"String","eligibility_tier":"String","amount":0}]}],"incomplete_candidates":[{"application_uuid":"String","uuid":"String","regent_id":0,"first_name":"String","last_name":"String","application_start_term":"String","current_status":"String","submitted_date":"0001-01-01T00:00:00.0000000","eligibility_tier":"String","award_target":0,"committed_amount":0,"unmet_amount":0,"proposed_amount":0,"incomplete_reason":"String"}],"conflicts":[{"award_code":"String","award_description":"String","application_start_term":"String","fallback_application_uuid":"String","fallback_student_name":"String","fallback_status":"String","reclaimable_amount":0,"primary_application_uuid":"String","primary_student_name":"String"}]}