Public
Documentation Settings

Forms External API

The Forms API is controlled by two services:

  • Forms Middleware - responsible for capturing form response data, which may contain PII.
  • Forms Management System - responsible for form management (i.e. creating and modifying the structure/layout of a form and its fields) and form response validation.

They each have separate base URLs and API credentials for both stage and production environments.

GETForms

https://feeds.incrowdsports.com/provider/forms-management-system-stage/v1/external/forms

Returns all forms, filtered by query parameters.

Authentication

The request must supply valid API key headers:

  • X-APP-ID
  • X-API-KEY

As of July 2023, the following header is expected by new clients:

  • X-CLIENT-ID

Response

FieldTypeNullableDescription
idstringNForm ID.
titlestringNForm title.
descriptionstringYForm description (if present).
publishFromstringNISO 8601 datetime of when the form was published.
publishTostringYISO 8601 datetime of when the form is publish till. If null, the form never expires.
HEADERS
X-APP-ID

To be configured by InCrowd Sports

X-API-KEY

To be configured by InCrowd Sports

PARAMS
page

0

Zero indexed page offset. Default: 0 [optional]

size

50

Number of results to return per page. Default: 50 [optional]

sort

publishFrom

Field to sort by. Prefix with - to sort in descending order. Default: publishFrom [optional]

query

Search by title, description or form ID. [optional]

publishFrom

2022-01-27T14:01:52.776Z

Filter results to only include forms that were published after the provided ISO 8601 datetime (YYYY-MM-DD'T'HH:mm:ss'Z'). [optional]

publishTo

2022-01-27T14:01:52.776Z

Filter results to only include forms that were published before the provided ISO 8601 datetime (YYYY-MM-DD'T'HH:mm:ss'Z'). [optional]

GETForm By ID

https://feeds.incrowdsports.com/provider/forms-management-system-stage/v1/external/forms/61f2a5d0b629594fcfe63fda

Returns a detailed form view by form ID.

Authentication

The request must supply valid API key headers:

  • X-APP-ID
  • X-API-KEY

As of July 2023, the following header is expected by new clients:

  • X-CLIENT-ID

Response

FieldTypeNullableDescription
idstringNForm ID.
titlestringNForm title.
descriptionstringYForm description (if present).
publishFromstringNISO 8601 datetime of when the form was published.
publishTostringYISO 8601 datetime of when the form is publish till. If null, the form never expires.
versionintegerNCurrent form revision. (starting from one)
createdDetails.datestringNISO 8601 datetime of when the form was created.
lastEdited.datestringNISO 8601 datetime of when the form was last updated.
sections[]Field (see Field)N
Field
FieldTypeNullableDescription
idstringNField ID. Typically a uuidv4, but there is not strict requirement on what type of identifier is used.
typestringNSee 'Types' below.
titlestringNThe title of the field, typically in the form of a question.
descriptionstringYThe description of the field, should elaborate on the label/question.
subtypestringYSee 'Types' below.
deletedbooleanNIf true, the field has been soft-deleted. Soft-deleted fields no longer capture data, but existing responses with soft-deleted fields are preserved.
metadataMetadata (see Metadata)YMetadata relating to data capture.
Metadata
FieldTypeNullableDescription
valueVaries on field type (see Types)Y
validationValidation (see Validation)YCommon validation rules.
conditionsNode (see Node)Y
Validation
FieldTypeNullableDescription
requiredbooleanYIf true, this question requires a response. required is ignored if the question considered optional after evaluating the question's conditions.
minVaries on field type (see Types)Y
maxVaries on field type (see Types)Y
regexPatternstringYRE2 regular expression. See https://github.com/google/re2/wiki/Syntax
typestringYCommon text validation rules that response are asserted against.

Only applies to text, shorttext & longtext question types.
Type validation rules
ValueDescriptionExamples
emailExpects a syntactically valid email address.forms@incrowdsports.com
numberExpects a valid number.

Decimals, positive and negative numbers are valid.

The radix character must be a period.

Thousand separated numbers are not supported.

Leading zeros are not supported.

This validation rule cannot be used in conjuction with min/max validation rules. Use a number field instead.
1234
+1234
-1234
1.234
phoneExpects a phone number in E.164 international format.

See https://developers.omnisend.com/guides/e164-phone-number-formatting
+442031379873
+4420 3137 9873
+44(0)2031379873
Types
Type(s)Subtype(s)Response Data TypeMetadata Value Data TypeDescriptionValidation Rule(s)Validation Data TypeValidation Notes
text, shorttext, longtextstringUsed for free text data capture. The only difference between the types being how they are rendered to fans. As of February 2022, only text is used.min, maxintegerRequire the provided string to be equal, less than or greater than the minimum and maximum values respectively in length.
numberfloat64min, maxintegerRequire the provided number to be equal, less than or greater than the minimum and maximum values respectively.
contentDoes not accept data capture.
momentdatetimestringISO 8601 formatted datetime, date, or time depending on which subtype is used.min, maxstring

ISO 8601 date and time format
Require a date and time string to be equal to or between the minimum and maximum values.
datestring

ISO 8601 date format
Require a date string to be equal to or between the minimum and maximum values.
timestring

ISO 8601 time format
Require a time string to be equal to or between the minimum and maximum values.
choicecheckbox, selectany

The response's data type must be equal to the metadata value's data type.
[]any

An array containing selectable choices. The array's elements must be the same type.
min, maxintegerRequire a minimum or maximum number of selected choices.
radioany

The response's data type must be equal to the metadata value's data type.
[]any

An array containing selectable choices. The array's elements must be the same type.
account_detailemailstringExpects a syntactically valid email address.
first_name, last_namestringmin, maxintegerRequire the provided string to be equal, less than or greater than the minimum and maximum values respectively in length.
Node
FieldTypeNullableDescription
typestringNIndicates the action this node should perform. Possible values:

AND - All child nodes should return true.

OR - At least one of the child nodes should return true.

EVAL - Evaluate this node directly.
keystringY (if type is not equal to EVAL)The ID of the question this node should be evaluated against.
valueanyY (if type is not equal to EVAL)The expected value of the response.
operatorstringY (if type is not equal to EVAL)The comparator opertation to perform between key and value, this can be:

EQUAL
NOT_EQUAL
GREATER_THAN
GREATER_THAN_OR_EQUAL_TO
LESS_THAN
LESS_THAN_OR_EQUAL_TO
IN
NOT_IN
nodes[]NodeY (if type is equal to EVAL)If type is AND or OR, the children to be evaluated.
HEADERS
X-APP-ID

To be configured by InCrowd Sports

X-API-KEY

To be configured by InCrowd Sports

Loading