Request (akoya_request)¶
A Request is an application for funding — either a grant (general-purpose or program-specific) or a scholarship (education-focused). It's the central record for the grants workflow: application intake, review, board decisions, award amounts, and subsequent payments and requirements. The same entity handles both grants and scholarships; scholarships populate additional demographic and academic columns.
At a glance
| Display name | Request |
| Logical name | akoya_request |
| Primary ID attribute | akoya_requestid |
| Entity set name (Web API) | akoya_requests |
| Ownership | UserOwned |
| Change tracking | Enabled |
| Audit | Enabled |
Large entity
akoya_request has 100+ custom attributes to support both grant and scholarship workflows. This page documents the columns most relevant to integration partners. Specialized scholarship-only evaluation columns, legacy-format duplicates, and demographic multiselect pickets are omitted for brevity — the Phase 2 metadata generator will produce the exhaustive list.
Web API¶
GET {org}/api/data/v9.2/akoya_requests
GET {org}/api/data/v9.2/akoya_requests({requestid})
POST {org}/api/data/v9.2/akoya_requests
PATCH {org}/api/data/v9.2/akoya_requests({requestid})
Attributes¶
Application lifecycle¶
| Display name | Logical name | Type | Required | Description |
|---|---|---|---|---|
| Application ID | akoya_applicationid |
String (10) | None | External or legacy application identifier. |
| Grant Name | akoya_grantname |
String (200) | None | Program / grant title. |
| Request Received | akoya_datereceived |
DateTime | None | Application submission date. |
| Request Acknowledged | akoya_dateacknowledged |
DateTime | None | Confirmation sent. |
| Decision Date | akoya_decisiondate |
DateTime | None | Approval / denial date. |
| Date Notified | akoya_datenotified |
DateTime | None | Applicant notification sent. |
| Contract Received | akoya_datecontractreceived |
DateTime | None | Signed docs received. |
| Begin Date | akoya_begindate |
DateTime | None | Award period start. |
| End Date | akoya_enddate |
DateTime | None | Award period end / project completion. |
| Grant Received Date | akoya_grantreceived |
DateTime | None | Funds arrived. |
| Denial Reason | akoya_denialreason |
Choice | None | Global option set. |
Financial¶
All money columns have paired _Base system columns.
| Display name | Logical name | Description |
|---|---|---|
| Grant Amendment | akoya_amendment |
Award modification amount. |
| Balance | akoya_balance |
Remaining unpaid award. |
| Balanced | akoya_balanced |
Boolean — all payments received. |
| Financial Aid | akoya_financialaid |
Other aid available to applicant. |
| Gift Aid | akoya_giftaid |
Grant / gift aid amount. |
| Housing Cost | akoya_housingcost |
Room and board (scholarships). |
| Income | akoya_income |
Applicant family / individual income. |
Grant classification¶
| Display name | Logical name | Type | Description |
|---|---|---|---|
| Grant Type | akoya_granttype |
Choice | Scholarship / merit / need-based / general (global option set). |
| Grant Payment Schedule | akoya_grantpaymentschedule |
Choice | Payout frequency (global option set). |
| First Choice | akoya_firstchoice |
Boolean | Top-priority ranking on a ranked application. |
| Is Going to Attend | akoya_isgoingtoattend |
Boolean | Enrollment confirmation. |
| International Student | akoya_internationalstudent |
Boolean | Non-US citizenship. |
| Conditions | akoya_conditions |
String (100) | Award condition summary. |
Scholarship-specific¶
| Display name | Logical name | Type |
|---|---|---|
| High School GPA | akoya_highschoolGPA |
Decimal |
| College GPA | akoya_collegegpa2 |
Decimal |
| College Type | akoya_collegetype |
Choice |
| College Year | akoya_collegeyear |
Choice |
| Class Rank | akoya_classrank |
Integer |
| Class Size | akoya_classsize |
Integer |
| Class Rank Score | akoya_classrankscore |
Decimal |
| ACT | akoya_act |
Integer |
| Evaluation Score | akoya_evaluationscore |
Integer |
| Honor | akoya_honor |
String (100) |
| Honor Society | akoya_honorsociety |
String (100) |
| Grades Included in GPA | akoya_gradesincludedgpa |
String (100) |
Duplicate GPA columns
The entity has both akoya_collegegpa (integer, legacy) and akoya_collegegpa2 (decimal, current). Prefer akoya_collegegpa2 for new integrations. Same pattern exists for akoya_hsgpa (int, legacy) vs. akoya_highschoolGPA (decimal).
Narrative¶
| Display name | Logical name | Max length |
|---|---|---|
| Activities | akoya_activities |
2000 |
| Employment History | akoya_employmenthistory |
2000 |
| Collaboration | akoya_collaboration |
4000 |
| DEI Training | akoya_deitraining |
4000 |
| Board Summary Notes | akoya_boardsummarynotes |
100 |
| Comments | akoya_comments |
2000 |
Demographic multiselects¶
The following are multiselect picklists referencing global option sets. Values are not inline in this entity and will be rendered on the Global option sets page once the generator is wired up.
akoya_age,akoya_disability,akoya_economic,akoya_ethnicity,akoya_gender,akoya_hispaniclatino,akoya_race
Demographic fields are extensible
Values in demographic option sets may be added over time. Partners should query the live option set definitions rather than hard-coding values, to avoid breaking when a new option ships.
Lookups — quick reference¶
| Logical name | Navigation property | Target | Purpose |
|---|---|---|---|
akoya_applicantid |
akoya_ApplicantId |
contact |
Required. Applicant / recipient. |
akoya_college |
akoya_College |
account |
Educational institution (organization account). |
akoya_concept |
akoya_Concept |
akoya_concept |
Funding program / concept record. |
akoya_grantnameid |
akoya_GrantNameId |
(grant program) | Grant program definition. |
akoya_budgetfy |
akoya_BudgetFY |
(budget fiscal year) | Fiscal year budget record. |
akoya_budgetlineitem |
akoya_BudgetLineItem |
(budget line) | Budget detail. |
akoya_goanumberid |
akoya_GoaNumberId |
(external portal) | GOapply portal reference. |
akoya_goreviewer |
akoya_GoReviewer |
systemuser |
Portal reviewer. |
akoya_letterofrecid |
akoya_LetterOfRecId |
(letter of rec) | Reference letter record. |
External integration columns¶
| Logical name | Purpose |
|---|---|
akoya_goanumberid |
GOapply portal ID. |
akoya_goerrormessage |
Sync error message from external portal. |
akoya_goreviewer |
Portal reviewer user. |
Relationships¶
One-to-Many (child records)¶
| Related entity | Role |
|---|---|
akoya_requestpayment |
Payment schedule lines and requirement records for this request. |
akoya_proposal |
Proposals submitted in response to this request. |
Many-to-One¶
| Target | Attribute |
|---|---|
contact |
akoya_applicantid (required) |
account |
akoya_college |
akoya_concept |
akoya_concept |
Supported messages¶
| Message | Supported |
|---|---|
| Create | ✓ |
| Retrieve | ✓ |
| RetrieveMultiple | ✓ |
| Update | ✓ |
| Delete | ✓ |
| Upsert | — (no alternate keys; use GET then PATCH) |
Privileges¶
| Privilege | Purpose |
|---|---|
prvReadakoya_request |
Read request records |
prvCreateakoya_request |
Create request records |
prvWriteakoya_request |
Update request records |
prvAppendToakoya_request |
Associate child records (payments, requirements) |
Examples¶
Conventions
Examples assume ORG (env URL), access_token (valid bearer), headers (standard Dataverse headers dict), and service (a ServiceClient instance). See Authentication.
Open requests awaiting decision¶
GET {org}/api/data/v9.2/akoya_requests?
$select=akoya_applicationid,akoya_grantname,akoya_datereceived,akoya_granttype&
$filter=statecode eq 0 and akoya_decisiondate eq null&
$expand=akoya_ApplicantId($select=fullname,emailaddress1)&
$orderby=akoya_datereceived asc
Accept: application/json
OData-Version: 4.0
OData-MaxVersion: 4.0
curl "https://{org}.crm.dynamics.com/api/data/v9.2/akoya_requests?\$select=akoya_applicationid,akoya_grantname,akoya_datereceived,akoya_granttype&\$filter=statecode%20eq%200%20and%20akoya_decisiondate%20eq%20null&\$expand=akoya_ApplicantId(\$select=fullname,emailaddress1)&\$orderby=akoya_datereceived%20asc" \
-H "Authorization: Bearer $ACCESS_TOKEN" \
-H "Accept: application/json" \
-H "OData-Version: 4.0" \
-H "OData-MaxVersion: 4.0"
r = requests.get(
f"{ORG}/api/data/v9.2/akoya_requests",
params={
"$select": "akoya_applicationid,akoya_grantname,akoya_datereceived,akoya_granttype",
"$filter": "statecode eq 0 and akoya_decisiondate eq null",
"$expand": "akoya_ApplicantId($select=fullname,emailaddress1)",
"$orderby": "akoya_datereceived asc",
},
headers=headers,
)
requests_open = r.json()["value"]
var query = new QueryExpression("akoya_request") {
ColumnSet = new ColumnSet("akoya_applicationid", "akoya_grantname", "akoya_datereceived", "akoya_granttype"),
Criteria = {
Conditions = {
new ConditionExpression("statecode", ConditionOperator.Equal, 0),
new ConditionExpression("akoya_decisiondate", ConditionOperator.Null)
}
},
Orders = { new OrderExpression("akoya_datereceived", OrderType.Ascending) }
};
var openRequests = service.RetrieveMultiple(query);
Approved awards with payment schedules¶
curl "https://{org}.crm.dynamics.com/api/data/v9.2/akoya_requests?\$select=akoya_applicationid,akoya_grantname,akoya_amendment,akoya_balance,akoya_begindate,akoya_enddate&\$filter=statecode%20eq%200%20and%20akoya_decisiondate%20ne%20null%20and%20akoya_balance%20gt%200" \
-H "Authorization: Bearer $ACCESS_TOKEN" \
-H "Accept: application/json" \
-H "OData-Version: 4.0" \
-H "OData-MaxVersion: 4.0"
r = requests.get(
f"{ORG}/api/data/v9.2/akoya_requests",
params={
"$select": "akoya_applicationid,akoya_grantname,akoya_amendment,akoya_balance,akoya_begindate,akoya_enddate",
"$filter": "statecode eq 0 and akoya_decisiondate ne null and akoya_balance gt 0",
},
headers=headers,
)
awards = r.json()["value"]
var query = new QueryExpression("akoya_request") {
ColumnSet = new ColumnSet("akoya_applicationid", "akoya_grantname", "akoya_amendment", "akoya_balance", "akoya_begindate", "akoya_enddate"),
Criteria = {
Conditions = {
new ConditionExpression("statecode", ConditionOperator.Equal, 0),
new ConditionExpression("akoya_decisiondate", ConditionOperator.NotNull),
new ConditionExpression("akoya_balance", ConditionOperator.GreaterThan, 0)
}
}
};
var awards = service.RetrieveMultiple(query);
Change history¶
Schema extracted from the Akoyanet solution XML on 2026-04-24. Global option set values (akoya_granttype, akoya_denialreason, demographic sets) and the full 100+ attribute roster will be populated by the Phase 2 metadata generator.