Portal Management
- Listing Portals
- Portal's detailed view
- Portal subscription info
- Subscribing to a Portal
- Unsubscribing from a Portal
- Listing Default logins
- Listing Office logins
- Listing Team logins
- Listing User logins
- Setting Office logins
- Setting Team logins
- Setting User logins
- Removing Office logins
- Removing Team logins
- Removing User logins
- Portal additional options
- Extra Fields display settings
- Portal Category list
- Portal Country list
This webservice allows to obtain information about Portals (posting destinations / job boards) available to a given account. It can be used to list available Portals and filter them by name, category, or country, as well as obtain details for a specific Portal.
The webservice also allows to manage the idibu account's subscriptions to Portals and various related settings. A Client must have an active Portal subscription in order to send Posts via the Posting API.
Listing Portals
This method allows to list appropriately filtered, alphabetically-ordered Portals for a given account.
Endpoint
https://ws.idibu.com/ws/rest/v1/portals/
Available methods
GET /all
Returns a list of all Portals that are available to the given Client.
GET /subscribed
Returns a list of all Portals to which the given Client is currently subscribed.
GET /unsubscribed
Returns a list of all Portals to which the given Client is currently not subscribed.
Query parameters
| Parameter Name | Type restrictions | Required? | Notes |
|---|---|---|---|
hash | String | Yes | Hash of the idibu account to which the request pertains. |
count | Integer Min: 1 Max: 100 Default: 10 | No | Number of Portals to return. |
offset | Integer Min: 0 Default: 0 | No | Numeric offset from where to start fetching Portals (pagination). |
filter_name | String | No | Returns only Portals with name containing the provided string. |
filter_tags | String (enum) Multiple allowed, comma-separated | No | Returns only Portals assigned to the selected categories (tags). Refer to the Portal Category list. |
filter_country | String (enum) Multiple allowed, comma-separated | No | Returns only Portals assigned to the selected countries. Refer to the Portal Country list; use 3-letter country <code> values. |
Response format
<idibu generator="idibu" version="1.0">
<response>
<portals>
<portal>
<id>[integer]</id> <!-- portal id -->
<name>[string]</name> <!-- portal name -->
<url>[string]</url> <!-- URL of the website -->
<logo>[string]</logo> <!-- portal logo image; prepend with https://idibu.com/images/stories/Portal_logos/ -->
<tags>[string]</tags> <!-- comma-separated list of categories; refer to https://docs.idibu.com/docs/v2/webservices/portal-management#category-list -->
<description>[string]</description> <!-- short description of the Portal -->
<country>[string]</country> <!--comma-separated list of 3-letter country codes; refer to https://docs.idibu.com/docs/v2/webservices/portal-management#country-list -->
<supports-aptrack>["yes"|"no"]</supports-aptrack> <!--whether idibu can gather candidates from the Portal -->
<supports-delete>["yes"|"no"]</supports-delete> <!--whether idibu can delete previously-posted jobs from the Portal -->
<published>["yes"|"no"]</published> <!--unpublished Portals cannot be posted to; they are either under maintenance or disabled for good. Portals with the value of "no" can only be returned by the /subscribed method -->
<dynamic>["yes"|"no"]</dynamic>
<!-- dynamic Portals utilize direct API connection and most usually the successful response indicates immediate posting -->
<!-- non-dynamic Portals utilize batch-upload methods where idibu's successful response only indicates exposing jobs file to the Portal - idibu does not control whether and when the posting goes online -->
</portal>
</portals>
<offset>[integer]</offset> <!-- mirrors the 'offset' parameter used in the request -->
<count>[integer]</count> <!-- number of returned Portals; may be lower than 'count' if there aren't enough items that satisfy the criteria -->
<total>[integer]</total> <!-- total number of all Portals that satisfy the criteria -->
</response>
<status>["success"|"failed"]</status> <!-- whether the request succeeded or not -->
</idibu>
Portal's detailed view
This method allows to obtain more information for a given Portal.
Endpoint
https://ws.idibu.com/ws/rest/v1/portals/
Available methods
GET /[id]
Returns the detailed view of the Portal with the provided [id].
Query parameters
| Parameter Name | Type restrictions | Required? | Notes |
|---|---|---|---|
hash | String | Yes | Hash of the idibu account to which the request pertains. |
Response format
<?xml version="1.0" encoding="utf8"?>
<idibu generator="idibu" version="1.0">
<response>
<portal>
<id>[integer]</id> <!-- portal id -->
<name>[string]</name> <!-- portal name -->
<url>[string]</url> <!-- URL of the website -->
<logo>[string]</logo> <!-- portal logo image; prepend with https://idibu.com/images/stories/Portal_logos/ -->
<tags>[string]</tags> <!-- comma-separated list of category slugs; refer to https://docs.idibu.com/docs/v2/webservices/portal-management#category-list -->
<postHelp>[string]</postHelp> <!-- basic instructions for the user, detailing how to subscribe and set up the Portal; may contain idibu-specific info! -->
<postGuide>[string]</postGuide> <!-- basic instructions for the user, detailing nuances on specific fields when performing the posting; may contain idibu-specific info! -->
<description>[string]</description> <!-- short description of the Portal -->
<supports-aptrack>["yes"|"no"]</supports-aptrack> <!--whether idibu can gather candidates from the Portal -->
<supports-delete>["yes"|"no"]</supports-delete> <!--whether idibu can delete previously-posted jobs from the Portal -->
<published>["yes"|"no"]</published> <!--unpublished Portals cannot be posted to; they are either under maintenance or disabled for good. Portals with the value of "no" can only be returned by the /subscribed method -->
<dynamic>["yes"|"no"]</dynamic>
<!-- dynamic Portals utilize direct API connection and most usually the successful response indicates immediate posting -->
<!-- non-dynamic Portals utilize batch-upload methods where idibu's successful response only indicates exposing jobs file to the Portal - idibu does not control whether and when the posting goes online -->
<country>[string]</country> <!--comma-separated list of 3-letter country codes; refer to https://docs.idibu.com/docs/v2/webservices/portal-management#country-list -->
</portal>
</response>
<status>["success"|"failed"]</status> <!-- whether the request succeeded or not -->
</idibu>
Portal subscription info
This method allows to obtain the list of fields required to subscribe to a given Portal, along with any Portal-specific help text.
Endpoint
https://ws.idibu.com/ws/rest/v1/portals/
Available methods
GET /[id]/subscribe
Returns the subscription information for the Portal with the provided [id], including the list of fields required to subscribe.
Query parameters
| Parameter Name | Type restrictions | Required? | Notes |
|---|---|---|---|
hash | String | Yes | Hash of the idibu account to which the request pertains. |
Response format
<?xml version="1.0" encoding="utf8"?>
<idibu generator="idibu" version="1.0">
<response>
<help>[string]</help> <!-- basic instructions for the user, detailing how to subscribe and set up the Portal; may contain idibu-specific info! -->
<fields>
<field>
<element>[string]</element> <!-- HTML element type; e.g. 'select' or 'text' -->
<name>[string]</name> <!-- internal field name -->
<title>[string]</title> <!-- field label -->
<values> <!-- only present for <element>select</element> -->
<value>
<name>[string]</name> <!-- option label -->
<value>[string]</value> <!-- option value -->
</value>
</values>
<order>[integer]</order> <!-- the display order for the field -->
<required>["yes"|"no"]</required> <!-- whether the field must have a value for the subscription to succeed -->
<maxchars>[integer]</maxchars> <!-- maximum number of characters accepted in the field; may be empty -->
<type>["general"|"login"]</type> <!-- 'general' indicates a global field that can only be set for the entire subscription; and different 'login' values can be set for Admin, Offices, Teams, and individual Users; refer to https://docs.idibu.com/docs/v2/webservices/user-management/ -->
</field>
</fields>
</response>
<status>["success"|"failed"]</status> <!-- whether the request succeeded or not -->
</idibu>
Note: For Portals that offer multiple posting duration options, a PostDuration field of <type>general</type> will always be returned. This field allows selecting a fixed duration that will be applied to every posting to this Portal on the account, preventing users from selecting different duration for every posting. This, however, only applies to the Post Completion Page - direct API posting assumes the API consumer controls the UI and the flow, and provides the duration as part of the Posts section. This value can also be set as part of the Portal additional options method.
Subscribing to a Portal
This method allows to subscribe the given Client to an available Portal.
Endpoint
https://ws.idibu.com/ws/rest/v1/portals/
Available methods
POST /[id]/subscribe
Subscribes the Client to the Portal identified by the specified [id], using the provided field values.
This action will set the Default logins for the given Portal.
Query parameters
| Parameter Name | Type restrictions | Required? | Notes |
|---|---|---|---|
hash | String | Yes | Hash of the idibu account to which the request pertains. |
data | String | Yes | The full query XML (see the Query format below), URL-encoded within the parameter. |
Query format
The query XML must contain all required <field> items returned in the Portal subscription info method's response.
<?xml version="1.0" encoding="utf8"?>
<request>
<fields>
<field> <!-- can be multiple - all obtainable from the GET /[id]/subscribe response -->
<name>[string]</name> <!-- field name -->
<value>[string]</value> <!-- selected/supplied value -->
</field>
</fields>
</request>
Response format
<?xml version="1.0" encoding="utf8"?>
<idibu generator="idibu" version="1.0">
<response>
<message>[string]</message> <!-- 'Portal added' or an error message -->
</response>
<status>["success"|"failed"]</status> <!-- whether the request succeeded or not -->
</idibu>
Unsubscribing from a Portal
This method allows to unsubscribe the given Client from a Portal.
Endpoint
https://ws.idibu.com/ws/rest/v1/portals/
Available methods
GET /[id]/unsubscribe
Unsubscribes the Client from the Portal identified by the provided [id].
This action will not unset any logins, but the Portal will not be available for the given Client account to post to anymore.
Query parameters
| Parameter Name | Type restrictions | Required? | Notes |
|---|---|---|---|
hash | String | Yes | Hash of the idibu account to which the request pertains. |
Response format
<?xml version="1.0" encoding="utf8"?>
<idibu generator="idibu" version="1.0">
<response>
<message>[string]</message> <!-- 'Portal removed' or an error message -->
</response>
<status>["success"|"failed"]</status> <!-- whether the request succeeded or not -->
</idibu>
Listing Default logins
This method allows to obtain the Default login details for the given Portal.
'Default login' indicates admin-level Portal subscription details that take effect for the entire account. These 'global' logins will be overridden by Office, Team, or User logins, if present.
Default logins are set as part of the subscription process.
Endpoint
https://ws.idibu.com/ws/rest/v1/portals/
Available methods
GET /[id]/default-login
Returns the Portal's Default login details currently set for the given Client for the Portal with the provided [id].
Query parameters
| Parameter Name | Type restrictions | Required? | Notes |
|---|---|---|---|
hash | String | Yes | Hash of the idibu account to which the request pertains. |
Response format
<?xml version="1.0" encoding="utf8"?>
<idibu generator="idibu" version="1.0">
<response>
<fields>
<field>
<name>[string]</name> <!-- login field name -->
<value>[string]</value> <!-- login field value -->
</field>
</fields>
</response>
<status>["success"|"failed"]</status> <!-- whether the request succeeded or not -->
</idibu>
Listing Office logins
This method allows to list Office-level logins configured for the given Portal.
'Office login' indicates subscription details that apply to all Teams and Users belonging under the given Office. Office logins, if present, take precedence over Default logins, and will be overridden by Team, or User logins.
Refer to the User Management Webservice for more info on Offices, Teams, and Users.
Endpoint
https://ws.idibu.com/ws/rest/v1/portals/
Available methods
GET /[id]/office-logins
Returns Office login details currently set for the given Client for the Portal with the provided [id].
Query parameters
| Parameter Name | Type restrictions | Required? | Notes |
|---|---|---|---|
hash | String | Yes | Hash of the idibu account to which the request pertains. |
count | Integer Min: 1 Default: 10 | No | Number of Offices to return. |
offset | Integer Min: 0 Default: 0 | No | Numeric offset from where start fetching Offices (pagination). |
office-id | Integer | No | Returns only the login details for the Office with the provided ID. Refer to the User Management Webservice. |
Response format
<?xml version="1.0" encoding="utf8"?>
<idibu generator="idibu" version="1.0">
<response>
<offices>
<office>
<id>[integer]</id> <!-- Office id; refer to https://docs.idibu.com/docs/v2/webservices/user-management/list-offices -->
<fields>
<field>
<name>[string]</name> <!-- login field name -->
<value>[string]</value> <!-- login field value -->
</field>
</fields>
</office>
</offices>
<total>[integer]</total> <!-- total number of Offices matching the current criteria -->
</response>
<status>["success"|"failed"]</status> <!-- whether the request succeeded or not -->
</idibu>
Listing Team logins
This method allows to list Team-level logins configured for the given Portal.
'Team login' indicates subscription details that apply to all Users belonging under the given Team. Team logins, if present, take precedence over Default and Office logins, and will be overridden by User logins.
Refer to the User Management Webservice for more info on Offices, Teams, and Users.
Endpoint
https://ws.idibu.com/ws/rest/v1/portals/
Available methods
GET /[id]/team-logins
Returns Team login details currently set for the given Client for the Portal with the provided [id].
Query parameters
| Parameter Name | Type restrictions | Required? | Notes |
|---|---|---|---|
hash | String | Yes | Hash of the idibu account to which the request pertains. |
count | Integer Min: 1 Default: 10 | No | Number of Teams to return. |
offset | Integer Min: 0 Default: 0 | No | Numeric offset from where start fetching Teams (pagination). |
team-id | Integer | No | Returns only the login details for the Tean with the provided ID. Refer to the User Management Webservice. |
office-id | Integer | No | Returns only the login details for Teams belonging under the Office with the provided ID. Refer to the User Management Webservice. |
Response format
<?xml version="1.0" encoding="utf8"?>
<idibu generator="idibu" version="1.0">
<response>
<teams>
<team>
<id>[integer]</id> <!-- Team id; refer to https://docs.idibu.com/docs/v2/webservices/user-management/list-teams -->
<fields>
<field>
<name>[string]</name> <!-- login field name -->
<value>[string]</value> <!-- login field value -->
</field>
</fields>
</team>
</teams>
<total>[integer]</total> <!-- total number of Teams matching the current criteria -->
</response>
<status>["success"|"failed"]</status> <!-- whether the request succeeded or not -->
</idibu>
Listing User logins
This method allows to list User-level logins configured for the given Portal.
'User login' indicates subscription details configured for an individual User. If present, these logins take precedence over Default, Office, and Team logins.
Refer to the User Management Webservice for more info on Offices, Teams, and Users.