Endatix Platform REST API (0.1.1)
Download OpenAPI specification:Download
The Endatix Platform is an open-source .NET library for data collection and management. This product is actively developed, and some API design characteristics may evolve. For more information, visit Endatix Documentation.
Create a new submission
Creates a new form submission
path Parameters
formId required | integer <int64> The ID of the form for which the submission is made. |
Request Body schema: application/jsonrequired
isComplete | boolean or null Boolean flag to indicate if a submission is complete. Optional |
currentPage | integer or null <int32> Current page if the form has multiple pages. Optional |
jsonData required | string >= 2 characters Stringified form submission data |
metadata | string or null Stringified metadata related to the form submission |
Responses
Request samples
- Payload
{- "isComplete": true,
- "currentPage": 0,
- "jsonData": "string",
- "metadata": "string"
}
Response samples
- 201
- 400
{- "id": "string",
- "isComplete": true,
- "jsonData": "string",
- "formId": "string",
- "formDefinitionId": "string",
- "currentPage": 0,
- "metadata": "string",
- "token": "string",
- "completedAt": "2019-08-24T14:15:22Z",
- "createdAt": "2019-08-24T14:15:22Z",
- "modifiedAt": "2019-08-24T14:15:22Z",
- "status": "string"
}
Get a list of Submissions for a given form
Returns all submissions for a form given formId. Includes all Form Definitions as well as complete and non-complete responses
Authorizations:
path Parameters
formId required | integer <int64> The ID of the form. |
query Parameters
page | integer or null <int32> The number of the page |
pageSize | integer or null <int32> The number of items to take. |
filter | Array of strings or null The filter expressions |
Responses
Response samples
- 200
- 400
[- {
- "id": 0,
- "isComplete": true,
- "jsonData": {
- "property1": null,
- "property2": null
}, - "metadata": "string",
- "formId": 0,
- "formDefinitionId": 0,
- "currentPage": 0,
- "completedAt": "2019-08-24T14:15:22Z",
- "createdAt": "2019-08-24T14:15:22Z",
- "status": "string"
}
]
Get a single submission
Gets a single submission based of its Id and its respective formId
Authorizations:
path Parameters
formId required | integer <int64> The ID of the form. |
submissionId required | integer <int64> The ID of the form submission. |
Responses
Response samples
- 200
- 400
{- "id": "string",
- "isComplete": true,
- "jsonData": "string",
- "formId": "string",
- "formDefinitionId": "string",
- "currentPage": 0,
- "metadata": "string",
- "token": "string",
- "completedAt": "2019-08-24T14:15:22Z",
- "createdAt": "2019-08-24T14:15:22Z",
- "modifiedAt": "2019-08-24T14:15:22Z",
- "status": "string",
- "formDefinition": {
- "id": "string",
- "isDraft": true,
- "jsonData": "string",
- "formId": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "modifiedAt": "2019-08-24T14:15:22Z"
}
}
Update a form submission
Updates a form submission for a given form.
Authorizations:
path Parameters
formId required | integer <int64> The ID of the form for which the submission is made. |
submissionId required | integer <int64> The ID the submission that will be updated |
Request Body schema: application/jsonrequired
jsonData | string or null >= 2 characters Stringified form submission data |
isComplete | boolean or null Boolean flag to mark the form completion status |
currentPage | integer or null <int32> > 0 The current page of the form |
metadata | string or null Stringified metadata related to the form submission |
Responses
Request samples
- Payload
{- "jsonData": "string",
- "isComplete": true,
- "currentPage": 0,
- "metadata": "string"
}
Response samples
- 200
- 400
{- "id": "string",
- "isComplete": true,
- "jsonData": "string",
- "formId": "string",
- "formDefinitionId": "string",
- "currentPage": 0,
- "metadata": "string",
- "token": "string",
- "completedAt": "2019-08-24T14:15:22Z",
- "createdAt": "2019-08-24T14:15:22Z",
- "modifiedAt": "2019-08-24T14:15:22Z",
- "status": "string"
}
Update a form submission
Updates a form submission for a given form.
Authorizations:
path Parameters
formId required | integer <int64> The ID of the form for which the submission is made. |
submissionId required | integer <int64> The ID the submission that will be updated |
Request Body schema: application/jsonrequired
jsonData required | string >= 2 characters Stringified form submission data |
isComplete | boolean or null Boolean flag to mark the form completion status |
currentPage | integer or null <int32> > 0 The current page of the form |
metadata | string or null Stringified metadata related to the form submission |
Responses
Request samples
- Payload
{- "jsonData": "string",
- "isComplete": true,
- "currentPage": 0,
- "metadata": "string"
}
Response samples
- 200
- 400
{- "id": "string",
- "isComplete": true,
- "jsonData": "string",
- "formId": "string",
- "formDefinitionId": "string",
- "currentPage": 0,
- "metadata": "string",
- "token": "string",
- "completedAt": "2019-08-24T14:15:22Z",
- "createdAt": "2019-08-24T14:15:22Z",
- "modifiedAt": "2019-08-24T14:15:22Z",
- "status": "string"
}
Get a single submission by token
Gets a single submission based on its token and its respective formId
path Parameters
formId required | integer <int64> The ID of the form. |
submissionToken required | string The token of the form submission. |
Responses
Response samples
- 200
- 400
{- "id": "string",
- "isComplete": true,
- "jsonData": "string",
- "formId": "string",
- "formDefinitionId": "string",
- "currentPage": 0,
- "metadata": "string",
- "token": "string",
- "completedAt": "2019-08-24T14:15:22Z",
- "createdAt": "2019-08-24T14:15:22Z",
- "modifiedAt": "2019-08-24T14:15:22Z",
- "status": "string"
}
Update a form submission by token
Updates a form submission for a given form by token.
path Parameters
formId required | integer <int64> The ID of the form for which the submission is made. |
submissionToken required | string The token of the submission that will be updated |
Request Body schema: application/jsonrequired
jsonData | string or null >= 2 characters Stringified form submission data |
isComplete | boolean or null Boolean flag to mark the form completion status |
currentPage | integer or null <int32> >= 0 The current page of the form |
metadata | string or null Stringified metadata related to the form submission |
Responses
Request samples
- Payload
{- "jsonData": "string",
- "isComplete": true,
- "currentPage": 0,
- "metadata": "string"
}
Response samples
- 200
- 400
{- "id": "string",
- "isComplete": true,
- "jsonData": "string",
- "formId": "string",
- "formDefinitionId": "string",
- "currentPage": 0,
- "metadata": "string",
- "token": "string",
- "completedAt": "2019-08-24T14:15:22Z",
- "createdAt": "2019-08-24T14:15:22Z",
- "modifiedAt": "2019-08-24T14:15:22Z",
- "status": "string"
}
Update submission status
Updates the status of a form submission.
Authorizations:
path Parameters
formId required | integer <int64> The ID of the form. |
submissionId required | integer <int64> The ID of the submission to update. |
Request Body schema: application/jsonrequired
status required | string [ 0 .. 16 ] characters The status of the submission. |
Responses
Request samples
- Payload
{- "status": "string"
}
Response samples
- 200
- 400
{- "submissionId": 0,
- "status": "string"
}
Create a new form
Creates a new form and an active form definition for it.
Authorizations:
Request Body schema: application/jsonrequired
name required | string [ 2 .. 100 ] characters The name of the form. |
description | string or null The description of the form. |
isEnabled required | boolean non-empty Indicates if the form is enabled. |
formDefinitionJsonData required | string >= 2 characters The JSON data of the active form definition. |
Responses
Request samples
- Payload
{- "name": "string",
- "description": "string",
- "isEnabled": true,
- "formDefinitionJsonData": "string"
}
Response samples
- 201
- 400
{- "id": "string",
- "name": "string",
- "description": "string",
- "isEnabled": true,
- "createdAt": "2019-08-24T14:15:22Z",
- "modifiedAt": "2019-08-24T14:15:22Z",
- "submissionsCount": 0
}
List forms
Lists all forms with optional pagination.
Authorizations:
query Parameters
page | integer or null <int32> The number of the page |
pageSize | integer or null <int32> The number of items to take. |
Responses
Response samples
- 200
- 400
[- {
- "id": "string",
- "name": "string",
- "description": "string",
- "isEnabled": true,
- "createdAt": "2019-08-24T14:15:22Z",
- "modifiedAt": "2019-08-24T14:15:22Z",
- "submissionsCount": 0
}
]
Get a form by ID
Gets a form by its ID.
Authorizations:
path Parameters
formId required | integer <int64> The ID of the form. |
Responses
Response samples
- 200
- 400
{- "id": "string",
- "name": "string",
- "description": "string",
- "isEnabled": true,
- "createdAt": "2019-08-24T14:15:22Z",
- "modifiedAt": "2019-08-24T14:15:22Z",
- "submissionsCount": 0
}
Partially update a form
Partially updates a form.
Authorizations:
path Parameters
formId required | integer <int64> The ID of the form. |
Request Body schema: application/jsonrequired
name | string or null The name of the form. |
description | string or null The description of the form. |
isEnabled | boolean or null Indicates if the form is enabled. |
Responses
Request samples
- Payload
{- "name": "string",
- "description": "string",
- "isEnabled": true
}
Response samples
- 200
- 400
{- "id": "string",
- "name": "string",
- "description": "string",
- "isEnabled": true,
- "createdAt": "2019-08-24T14:15:22Z",
- "modifiedAt": "2019-08-24T14:15:22Z",
- "submissionsCount": 0
}
Update a form
Updates a form.
Authorizations:
path Parameters
formId required | integer <int64> The ID of the form. |
Request Body schema: application/jsonrequired
name required | string [ 2 .. 100 ] characters The name of the form. |
description | string or null The description of the form. |
isEnabled required | boolean non-empty Indicates if the form is enabled. |
Responses
Request samples
- Payload
{- "name": "string",
- "description": "string",
- "isEnabled": true
}
Response samples
- 200
- 400
{- "id": "string",
- "name": "string",
- "description": "string",
- "isEnabled": true,
- "createdAt": "2019-08-24T14:15:22Z",
- "modifiedAt": "2019-08-24T14:15:22Z",
- "submissionsCount": 0
}
Create a new form definition
Creates a new form definition for a given form.
Authorizations:
path Parameters
formId required | integer <int64> The ID of the form. |
Request Body schema: application/jsonrequired
isDraft required | boolean non-empty Indicates if the form definition is a draft. |
jsonData required | string >= 2 characters The JSON data of the form definition. |
Responses
Request samples
- Payload
{- "isDraft": true,
- "jsonData": "string"
}
Response samples
- 201
- 400
{- "id": "string",
- "isDraft": true,
- "jsonData": "string",
- "formId": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "modifiedAt": "2019-08-24T14:15:22Z"
}
List form definitions
Lists all form definitions for a given form with optional pagination.
Authorizations:
path Parameters
formId required | integer <int64> The ID of the form. |
query Parameters
page | integer or null <int32> The number of the page |
pageSize | integer or null <int32> The number of items to take. |
Responses
Response samples
- 200
- 400
[- {
- "id": "string",
- "isDraft": true,
- "jsonData": "string",
- "formId": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "modifiedAt": "2019-08-24T14:15:22Z"
}
]
Get the active form definition
Gets the active form definition for a given form.
path Parameters
formId required | integer <int64> The ID of the form. |
Responses
Response samples
- 200
- 400
- 404
{- "id": "string",
- "isDraft": true,
- "jsonData": "string",
- "formId": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "modifiedAt": "2019-08-24T14:15:22Z"
}
Partially update the active form definition
Partially updates the active form definition for a given form.
Authorizations:
path Parameters
formId required | integer <int64> The ID of the form. |
Request Body schema: application/jsonrequired
isDraft | boolean or null Indicates if the form definition is a draft. |
jsonData | string or null The JSON data of the form definition. |
Responses
Request samples
- Payload
{- "isDraft": true,
- "jsonData": "string"
}
Response samples
- 200
- 400
{- "id": "string",
- "isDraft": true,
- "jsonData": "string",
- "formId": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "modifiedAt": "2019-08-24T14:15:22Z"
}
Update the active form definition
Updates the active form definition for a given form.
Authorizations:
path Parameters
formId required | integer <int64> The ID of the form. |
Request Body schema: application/jsonrequired
isDraft required | boolean non-empty Indicates if the form definition is a draft. |
jsonData required | string non-empty The JSON data of the form definition. |
Responses
Request samples
- Payload
{- "isDraft": true,
- "jsonData": "string"
}
Response samples
- 200
- 400
{- "id": "string",
- "isDraft": true,
- "jsonData": "string",
- "formId": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "modifiedAt": "2019-08-24T14:15:22Z"
}
Get a form definition by ID
Gets a form definition by its ID for a given form.
Authorizations:
path Parameters
formId required | integer <int64> The ID of the form. |
definitionId required | integer <int64> The ID of the form definition. |
Responses
Response samples
- 200
- 400
{- "id": "string",
- "isDraft": true,
- "jsonData": "string",
- "formId": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "modifiedAt": "2019-08-24T14:15:22Z"
}
Partially update a form definition
Partially updates a form definition for a given form.
Authorizations:
path Parameters
formId required | integer <int64> The ID of the form. |
definitionId required | integer <int64> The ID of the form definition. |
Request Body schema: application/jsonrequired
isDraft | boolean or null Indicates if the form definition is a draft. |
jsonData | string or null The JSON data of the form definition. |
Responses
Request samples
- Payload
{- "isDraft": true,
- "jsonData": "string"
}
Response samples
- 200
- 400
{- "id": "string",
- "isDraft": true,
- "jsonData": "string",
- "formId": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "modifiedAt": "2019-08-24T14:15:22Z"
}
Update a form definition
Updates a form definition for a given form.
Authorizations:
path Parameters
formId required | integer <int64> The ID of the form. |
definitionId required | integer <int64> The ID of the form definition. |
Request Body schema: application/jsonrequired
isDraft required | boolean non-empty Indicates if the form definition is a draft. |
jsonData required | string non-empty The JSON data of the form definition. |
Responses
Request samples
- Payload
{- "isDraft": true,
- "jsonData": "string"
}
Response samples
- 200
- 400
{- "id": "string",
- "isDraft": true,
- "jsonData": "string",
- "formId": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "modifiedAt": "2019-08-24T14:15:22Z"
}
Changes a user's password
Allows an authenticated user to change their password.
Authorizations:
Request Body schema: application/jsonrequired
currentPassword required | string non-empty The user's current password |
newPassword required | string non-empty The new password to set |
confirmPassword required | string non-empty The new password to set |
Responses
Request samples
- Payload
{- "currentPassword": "string",
- "newPassword": "string",
- "confirmPassword": "string"
}
Response samples
- 200
- 400
{- "message": "string"
}
Log in
Authenticates a user based on valid credentials and returns JWT token and refresh token
Request Body schema: application/jsonrequired
email required | string <email> non-empty ^[^@]+@[^@]+$ The Email of the user. Must be a valid email address |
password required | string >= 8 characters The Password of the account |
Responses
Request samples
- Payload
{- "email": "user@example.com",
- "password": "Password123!"
}
Response samples
- 200
- 400
{- "email": "string",
- "accessToken": "string",
- "refreshToken": "string"
}
Refresh the access token
Generates a new access token using a valid refresh token.
Request Body schema: application/jsonrequired
refreshToken required | string non-empty The refresh token used to obtain a new access token. |
Responses
Request samples
- Payload
{- "refreshToken": "example-refresh-token"
}
Response samples
- 200
- 400
{- "accessToken": "string",
- "refreshToken": "string"
}
Register a new user
Creates a new user account in the Endatix application using the provided email and password.
Authorizations:
Request Body schema: application/jsonrequired
email required | string <email> non-empty ^[^@]+@[^@]+$ The email address of the user. |
password | string The password chosen by the user. |
confirmPassword required | string non-empty The confirmation of the password chosen by the user. |
Responses
Request samples
- Payload
{- "email": "user@example.com",
- "password": "Password123!",
- "confirmPassword": "Password123!"
}
Response samples
- 200
- 400
{- "success": true,
- "message": "string"
}