Application
ApplicationBase
Section titled “ApplicationBase”Base model for an application to a funding opportunity.
Property | Type | Required | Description |
---|---|---|---|
id | uuid | Yes | The application’s unique identifier |
status | AppStatus | No | The application’s status |
dateSubmitted | isoDate | No | The application’s date of submission |
organization | OrganizationBase | No | The organization that is applying for the grant |
pointOfContact | PersonBase | No | The person who is applying for the grant |
proposal | AppProposal | No | The application’s proposal for funding |
opportunity | AppOpportunity | No | The opportunity being applied to |
customFields | Record<CustomField> | No | The application’s custom fields |
Formats
Section titled “Formats”A JSON example of this model is:
{ "status": { "value": "submitted", "description": "Application has been submitted." }, "dateSubmitted": "2024-01-01", "organization": { // Organization details would be here }, "pointOfContact": { // Person details would be here }, "proposal": { "title": "Example Project", "description": "Example project to serve community needs.", "amountRequested": { "amount": "100000", "currency": "USD" }, "periodStartDate": "2024-01-01", "periodEndDate": "2024-12-31" }, "opportunity": { "id": "083b4567-e89d-42c8-a439-6c1234567890", "title": "Example Opportunity" }}
The JSON schema for this model is:
$schema: https://json-schema.org/draft/2020-12/schema$id: ApplicationBase.yamltype: objectproperties: id: $ref: uuid.yaml description: The application's unique identifier. status: $ref: AppStatus.yaml description: The application's status. dateSubmitted: $ref: isoDate.yaml description: The application's date of submission. organization: $ref: OrganizationBase.yaml description: The organization that is applying for the grant. pointOfContact: $ref: PersonBase.yaml description: The person who is applying for the grant. proposal: $ref: AppProposal.yaml description: The application's proposal for funding. opportunity: $ref: AppOpportunity.yaml description: The opportunity being applied to. customFields: $ref: "#/$defs/RecordCustomField" description: The application's custom fields.description: The base model for an application.required: - id$defs: RecordCustomField: type: object properties: {} unevaluatedProperties: $ref: CustomField.yaml
The TypeSpec code for this model is:
/** The base model for an application. */model ApplicationBase { /** The application's unique identifier. */ id: Types.uuid;
/** The application's status. */ status?: AppStatus;
/** The application's date of submission. */ dateSubmitted?: Types.isoDate;
/** The organization that is applying for the grant. */ organization?: OrganizationBase;
/** The person who is applying for the grant. */ pointOfContact?: PersonBase;
/** The application's proposal for funding. */ proposal?: AppProposal;
/** The opportunity being applied to. */ opportunity?: AppOpportunity;
/** The application's custom fields. */ customFields?: Record<Fields.CustomField>;}
AppStatus
Section titled “AppStatus”The status of an application.
Property | Type | Required | Description |
---|---|---|---|
value | AppStatusOptions | Yes | The status of the application. |
customValue | string | No | A custom value for the status. |
description | string | No | A description of the status. |
Formats
Section titled “Formats”A JSON example of this model is:
{ "value": "submitted", "description": "Application has been submitted."}
The JSON schema for this model is:
$schema: https://json-schema.org/draft/2020-12/schema$id: AppStatus.yamltype: objectproperties: value: type: string enum: - submitted - approved - rejected - custom
The TypeSpec code for this model is:
/** The status of an application. */model AppStatus { /** The status of the application. */ value: AppStatusOptions;
/** A custom value for the status. */ customValue?: string;
/** A description of the status. */ description?: string;}
AppStatusOptions
Section titled “AppStatusOptions”The set of values accepted for application status.
Value | Description |
---|---|
submitted | The application has been submitted. |
approved | The application has been approved. |
rejected | The application has been rejected. |
custom | A custom status value is provided. |
Formats
Section titled “Formats”A JSON example of this model is:
"submitted"
The JSON schema for this model is:
$schema: https://json-schema.org/draft/2020-12/schema$id: AppStatusOptions.yamltype: stringenum: - submitted - approved - rejected - custom
The TypeSpec code for this model is:
/** The set of values accepted for application status. */enum AppStatusOptions { /** The application has been submitted. */ submitted;
/** The application has been approved. */ approved;
/** The application has been rejected. */ rejected;
/** A custom status value is provided. */ custom;}
AppProposal
Section titled “AppProposal”The proposal for funding an application.
Property | Type | Required | Description |
---|---|---|---|
title | string | No | The title of the proposal. |
description | string | No | The description of the proposal. |
amountRequested | Money | No | The amount of money requested. |
periodStartDate | isoDate | No | The start date of the funding period. |
periodEndDate | isoDate | No | The end date of the funding period. |
customFields | Record<CustomField> | No | The proposal’s custom fields. |
Formats
Section titled “Formats”A JSON example of this model is:
{ "title": "Example Project", "description": "Example project to serve community needs.", "amountRequested": { "amount": "100000", "currency": "USD" }, "periodStartDate": "2024-01-01", "periodEndDate": "2024-12-31"}
The JSON schema for this model is:
$schema: https://json-schema.org/draft/2020-12/schema$id: AppProposal.yamltype: objectproperties: title: type: string description: The title of the proposal. description: type: string description: The description of the proposal. amountRequested: $ref: Money.yaml description: The amount of money requested. periodStartDate: $ref: isoDate.yaml description: The start date of the funding period. periodEndDate: $ref: isoDate.yaml description: The end date of the funding period. customFields: $ref: "#/$defs/RecordCustomField" description: The proposal's custom fields.description: The proposal for funding an application.required: - id$defs: RecordCustomField: type: object properties: {} unevaluatedProperties: $ref: CustomField.yaml
The TypeSpec code for this model is:
/** The proposal for funding an application. */model AppProposal { /** The title of the proposal. */ title?: string;
/** The description of the proposal. */ description?: string;
/** The amount of money requested. */ amountRequested?: Money;
/** The start date of the funding period. */ periodStartDate?: Types.isoDate;
/** The end date of the funding period. */ periodEndDate?: Types.isoDate;
/** The proposal's custom fields. */ customFields?: Record<Fields.CustomField>;}
AppOpportunity
Section titled “AppOpportunity”The opportunity being applied to.
Property | Type | Required | Description |
---|---|---|---|
id | uuid | Yes | The opportunity’s unique identifier. |
title | string | No | The title of the opportunity. |
customFields | Record<CustomField> | No | The opportunity’s custom fields. |
Formats
Section titled “Formats”A JSON example of this model is:
{ "id": "083b4567-e89d-42c8-a439-6c1234567890", "title": "Example Opportunity"}
The JSON schema for this model is:
$schema: https://json-schema.org/draft/2020-12/schema$id: AppOpportunity.yamltype: objectproperties: id: $ref: uuid.yaml description: The opportunity's unique identifier. title: type: string description: The title of the opportunity. customFields: $ref: "#/$defs/RecordCustomField" description: The opportunity's custom fields.description: The opportunity being applied to.required: - id$defs: RecordCustomField: type: object properties: {} unevaluatedProperties: $ref: CustomField.yaml
The TypeSpec code for this model is:
/** The opportunity being applied to. */model AppOpportunity { /** The opportunity's unique identifier. */ id: Types.uuid;
/** The title of the opportunity. */ title?: string;
/** The opportunity's custom fields. */ customFields?: Record<Fields.CustomField>;}