Real Time InventoriesQuery Guide

Table of Contents [Hide/Show]


Purpose and Objective
Create an XML Request
   Envelope
   Header
   Body - InventoriesQuery
   Character sets and encoding
   InventoriesQuery
   InventoriesQueryResponse
   Job Inventory
   Resume View
   Resume Search

Test your InventoriesQuery XML
   HTTPS response
   Testing in Production
Deployment
Support
   References

Purpose and Objective

The Purpose of this guide is to help you retrieve 3 types of inventory from Monster via our Web Service(WS), called BGW, in real time.
In the following guide, we describe how to interact with the our Web Service called BGW by sending SOAP messages over HTTPS.

This guide is divided into 3 main areas:
  1. Create an XML document to represent the InventoriesQuery following it's schema
  2. Test your solution with the Monster WS Toolkit
  3. Deploy your solution and go live!
Top

Create an XML Request

Requests to BGW must be sent in the form of SOAP envelopes, which is composed of a header and a body
Each request can include a maximum of a single InventoriesQuery and must follow the schema for the Monster Inventory

Envelope

The envelope is a container for Soap message.
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
    <SOAP-ENV:Header>
	<!-- information about the request here -->
    </SOAP-ENV:Header>
    <SOAP-ENV:Body>
	<!-- The InventoriesQuery request goes here -->
    </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Monster SOAP Schema can be found here

Top

Header

The header contains information about the request, request protocol, and a security protocol with the user credentials.
<mh:MonsterHeader xmlns:mh="http://schemas.monster.com/MonsterHeader">
    <!--XML request information
    -->
        <mh:MessageData> <mh:MessageId>Your companies id for the request</mh:MessageId>
        <mh:Timestamp>2004-06-09T14:41:44Z</mh:Timestamp>
    </mh:MessageData>
</mh:MonsterHeader>
<wsse:Security xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/04/secext">
    <!--credentials indentifying the posting user-->
    <wsse:UsernameToken>
        <wsse:Username>xtestxftp</wsse:Username>
  	<wsse:Password>ftp12345</wsse:Password>
    </wsse:UsernameToken>
</wsse:Security>

Monster Header Schema can be found here

Top

Body - InventoriesQuery

The Body contains the InventoriesQuery  request and should comply with Monster Inventory schema. The response will be an InventoriesQueryResponse.

Top

Character sets and encoding

XML requests should be posted to BGW encoded in "Windows-1252" characters.
Note: UTF-8 encoding will be accepted by BGW, but limited to the "Windows-1252" subset (single byte).

More about HTML Encoding you can find here

Top

InventoriesQuery

Top

Monster represents Inventory as Licenses. 3 types of licenses can be returned. You can control the kinds of inventory returned via a filter

LicenseTypes

The license type controls the kind of inventory that is returned.

Job Inventory

These are used to match and charge for job postings or enhancements to job postings.

<LicenseType monsterId="1">Job Inventory</LicenseType>

Resume View

These are used to control the search and charge for resume views.

<LicenseType monsterId="2">Resume View</LicenseType>

Resume Search

These are used to control whether resume search is allowed for a recruiter

<LicenseType monsterId="3">Resume Search</LicenseType>

License Filters

The license filter controls the set of the inventory returned.

Current

Returns all inventories that are both active and have remaining available quantity.

<LicenseFilter monsterId="1">Current</LicenseFilter>

Active

Returns all inventories that are active.

<LicenseFilter monsterId="2">Active</LicenseFilter>

All

Returns all inventories.

<LicenseFilter monsterId="3">All</LicenseFilter>

 

InventoriesQueryResponse

Top

Returns a set of Inventories objects of the given LicenseType and that match the specified LicenseFilter.

Inventories 

Holds 1 .. n Inventory objects

Inventory

Represents Job inventory, Resume View , or Resume Search licenses. The monsterId is the monster unique Id for th license.

<Inventory monsterId="23423223">

ResourceLicenseInfo

Represents usage information about the license.

<ResourceLicenseInfo>

