Applications
Applications are the submissions candidates make in response to your forms. Each application includes the candidate's answers to form fields, such as attachments, responses, and other submitted data. On this page, we'll dive into the different application endpoints you can use to manage applications programmatically. We'll look at how to query, create, update, and delete applications.
The application model
The application model contains all the data submitted by a candidate in response to a form, such as their answers to questions, uploaded documents, and status.
Properties
- Name
id
- Type
- string
- Description
Unique identifier for the application.
- Name
form_id
- Type
- string
- Description
The form to which the application belongs.
- Name
candidate_data
- Type
- object
- Description
The data submitted by the candidate, including their responses and uploaded documents.
- Name
status
- Type
- string
- Description
The current status of the application. Possible values are: "pending", "processing", "finished", "error".
- Name
created_at
- Type
- timestamp
- Description
Timestamp of when the application was submitted.
List all applications
This endpoint allows you to retrieve a paginated list of all submitted applications. By default, a maximum of ten applications are shown per page.
Optional query parameters
- Name
jobId
- Type
- string
- Description
The ID of the job for which applications are being retrieved.
- Name
candidateId
- Type
- string
- Description
The ID of the candidate whose applications are being retrieved.
- Name
limit
- Type
- integer
- Description
Limit the number of applications returned (default is 10).
- Name
offset
- Type
- integer
- Description
The offset for pagination (default is 0).
- Name
status
- Type
- string
- Description
Filter applications by their status. Possible values are: "pending", "processing", "finished", "error".
- Name
section
- Type
- number
- Description
Filter applications by section.
- Name
agg_created_at
- Type
- string
- Description
Filter applications by creation date.
- Name
agg_modified_at
- Type
- string
- Description
Filter applications by modification date.
Request
curl -G https://api.semantikmatch.com/v1/applications \
-H "Authorization: Bearer {token}" \
-d limit=10
Response
{
"has_more": false,
"data": [
{
"section": 1730327909273,
"agg_id": "9c9d7ce8-d565-4e53-b0a2-cf969ba282c8",
"agg_created_at": "2024-11-27T15:30:04.396Z",
"agg_modified_at": "2024-11-27T15:34:09.746Z",
"agg_candidate_id": "fc4dfa93-aa6c-41a3-a340-5c222958370d",
"agg_job_id": "50b23f9a-1670-48f8-a666-e64011cb43e2",
"status": "finished",
"candidate": {
"agg_id": "fc4dfa93-aa6c-41a3-a340-5c222958370d",
"agg_firstname": "Yamin",
"agg_lastname": "Legzouli",
"email": "user@example.com"
}
}
// ... other applications ...
]
}
Submit an application
This endpoint allows you to submit a new application along with files for a specific job. Applications contain the candidate's data, such as answers to questions and document uploads.
Required attributes
- Name
firstname
- Type
- string
- Description
The first name of the candidate.
- Name
lastname
- Type
- string
- Description
The last name of the candidate.
- Name
email
- Type
- string
- Description
The email address of the candidate.
- Name
jobId
- Type
- string
- Description
The ID of the job for which the application is being submitted.
- Name
files
- Type
- array
- Description
An array of files to be uploaded with the application.
Request
curl -X POST https://api.semantikmatch.com/v1/applications/submit \
-H "Authorization: Bearer {token}" \
-F "firstname=John" \
-F "lastname=Doe" \
-F "email=john.doe@example.com" \
-F "jobId=1" \
-F "files=@/path/to/file1.pdf" \
-F "files=@/path/to/file2.pdf"
Response
{
"firstname": "John",
"lastname": "Doe",
"email": "john.doe@example.com",
"applicationId": "501" // The ID of the created application
}
Retrieve an application
This endpoint allows you to retrieve a specific application by providing its ID. The response includes all the data submitted by the candidate.
Path parameters
- Name
id
- Type
- string
- Description
The ID of the application to retrieve.
Request
curl https://api.semantikmatch.com/v1/applications/501 \
-H "Authorization: Bearer {token}"
Response
{
"agg_id": "501",
"agg_candidate_id": "123",
"agg_job_id": "1",
"status": "finished",
"createdAt": "2023-10-01T12:00:00Z",
"updatedAt": "2023-10-02T12:00:00Z",
"candidate": {
"firstname": "John",
"lastname": "Doe",
"email": "john.doe@example.com"
}
}
Delete an application
This endpoint allows you to delete a specific application by its ID. Once deleted, all the submitted data will be removed.
Path parameters
- Name
id
- Type
- string
- Description
The ID of the application to delete.
Request
curl -X DELETE https://api.semantikmatch.com/v1/applications/501 \
-H "Authorization: Bearer {token}"
Response
{
"message": "Application deleted successfully"
}