translation state of Applications module

the application module offers an application formular, a list of applications and a detail view of an application. Depending on the users privileges the detail view offers a way to invite or reject an applicant, to rate an application or to forward an application by email.

If the PDF Module is installed, the Application can be downloaded as a PDF document with attachments and social profiles embedded.


You can configure the possible mime-types or the maximum size of attachments by copying the applicationOptions into your config/autoload directory. Remove the “.dist” extention and adjust the values.

$options = array(
      * maximum size in bytes of an uploaded attachment, default 5MB
      'attachmentsMaxSize' => '5000000',

      * allowed Mime-Type of an uploaded Attachment, default images, *.PDF, *.DOC, *.ODT
      'attachmentsMimeType' => array('image','application/pdf', 'application/vnd.oasis.opendocument.text', 'application/msword'),

      * maximum amount of uploaded attachments
      'attachmentsCount' => 5,

      * maximum size in bytes of an uploaded contact photo. default 500kB
      'contactImageMaxSize' => '500000',

      * allowed Mime-Type of an uploaded contact photo
      'contactImageMimeType' => array('image'),

      * allowed Mime-Types, images, plain text, *.PDF, *.DOC, *.ODT
      'allowedMimeTypes' => array('image','text','application/pdf', 'application/vnd.oasis.opendocument.text', 'application/msword'),




you can attach Listeners to the following events

Name   description
EVENT_APPLICATION_POST_CREATE Thrown, after an application was saved in the Database
EVENT_APPLICATION_PRE_DELETE application.pre.delete Thrown, befor an application is removed from the Database
EVENT_APPLICATION_STATUS_CHANGE application.status.change Thrown, befor an application is removed from the Database


It is possible to create an application through a POST request to api/apply passing in the apply id of the job ad as query parameter.

The data must be sent with the content type multipart/form-data

Field Value
contact[first_name] First name
contact[last_name] Last name
contact[birthday] YYYY-mm-dd
contact[image] user image (avatar) (must be an image)
General application data  
summary The cover letter
facts[driving_license] Possible values: 0, 1, yes, no
attachments[] One or multiple files

Every property of an application and its embedded documents can be send using the above mapping stategy. Field name ‘attachments[]’ sends a file as attachment for example.

The response is a json string. The complete application entity is returned.

# On success (HTTP-Code: 200)
    "status": "OK",
    "entity": {
        "resource_id": "Entity/Application",
        "job": "5c5abf660fc61f047c063b28",
        "user": "token:****************",
        "status": null,
        "contact": {
            "birth_day": null,
            "birth_month": null,
            "birth_year": null,
            "email": null,
            "is_email_verified": null,
            "gender": null,
            "first_name": "Firstname",
            "house_number": null,
            "last_name": null,
            "display_name": null,
            "phone": null,
            "postal_code": null,
            "city": null,
            "image": "/file/Applications.Attachment/user-image.png",
            "street": null,
            "country": null
        "summary": null,
        "facts": {},
        "cv": {},
        "attachments": [
        "profiles": {},
        "attributes": {},
        "id": null,
        "date_created": null,
        "date_modified": null

# on Failure
# Either HTTP-Code 400 (No job for the apply id or invalid application data)
# or HTTP-Code 405 (Invalid request method)

{ "status": "Error", "message": "Meaningful error message" }


To try out the API it is best to use an application which is capable of sending post requests with file uploads, such as Postman.


Postman screenshot