ResourceAclID

Represents an Id that is uses to identify the type of license.

<ResourceAclID monsterId="233">Standard Transactional</ResourceAclID>

ResourceLicenseTypeD

Indicates the charging model associated with the license.

<ResourceLicenseTypeID monsterId="4">Transactional Limited</ResourceLicenseTypeID>

ResourceLicenseProvisionMethodID

Indicates whether the license is pooled or allocated. Currently all licenses are pooled

<ResourceLicenseProvisionMethodID monsterId="2">Pooled</ResourceLicenseProvisionMethodID>

Quantity

Indicates quantity information associated with the licenses. isUnlimited = "1" indicates the license hasunlimited quantity.

<Quantity isUnlimited="0">

TotalPurchased

The total quantity purchased

<TotalPurchased>5</TotalPurchased>

TotalAvailable

The total quantity available for consumption.

<TotalAvailable>0</TotalAvailable>

CompanyReference

Information pertaining to the company that owns the license. Not Currently supported.

InventoryDates

Represents the dates associated with the license.

InventoryActiveDate

Represents the date the license was active.

<InventoryActiveDate>2008-01-01T09:30:47-05:00</InventoryActiveDate>

InventoryExpireDate

Represents the date the license will expire.

<InventoryExpireDate>2008-12-31T09:30:47-05:00</InventoryExpireDate>

InventoryAttrs

Represents the set of inventory attributes that indicate license abilities.

<InventoryAttrs>

InventoryAttr

Represents a single inventory attribute.

AttrTypeID

The attribute type id that indicates which license ability  the InventoryAttr represents

<AttrTypeId monsterId="5">Monster</AttrTypeId>

This indicates that the job inventory can be used for postings on the Monster job board.

AttrValue

Holds attribute value information

<AttrValue>

Numeric1 - Numeric4

Represents the  numeric value for a InventoryAttr

<Numeric1><Value>1</Value> <Name>Monster</Name></Numeric1>

Alpha

Represents string information used to represent the attributes value

 

Job Inventory

Top

The following resource aclIds define the various type of Job Inventory. 233 is for standard transactional job inventory.  240 is for standard slotted job inventory.

Base Inventory

These are used to charge for a job posting based on the job posting attributes that relate to the inventory attributes on the base inventory. An example of this is a US job posting cannot be charged for with a Canada base inventory.

The below indicates the base inventory is standard transactional. Each job posting charge decrements the quantity available. That quantity is never restored.

<ResourceAclID monsterId="233">Local_Posting</ResourceAclID>

The below indicates the base inventory is standard slotted. Each job posting charge decrements the quantity available. That quantity is restored when the job posting is expired.

<ResourceAclID monsterId="240">Standard Reserved Jobs</ResourceAclID>

Enhancement Inventory

These are used to charge for enhancements to job postings. They can be combined with base inventory or used standalone to add the enhancement to the job posting

The below adds bolding to a job posting

<ResourceAclID monsterId="244">JOBINVENTORY_BOLDING</ResourceAclID>

The below indicates the job posting with be autorefreshed every autorefresh interval days.

<ResourceAclID monsterId="243">AUTO_REFRESH</ResourceAclID>

The below will refresh a job posting one time.

<ResourceAclID monsterId="281">JOBINVENTORY_REFRESH</ResourceAclID>

The below is used to charge for a job video that accompanies the job posting.

 <ResourceAclID monsterId="282">JOBINVENTORY_VIDEO</ResourceAclID>

All enhancements have an ApplicableAclId to indicate the type of job posting they can be used with.

 Inventory Attributes

The following attributes can be associated to a job inventory

JobboardId

Indicates the job board the job inventory can be used against. Numeric1/Value indicates the jobBoardId. Numeric1/Name holds the name of the Jobboard.

<AttrTypeId monsterId="5">JobBoardID</AttrTypeId>

PostingLocationGroupId

Defines a geographic region to indicate the set of job posting locations the job inventory can be used against. Numeric1/Value defines this. Numeric1/Name has the associated name.

