Use Case Description
This use case allows user to upload a document, one at a time, against a Job Application or against an Applicant.
The following are the recruiting document types that can be uploaded currently:
- Resume
- Attachment
API Usage
|
Method |
URI |
Description |
GitHub Sample Request Payload |
GitHub Sample Response Payload |
|---|---|---|---|---|
| POST |
events/staffing/v1/work-fulfillment/document.upload |
Upload a document. |
Application Scope
The canonical URI corresponding to the Upload Recruiting Document API needs to be added in the Consumer Application Registry (CAR) for the subscription following which a user can access this API and make successful API calls.
The following canonical needs to be added to your CAR application scopes in order to enable this use case:
/staffing/staffingManagement/positionSeekerManagement/documentManagement/document.upload
Request Header Parameters
|
Key |
Value |
|---|---|
| Content-Type | multipart/mixed |
For more information on how to use the headers and how to pass the request payload along with the file you want to upload, import the Postman Collection provided in the Postman Collection section in Chapter 1 - About this API.
After importing the collection into Postman, go to Body > form Data.
Supported Actors
|
Request Parameter roleCode Value |
Usage |
|---|---|
| Practitioner | Uploads a document. A system user is considered a Practitioner. |
Data Dictionary
On the ADP Recruiting Management application you can find the documents uploaded through this API by navigating any Candidate > Candidate Gear (icon next to candidate's name) > Documents.
|
Schema Location |
Field Name in ADP Recruiting Management |
Description |
Supported codeValues |
|---|---|---|---|
| /events/data/eventContext/associatedObject/objectID/idValue |
Not Displayed
|
The job application item ID, for which you want to upload the document. |
This can be obtained by calling the /staffing/v2/job-applications" API. For example, a numeric ID such as 6602284584. |
| /events/data/eventContext/associatedObject/objectID/schemeCode/codeValue |
Not Displayed
|
The code for the ID scheme. |
*-adp-rm-applicationID |
|
/events/data/eventContext/documentTypeCode/codeValue |
Not Displayed
|
Document's Business Type. |
One of the following:
|
| /events/data/eventContext/sourceApplicationFeatureID |
Not Displayed
|
The type of entity against which the document is uploaded. | applicant |
|
/events/data/transform/document/documentTitle |
Not Displayed
|
Title of the document uploaded. |
Can be given anything. |
|
/events/data/transform/document/documentTypeCode/codeValue |
Resume or Attachments |
Document Category. |
One of the following:
|
|
/events/data/transform/document/fileName |
Attachments |
Document File name. |
For example, Linus_Torvalds_resume.txt. |
|
/events/data/transform/document/fileTypeCode/codeValue |
Not Displayed
|
Document file or media type. |
.txt, .pdf, .doc, and so on |
|
/events/eventNameCode/codeValue |
Not Displayed |
|
|
| /events/eventNameCode/codeValue |
Not Displayed
|
Code for the event. | document.upload |
| /events/serviceCategoryCode/codeValue |
Not Displayed
|
Code for the service category. | staffing |
Responses
You may encounter exceptions outside your common success scenarios. You must account for the following exceptions during your initial development.
For more information, see API Common Exceptions and Tips for Handling.
|
Response Code |
Condition |
messageTxt |
GitHub Sample Request Payload |
GitHub Sample Response Payload |
Tips to Handle |
|---|---|---|---|---|---|
| 200 OK | Uploading a recruiting document with documentTypeCode as "applicant.resume". | Upload-recruiting-document-http-200-request.json | |||
| 200 OK | Uploading a recruiting document with documentTypeCode as "applicant.attachment" |
Upload-recruiting-document-attachment-http-200-response.json |
|||
| 200 OK | Uploading a document without serviceCategoryCode and eventNameCode. |
Upload-recruiting-document-without-categoryCode-http-200-request.json
|
Upload-recruiting-document-without-categoryCode-http-200-response.json |
||
| 200 OK | Uploading a document with invalid application itemID. |
"developerMessage": { c.dedupeValue,c.eeoEthnicity,c.eeoGender,c.eeoVeteran,c.emailAddress,c.externalID,c.firstName,c.id,c.isa,c.isaID,c.jobTitle, c.lastName,c.maritalStatus,c.middleName,c.mode,c.nameSuffix,c.phone,c.phone2,c.phone2Type,c.phoneType,c.refIsa,c.refIsaID, c.soSecNum,c.state,c.status,c.timestampCreation,c.timestampDateOfBirth,c.timestampLastUpdate,c.timeZoneID,c.type,c.zip FROM portal.SourcingCandidate$$009 AS c INNER JOIN portal.RTiAssignment AS a ON c.id = a.candidateID WHERE a.clientID = ? AND a.id = ? " |
400 Bad Request instead of 200 OK should be returned for this case status code. This is a known issue. See Chapter 3 - Known Issues and Limitations for more information. |
||
| 200 OK | Uploading a document with invalid documentTypeCode |
"developerMessage": { |
400 Bad Request instead of 200 OK should be returned for this case status code. This is a known issue. See Chapter 3 - Known Issues and Limitations for more information. |
||
| 400 Bad Request |
The json text/request payload is missing as one of the parameters. The json has all the details of the upload such as: the applicationID, file name etc. |
"userMessage": { |
NA | Check that the JSON is supplied. | |
| 400 Bad Request |
When the syntax of request payload is malformed.
|
"userMessage": { |
Check that the JSON is well formed. | ||
| 500 Internal Server Error | When document file is not attached for upload. |
"userMessage": { |
Upload-recruiting-document-http-request.json
|
Upload-document-with-missing-attachment-http-500-response.json |
Check that the file is attached. |







