Store Application Information
After creating an draft application in the step before you can continue adding information to that stub with the help of the application ID you got from there. Please stick to the format of the ApplicationProfileDTO. Please consider that the current state of that DTO replaces the currently stored state of the DTO. To add attachments you can use another endpoint. Besides the DTO you need an user access token to authenticate.
HTTP-Method
POST, PUT
Path
/api/rest/v3/frontend/applications/{applicationId}
Authentification
User Access Token
Path Parameter
applicationId
Query Parameter
-none-
POST Data
ApplicationProfileDTO
Responses
Action | Response | Description |
---|---|---|
success | 204 – no content | |
error | 400 – { “code”: “application_access_error”, “message”: “Invalid application data” } | ApplicationProfileDTO was nut submitted |
error | 400 – { “code”: “application_access_error”, “message”: “Application does not exist” } | No application was found for the provided ID or the applicant does not own it. |
error | 400 – { “code”: “project_location_not_found”, “message”: “Preferredlocations do not belong to project of application with APPLICATION_ID id” } | This error occurs when the preferredLocation does not belong to the associated job (either to the main job location or the additionalLocations of the job) |
authorization error | 401 / 403 | See here and here for details. |
Example call with curl and user access token
1 |
curl -i -H "Authorization: Bearer 31cb2exx-001e-4b59-babc-f0815tdad47d" -H "Content-Type: application/json" -X POST "https://api.softgarden.io/api/rest/v3/frontend/applications/9zzzzf3e-0000-44xx-a590-f123456c7339" -d 'SEE_BELOW' |
POST-Data
The JSON object that is submitted instead of the SEE_BELOW placeholder in the above example. The comments here are just present for explanatory reasons.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 |
{ "firstname":"Joe", "lastname":"Doe", "sex":"1", // Equivalent to salutation 1 = male, 2 = female, 3 = diverse, 0 = n/a "academictitle":"Prof. Dr.", // Resolved catalog value "email":"joe.doe@foo.bar", "locale":"en", // ISO 639-1 language tag "street":"Randomstreet 101", "zip":"66113", "city":"Saarbrücken", "country":"Deutschland", // Resolved catalog value "nationality":"Deutsch", // Resolved catalog value "phone":"+49 17620590145", "dateofbirth":"1905-04-01T00:00:00.000+0000", // Format yyyy-MM-dd'T'HH:mm:ss.SSSZ "coverLetterText" : "This is some coverletter text", "region":"Saarland", "experiences":[ { "company":"Acme Inc.", "industry":"Agrarwirtschaft", // Resolved catalog value "title":"Mitarbeiter im Vertrieb", "status":"", // Not Used "careerLevel":"Berufseinsteiger", // Resolved catalog value "companySize":"1-10 Mitarbeiter", // Resolved catalog value "type":"", // Not used "startDate":"2012-04-01T12:00:00.000+0000", // Format yyyy-MM-dd'T'HH:mm:ss.SSSZ "endDate":"2018-11-01T12:00:00.000+0000", // Format yyyy-MM-dd'T'HH:mm:ss.SSSZ "description":"Some description text" } ], "educations":[ { "startDate": "2000-04-01T12:00:00.000+0000", // Format yyyy-MM-dd'T'HH:mm:ss.SSSZ "endDate":"2008-10-31T12:00:00.000+0000", // Format yyyy-MM-dd'T'HH:mm:ss.SSSZ "university":"ACME College", "field":"Maschinenbau", "degree":"Bachelor", "specialization":"Tiefenpsychologie" } ], "languages":[ { "locale":"de", "skill":"Muttersprache" // Resolved catalog value } ], "answers":[ { "questionId": 815, "answer":"Vielleicht" } ], "imported":"NONE", "preferredJobLocations": [ // store up to 1 preferredJobLocation { // if you want to remove an already existing preferredJobLocation, you can submit an empty list [] "geoLat": "49.2529581", // mandatory field "geoLong": "6.9353122", // mandatory field "geoName": "Vollweidstraße 8, 66115 Saarbrücken, Deutschland", // mandatory field "geoCountry": "Deutschland", // optional field "geoState": "Saarland", // optional field "geoCity": "Saarbrücken", // optional field "geoZip": "66115", // optional field "geoStreet": "Vollweidstraße 8" // optional field } ] } |
Please note that storing more than one preferredLocation is currently not supported. The preferredLocation must belong to the locations of the job and the feature must be enabled, or else storing won’t work.
The fields commented with “Resolved catalog value” have to be filled from catalogs. Please read here how you can get all possible values of a catalog in each language. Please always use the job language or else the storing wont work.
So if you want to make it possible to fill these fields in your application form, you have to provide the applicant the list of possible values and then provide only one value back to the API. If you submit values that are not in the job language, they wont be stored. That’s similar as with the mandatory prescreening questions of a job. You first request all questions from the respective endpoint. If a question has a answer catalog, you present the possible values to the applicant and submit the clear text answer to the API.
In the experiences, educations and languages you may submit lists of catalog values.