<AttrTypeId monsterId="9">PostingLocationGroupID</AttrTypeId>

PostingDuration

The duration of the job posting in days is indicated in Numeric1/Value

<AttrTypeId monsterId="11">PostingDuration</AttrTypeId>

PostingInHold

Indicates if any quantity of the job inventory is in a state of hold up to a date. The Date is expressed in Alpha. The amount of quantity in hold is expressed in Numeric1/Value

<AttrTypeId monsterId="13">PostingInHold</AttrTypeId>

HasBolding

Indicates if the job inventory has bolding tied to it. This causes job postings to be bolded. Numeric1/Value = 1 indicates bolding is tied. Numeric1/Value = 0 indicates it is not tied. The absence of the inventory attribute means that bolding is not tied to the job inventory.

<AttrTypeId monsterId="17">HasBolding</AttrTypeId>

HasAutoRefresh

Indicates if the job inventory has autorefresh tied to it. This causes job postings to be moved to the top of the job search results every "autorefresh interval" days. Numeric1/Value = 1 indicates autorefresh is tied. Numeric1/Value = 0 indicates it is not tied. The absence of the inventory attribute means that autorefresh is not tied to the job inventory. Numeric2/Value = the autorefresh interval in days.

<AttrTypeId monsterId="18">HasAutoRefresh</AttrTypeId>

ApplicableAclId

This is used for ala carte enhancment job inventory to indicate the kind of base job inventory the ala carte enhancment can be used with

<AttrTypeId monsterId="21">ApplicableACLID</AttrTypeId>

 

Resume View

Top

These are inventory that control access to resumes that can be viewed. The below indidates that the inventory is a resume view inventory.

<ResourceAclID monsterId="2">RESUME_VIEW</ResourceAclID>

Inventory Attributes

LocationGroupID

This indicates a location hierarchy that controls the resumes viewed by ensuring the job seeker location is within the location group. An example of this would be that a Canadian job seeker resume can not be viewed with a US Resume View license. Numeric1/Value = the location groupId Numeric1/Name = is the name of the location group.

<AttrTypeId monsterId="2">LocationGroupID</AttrTypeId>

ResumeBoardId

This indicates the resume board Id that the inventory can be used to charge views against.Numeric1/Value = resume board id. Numeric1/Name = name of the resume board

<AttrTypeId monsterId="4">ResumeBoardID</AttrTypeId>

LatLongBoundingBox

This indicates a latitute longitude bounding box to control access to resume views by ensuring the job seeker location is within the bounding box. Numeric1/Value = center latitude. Numeric2/Value = center longitude. Numeric3/Value = radius size in miles Alpha = postal code

<AttrTypeId monsterId="3">LatLongBoundingBox</AttrTypeId>

 

Resume Search

Top

These are inventory that control whether resume search can be performed. The below indicates that the inventory is a resume search inventory

<ResourceAclID monsterId="1">RESUME_SEARCH</ResourceAclID>

Inventory Attributes

Resume Search Type

This indicates the type of resume search supported. Numeric1/Value = resume search type id. Numeric1/Name = the name of the resume search type

  <AttrTypeId monsterId="8">Resume Search Type</AttrTypeId>

Top

Test your InventoriesQuery XML

During development you can use our MITE QA enviornment to test.

During development you can use our Web-Service-Tester to verify your XML, post it to our Test environment and get inventory for your test accounts.


Use the following User for authentication (security section in the Header)


Test BGW URL : https://10.50.23.36:8443/bgwBroker

Top

HTTPS response

For each request, the BGW will return an XML response that will contain information about the success or failure of the request.

The operation will issue standard Soap:Faults if a server error occurs. Please try the request again and contact monster if the issue persists.

Top

Testing in Production

Testing feeds against our test environment should be sufficient since it mirrors the Production environment.

Top

Deployment

Production BGW URL : https://gateway.monster.com:8443/bgwBroker

Your checklist for deployment


Top

Support


Top

References


Top