Body - InventoriesQuery
Inventory Attributes for Job Inventory
Resume View Inventory
Inventory Attributes for Resume View Inventory
Resume Search Inventory
Inventory Query Guide
OverviewThe Inventory Query API lets you retrieve counts of available inventory via our Inventory Query web services, which are SOAP messages served over HTTPS. With this guide, you'll be able to:
- Create an XML document to represent the InventoriesQuery following it's schema
- Test your solution with the Monster WS Toolkit
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 InventoriesQuery
EnvelopeThe 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> </SOAP-ENV:Header> <SOAP-ENV:Body> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
Monster SOAP Schema can be found here.
HeaderThe 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"< <mh:MessageData> <mh:MessageId>Company created on 06/09/2004 02:41:44 PM</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"> <wsse:UsernameToken> <wsse:Username>xtestxftp</wsse:Username> <wsse:Password>ftp12345</wsse:Password> </wsse:UsernameToken> </wsse:Security>
Monster Header Schema can be found here.
Body - InventoriesQueryThe Body contains the InventoriesQuery request and should comply with Monster Inventory schema. The response will be an InventoriesQueryResponse.
- Find InventoriesQuery samples here.
- The full Monster Inventory Schema can be found here.
- Find a sample InventoriesQueryResponse here.
<InventoriesQuery xmlns="http://schemas.monster.com/Monster" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <LicenseFilter monsterId="2">Active</LicenseFilter> <LicenseType monsterId="1">Job Inventory</LicenseType> </InventoriesQuery>
ParametersMonster represents Inventory as Licenses. 3 Main types of licenses can be returned. You can control the kinds of inventory returned via a filter.
LicenseFilterThe license filter controls the set of the inventory returned.
Current (1) - Returns all inventories that are both active and have remaining available quantity.
Active (2) - Returns all inventories that are active.
LicenseTypeThe license type controls the kind of inventory that is returned.
Job Inventory (1) -These are used to match and charge for job postings or enhancements to job postings.
<LicenseType monsterId="1">Job Inventory</LicenseType>
Resume View (2) - These are used to control the search and charge for resume views.
<LicenseType monsterId="2">Resume View</LicenseType>
Resume Search (3) -These are used to control whether resume search is allowed for a recruiter
<LicenseType monsterId="3">Resume Search</LicenseType>
6Sense Resume Transactions (4) -These are used to control the updates that can be done on private resume boards.
Enhanced SmartFind (5) -These are used to control what countries power resume search is allowed for a recruiter.
PRS Private DB Search (6) -These are used to control what private resume boards a recruiter is allowed to search.
<LicenseType monsterId="6">PRS Private DB Search</LicenseType>
HTTPS responseFor each request, the BGW will return an XML response that will contain information about the success or failure of the request.
Returns a set of Inventories objects of the given LicenseType and that match the specified LicenseFilter.
Holds 1 .. n Inventory objects
Inventory - Represents Job inventory, Resume View , or Resume Search licenses. The monsterId is the monster unique Id for the license.
ResourceLicenseInfo - Represents usage information about the license.
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
Quantity - Indicates quantity information associated with the licenses. isUnlimited = "1" indicates the license hasunlimited quantity.
TotalPurchased - The total quantity purchased
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.
InventoryExpireDate - Represents the date the license will expire.
InventoryAttrs - Represents the set of inventory attributes that indicate license abilities.
InventoryAttr - Represents a single inventory attribute.
AttrTypeID - The attribute type id that indicates which license ability the InventoryAttr represents
the following sample indicates that the job inventory can be used for postings on the Monster job board.
AttrValue - Holds attribute value information
Numeric1 - Numeric4 - Represents the numeric value for a InventoryAttr
Alpha - Represents string information used to represent the attributes value
Job InventoryThe following resource aclIds define the various type of Job Inventory.
Base InventoryThese 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.
The below resource aclIds (233) is for standard transactional job inventory.
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 InventoryThese 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
The below indicates the job posting with be autorefreshed every autorefresh interval days.
The below will refresh a job posting one time.
The below is used to charge for a job video that accompanies the job posting.
All enhancements have an ApplicableAclId to indicate the type of job posting they can be used with.
Inventory Attributes for Job InventoryThe 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.
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.
PostingDuration - The duration of the job posting in days is indicated in Numeric1/Value
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
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.
ApplicableAclId - This is used for "a la carte" enhancment job inventory to indicate the kind of base job inventory the "a la carte" enhancement can be used with
Resume View InventoryThese are inventory that control access to resumes that can be viewed. The below indidates that the inventory is a resume view inventory.
Inventory Attributes for Resume View InventoryLocationGroupID - 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.
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
LatLongBoundingBox - This indicates a latitude 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
Resume Search InventoryThese are inventory that control whether resume search can be performed. The below indicates that the inventory is a resume search inventory
Inventory Attributes for Resume Search Inventory 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>
Integration TestingMonster Business Gateway URL: https://gateway.monster.com:8443/bgwBroker
NOTE: Monster's BGW uses port 8443; this is not an industry standard port so in some cases it needs to be configured in your firewall. If issues are encountered, be advised that it is not necessary for clients to use port 8443 to exit their systems.
A WebServices Toolkit is available to verify the Inventory Query XML. This can be found at: http://integrations.monster.com/Toolkit/.
Test the following activities:
- Create inventory query XML to request inventory levels.
- Verify the XML in the WebServices Toolkit.
- Post the XML to the BGW URL.
- Retrieve response from BGW containing resume inventory levels.
- Parse the response and display results in your application.