A PUSH feed is used in combination with the StepStone XML standard.
Possible actions are: (more detailed description can be found below):
- INSERT – inserts a new offer
- OFFLINE – takes an offer offline
- UPDATE – updates an existing offer. When used on multilingual sites like StepStone Belgium, this action can be also used to translate the offer, please find more detailed information below.
When the action-based workflow is in use (by default), the listing will remain online until the end the of validity period, this will be defined in the contract or until an OFFLINE action is received for that particular job. The OFFLINE action should be used if the offer needs to be taken offline before the end of its validity period.
A push feed integration assumes that the customer sends the offers to StepStone sites using XML format.
Data can be sent using this method:
- JobFeed HTTP Post – Customers send XML job data to StepStone using our JobFeed XML interface (available here). The provided URL endpoint can be integrated directly into your software by including all required parameters as form objects. StepStone provides customer-specific username and password credentials, which are mandatory for successful job posting.
XML is the preferred format for sending information to JobFeed as it provides a standardized, readable structure for parsing data.
Actions – a detailed overview
Insert
Each inserted offer will result in consuming budget according to the product type sent with the offer.
Offline
The offer status is changed from online to offline. This means that the offer will no longer be visible on the StepStone site. During the products validity period, an offline offer can be put back online using the UPDATE action. The reference number of an offline offer cannot be re-used for new listings.
Update
The job offer will be updated with the provided data. Note that categorization values cannot be modified through updates. Updates are free within the validity period but consume budget afterward (AT, NL, BE: 1 credit). Some contracts prohibit updates after validity expiration – these requests will be rejected.
Translate
Posting to a multilingual StepStone portal like StepStone Belgium, allows for multiple language versions of a listing. An existing listing can be added in a different language making it visible in that language version of the portal. For example, if the offer was inserted on StepStone Belgium in English, it can later be made available on the French version of the site. All data for a multilingual offer apart from categorisation is independent on each language version of the site which means the listing description can be completely different in English and French. To add a new language version of an existing listing, the user must submit the listing in the new language, using the same reference number as the previously inserted offer, applying the UPDATE action.
For translate action it’s mandatory to change value in node – if the offer already exists with a different language, JobFeed will detect a translation and insert a new language version.
How it works
Request Processing Workflow:
- Submit request to the system
- System processes and returns response
- On success – Workflow complete
- On failure – Resubmit after time delay
Exceptions – Contact Customer Service for:
- Contract or budget-related errors
- Persistent failures from other errors
Push type integration works as follows:
Response
The interface give a response that will contain the following parameters:
- Sender_ID – StepStone’s internal company id that the listing was posted against
- Organisation_ID – StepStone’s internal user id that the listing was posted under
- Reference – Customer reference numbers must be unique per sender ID
- Listing_ID – StepStone’s internal listing id, only numerical values will be returned
- listingExpiration – date when the listing will expire.
- action – the type of request that was processed; possible values are INSERT, UPDATE, IGNORE or OFFLINE
- STATUS – a status message
- StatusCode – numerical code of the status, please see the table at the end of the document on how to handle these codes
- Credits – credits remaining on the contract, not always returned
- Warning – numerical code of possible warnings (optional)
- contract_end_date – the end date of the contract, not always returned
Example responses:
Plain text response (xmlresponse parameter set to false):
Sender_ID=8812;Organisation_ID=12345;Listing_ID=12738;Reference=ABC12345;action=INSERT;STATUS=OK;contract_end_date=30/08/2018;Credits=0;StatusCode=100;listingExpiration=20/04/2018;
XML response (xmlresponse parameter set to true):
<jobfeedresponse> <senderid>8812</senderid> <organisationid>12345</organisationid> <reference>ABC12345</reference> <listingid>12738</listingid> <listingexpiration>30/07/2018</listingexpiration> <action>INSERT</action> <status><![CDATA[OK]]></status> <statuscode>100</statuscode> <contract/> </jobfeedresponse>
Create Link to offer with listingid from response
If you receive a listing ID in response from our service, you can easily create a direct link to the specific offer.
Example:
listingid = 123456
Use static jobboard (depending on value provided in node) in link and add listingid value in URL parameter:
DE = https://www.stepstone.de/stellenangebote–stepstone-listing–123456-inline.html?previewid=1
AT = https://www.stepstone.at/5/index.cfm?event=offerView.dspOfferInline&offerId=123456
BE = https://www.stepstone.be/5/index.cfm?event=offerView.dspOfferInline&offerId=123456
NL = https://www.stepstone.nl/5/index.cfm?event=offerView.dspOfferInline&offerId=123456
ZA = https://www.pnet.co.za/5/index.cfm?event=offerView.dspOfferInline&offerId=123456
Interface
All requests should be sent to our HTTP POST service:
https://jobfeed.stepstone.com/listing/
The request must contains following configuration parameters:
- username – the username as provided by StepStone,
- pwd – the password as provided by StepStone,
- xmlresponse – (true/false) specifies whether the system should respond in XML or in plain text format; default value is false,
- xmlfile – content of the XML file to be processed by the StepStone system.
Below is an extract of the code representing the configuration method with this interface:
Form form = new Form(); form.param("username", username); // von StepStone bereitgestellt form.param("pwd", password); // von StepStone bereitgestellt form.param("xmlresponse", "false"); form.param("xmlfile", xmlContent); Response response = client .target(httpPostUrl) .request() .post(Entity.entity(form, MediaType.APPLICATION_FORM_URLENCODED_TYPE));
CHANGELOG:
- Workflow:
- Added clarification on OFFLINE action usage
- JobFeed HTTP Post:
- Minor wording changes for clarity
- Updated description of parameter inclusion
- Actions – Detailed overview:
- INSERT: Updated credit consumption description
- OFFLINE: Added info on reactivating offers
- Translate: Minor wording changes
- Response:
- Improved terminology and explanation
- Create Link to offer:
- Added new link format for DE
- Reordered country links
- Interface:
- Added Content Type header information
- General:
- Various minor wording changes for clarity and consistency
- Removed redundant information
- Updated formatting in some sections