Skip to content
Get in touch

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
iduuidYesThe competition’s unique identifier.
opportunityIduuidYesThe opportunity id for the competition.
titlestringYesThe title of the competition.
descriptionstringNoThe description of the competition.
instructionsstringNoThe instructions for the competition.
statusCompetitionStatusYesThe status of the competition.
keyDatesCompetitionTimelineYesThe key dates in the competition timeline.
formsCompetitionFormsYesThe forms for the competition.
customFieldsRecord<CustomField>NoThe custom fields for the competition.
createdAtutcDateTimeYesThe competition’s creation date.
lastModifiedAtutcDateTimeYesThe competition’s last modified date.

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"
}

The status of the competition.

PropertyTypeRequiredDescription
valueCompetitionStatusOptionsYesThe status value.
customValuestringNoCustom status value when value is “custom”.
descriptionstringNoDescription of the status.

A JSON example of this model.

{
"value": "custom",
"customValue": "canceled",
"description": "Competition has been canceled"
}

Enumeration of possible competition status values.

ValueDescription
openThe competition is open for applications
closedThe competition is closed for applications
customThe competition is in a custom status

A JSON example of this model.

"open"

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

PropertyTypeRequiredDescription
formsRecord<Form>YesThe forms for the competition.
validationRecord<unknown>YesThe validation rules for the competition forms.

A JSON example of this model.

{
"forms": {
"formA": {},
"formB": {}
},
"validation": {
"required": ["formA"]
}
}

The key dates in the competition timeline.

PropertyTypeRequiredDescription
openDateEventYesThe start date of the competition.
closeDateEventYesThe end date of the competition.
otherDatesRecord<Event>NoAdditional dates in the competition timeline.

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"
}
}
}