Skip to content

Competition

Base model for a competition.

A competition is an application process for a funding opportunity. It often has a distinct application period and set of application forms.

PropertyTypeRequiredDescription
iduuidYesGlobally unique id for the competition
opportunityIduuidYesThe opportunity id for the competition
titlestringYesThe title of the competition
descriptionstringNoThe description of the competition
instructionsstring or array<File>NoThe instructions for the competition
statusCompetitionStatusYesThe status of the competition
keyDatesCompetitionTimelineNoThe key dates in the competition timeline
formsCompetitionFormsYesThe forms for the competition
acceptedApplicantTypesarray<ApplicantType>NoAccepted applicant types for the competition
customFieldsrecord<CustomField>NoThe custom fields for the competition
createdAtutcDateTimeYesThe timestamp (in UTC) at which the record was created.
lastModifiedAtutcDateTimeYesThe timestamp (in UTC) at which the record was last modified.

A JSON example of this model.

{
"id": "b7c1e2f4-8a3d-4e2a-9c5b-1f2e3d4c5b6a",
"opportunityId": "b7c1e2f4-8a3d-4e2a-9c5b-1f2e3d4c5b6b",
"title": "Competition 1",
"description": "Competition 1 description",
"instructions": "Competition 1 instructions",
"status": {
"value": "open",
"customValue": "custom",
"description": "Competition is open for applications"
},
"keyDates": {
"openDate": {
"name": "Open Date",
"eventType": "singleDate",
"date": "2025-01-01"
},
"closeDate": {
"name": "Close Date",
"eventType": "singleDate",
"date": "2025-01-30"
},
"otherDates": {
"reviewPeriod": {
"name": "Application Review Period",
"eventType": "dateRange",
"startDate": "2025-02-01",
"endDate": "2025-02-28"
}
}
},
"forms": {
"forms": {
"formA": {},
"formB": {}
},
"validation": {
"required": ["formA"]
}
},
"createdAt": "2025-01-01T00:00:00Z",
"lastModifiedAt": "2025-01-01T00:00:00Z"
}
VersionChangesSchema
0.2.0
  • Added CompetitionBase model
CompetitionBase.yaml

The status of the competition.

PropertyTypeRequiredDescription
valueCompetitionStatusOptionsYesThe status of the competition, from a predefined set of options
customValuestringNoA custom value for the status
descriptionstringNoA human-readable description of the status

A JSON example of this model.

{
"value": "custom",
"customValue": "canceled",
"description": "Competition has been canceled"
}
VersionChangesSchema
0.2.0
  • Added CompetitionStatus model
CompetitionStatus.yaml

Enumeration of possible competition status values.

ValueDescription
openThe competition is open for applications
closedThe competition is no longer accepting applications
customA custom status

A JSON example of this model.

"open"
VersionChangesSchema
0.2.0
  • Added CompetitionStatusOptions enum
CompetitionStatusOptions.yaml

Set of forms that need to be completed to apply to the competition.

PropertyTypeRequiredDescription
formsrecord<FormBase>YesThe forms for the competition
validationrecordNoThe validation rules for the competition forms

A JSON example of this model.

{
"forms": {
"formA": {},
"formB": {}
},
"validation": {
"required": ["formA"]
}
}
VersionChangesSchema
0.2.0
  • Added CompetitionForms model
CompetitionForms.yaml

The key dates in the competition’s timeline.

PropertyTypeRequiredDescription
openDateEventNoThe start date of the competition
closeDateEventNoThe end date of the competition
otherDatesrecord<Event>NoThe date the competition was created

A JSON example of this model.

{
"openDate": {
"name": "Open Date",
"eventType": "singleDate",
"date": "2025-01-01"
},
"closeDate": {
"name": "Close Date",
"eventType": "singleDate",
"date": "2025-01-30"
},
"otherDates": {
"reviewPeriod": {
"name": "Application Review Period",
"eventType": "dateRange",
"startDate": "2025-02-01",
"endDate": "2025-02-28"
}
}
}
VersionChangesSchema
0.2.0
  • Added CompetitionTimeline model
CompetitionTimeline.yaml