Candidate creation and application

114 views
Skip to first unread message

Amir Valdman

unread,
Feb 11, 2021, 2:48:03 AM2/11/21
to CATS API v3

I have searched the forums and the information we are looking for is not to be found.

I have double searched the API documentation and there isn't a clear explanation there as well.

From my understanding a flow of creating an applicant at your API goes through the following process:

  1. Create a candidate - that worked as expected
  2. Upload a resume - needs a client Id for that, we don't have it. The expectation is that the first function will return it as a response, how are we supposed to get it.
  3. Attach candidate to positions (aka application) - we could find the appropriate   function on the API to facilitate that action. Can you kindly direct us?
Thanks,

Amir

Anthony Allan

unread,
Feb 11, 2021, 11:56:28 AM2/11/21
to CATS API v3
If that's the route you wan to take to create a candidate, that works, and step 3 would be creating a pipeline (POST /pipelines).

However, the more direct route would be to submit an application to a portal job (POST /portals/{id}/jobs/{id}). This does all the work of creating a candidate record, attaching an application to that candidate, and then adding that candidate to a joborder pipeline.

Amir Valdman

unread,
Feb 11, 2021, 12:29:16 PM2/11/21
to CATS API v3
Hi Anthony and thank you for the response.
we would love to have a one call for this.+
The only data i don't have is the portal id, where do i get that from?

Amir

Anthony Allan

unread,
Feb 11, 2021, 1:08:22 PM2/11/21
to CATS API v3
You can pull a list of all portals, with their ids, via `GET /portals`

Amir Valdman

unread,
Feb 19, 2021, 11:02:56 AM2/19/21
to CATS API v3
Hi Anthony and thank you once again,

we have made some progress and we are almost about done, but we have 2 questions still hanging:
  1. Job Acquisition – when we are making the call to get the jobs we are getting relative URLs on the response, we wanted to know what will be the base URL for those links as we need to built an URL we can direct candidates to if needed.
    Would that be the base URL: https://cordiaresources.catsone.com/careers?
    Other than that we think we are good on this part.
  2. Candidate Delivery – we are seeing the that on the request “POST /portals/{id}/jobs/{id}” requires us to provide and Id for each fields we need to fill, but there is no filed list for us to reference to see what needs to be passed as a value.
Thanks for the help once again,

Amir Valdman

Anthony Allan

unread,
Feb 19, 2021, 11:31:49 AM2/19/21
to CATS API v3
1) If you query `GET https://api.catsone.com/v3/portals/{id}/jobs`, and then look for `_embedded.jobs[0]._links.job_url`, you will get a full url to the public job on that portal. All relative links you see are purely API links that use the base API url and not something that is public facing.

2) That endpoint accepts application fields. Every job has applications associated with it (`GET /v3/jobs/{id}/applications`). Those applications have fields associated with them (`GET /v3/jobs/applications/{id}`). The field ids for those application fields are what you need to use in the portal submit endpoint.

Amir Valdman

unread,
May 10, 2021, 9:29:24 AM5/10/21
to CATS API v3
Hi there,

So far i have enjoyed working with your API, but in the recent days I'm receiving fails while i try to submit candidates for a certain positions, for example positions Id: 14162483
I get the following response:
{"message":"Validation failed.","errors":[
"First Name is a required field.",
"Last Name is a required field.",
"Email is a required field.",
"Highest Level of Education is a required field.",
"Work Authorization is a required field.",
"Security Clearance is a required field.",
"Upload Resume is a required field."]}

I do provide the same basic data i send for other positions like First name, last name, email....
The 4 additional field mentioned here as a requirement are not familiar to me, any attempt i did to retrieve those field ids so i can pass them on the candidate request has got wrong.
I have tried checking general custom fields and also specific for the job like in this call:
curl -X GET \
-H 'authorization: {My Token}

i get response, but i can't seem to find those fields.
can you please help me understand how i can get those field ids so i can pass them on my requests?

Amir


Reply all
Reply to author
Forward
0 new messages