PSOhub API: Contacts
Learn how to search for and create contacts in PSOhub via the API
Published: 1 June 2026
Audience
-
Admin
Objective
This reference article covers the PSOhub API endpoints for retrieving and creating contacts. Use these endpoints to search for existing contacts and create new ones programmatically within your PSOhub organization.
Prerequisites
You must have Admin user access in PSOhub.
You must have API access enabled for your PSOhub account.
To create a contact linked to a company, the company must already exist in PSOhub and its
CompanyID must be known.How to Get All Contacts
Steps
-
Use this endpoint to retrieve a list of contacts from your PSOhub organization.
Endpoint
GET https://www.psohubapp.com/rest/psohubapi/v1/contacts
2. Use the limit parameter to control the number of records returned. If not specified, the API returns 50 contacts by default.
Example response
json
[{ "Email": "michael@qweb.com", "ContactID": 21110623253302801, "CompanyID": 14073748839680461, "CompanyName": "Qweb", "FirstName": "Michael", "LastName": "Qweb", "Salutation": "Mr", "JobTitle": "Designer", "Phonenumber": "3169482932" }]
How to Find a Contact
Steps
-
Use search parameters to retrieve contacts that match specific criteria.
Endpoint
GET https://www.psohubapp.com/rest/psohubapi/v1/contacts?email=peterbosman@rtl4.nl
2. The response returns all records where the search value matches. The following search parameters are available (all lowercase):
| Parameter | Type | Description |
|---|---|---|
| name | String | The name of the contact. |
| String | The email address of the contact. | |
| companyid | Integer/Long | The PSOhub ID of the company. |
| contactid | Integer/Long | The PSOhub ID of the contact. |
| companyname | String | The name of the company. |
How to Create or Update a Contact
Steps
-
Use this endpoint to create a new contact or update an existing one.
Endpoint
POST https://www.psohubapp.com/rest/psohubapi/v1/contact PATCH https://www.psohubapp.com/rest/psohubapi/v1/contact
⚠️ Important: PSOhub does not check for duplicate email addresses or names. Multiple contacts with the same email can exist within your organization. Always verify that a contact does not already exist before creating a new one.
Request fields
| Name | Required | Type | Description |
|---|---|---|---|
| FirstName | No | String | The first name of the contact. |
| LastName | Yes | String | The last name of the contact. |
| Yes | String | The email address of the contact. | |
| Salutation | No | String | Title such as Mr or Ms. |
| Phonenumber | No | String | Phone number for the contact. |
| JobTitle | No | String | The contact's job title. |
| CompanyID | Yes | Integer/Long | The PSOhub ID of the company this contact belongs to. |
| ContactID | Yes (update only) | Integer/Long | The PSOhub ID of the contact. Required when updating an existing contact. |
| ExternalID | No | String | The identifier for this contact from your external application. |
Example request body
json
{ "FirstName": "Mike", "LastName": "Dovers", "Email": "mikedovers@tech.corp", "CompanyID": "14073748840908986", "ExternalID": "26343" }
Response
On success, the API returns the ContactID of the created or updated contact.
json
{ "ContactID": "21110623259110549" }