Important
This repository contains the connector and configuration code only. The implementer is responsible to acquire the connection details such as username, password, certificate, etc. You might even need to sign a contract or agreement with the supplier before implementing this connector. Please contact the client's application manager to coordinate the connector requirements.
- HelloID-Conn-Prov-Target-Pynter
HelloID-Conn-Prov-Target-Pynter is a target connector. Pynter provides a set of SOAP APIs that allow you to programmatically interact with its data. These APIs use XML-based requests and responses, following the SOAP protocol for structured communication.
The following settings are required to connect to the API.
Setting | Description | Mandatory |
---|---|---|
UserName | The UserName to connect to the API | Yes |
Password | The Password to connect to the API | Yes |
BaseUrl | The URL to the API | Yes |
The correlation configuration is used to specify which properties will be used to match an existing account within Pynter to a person in HelloID.
Setting | Value |
---|---|
Enable correlation | True |
Person correlation field | ExternalId |
Account correlation field | ExternalIdentifier |
Tip
For more information on correlation, please refer to our correlation documentation pages.
The following lifecycle actions are available:
Action | Description |
---|---|
create.ps1 | Creates a new account. |
delete.ps1 | Removes an existing account or entity. |
disable.ps1 | Disables an account, preventing access without permanent removal. |
enable.ps1 | Enables an account, granting access. |
update.ps1 | Updates the attributes of an account. |
configuration.json | Contains the connection settings and general configuration for the connector. |
fieldMapping.json | Defines mappings between person fields and target system person account fields. |
The field mapping can be imported by using the fieldMapping.json file.
Currently the function New-PynterSoapXmlBody
uses a default namespace which is set to: http://tempuri.org/
. This value is usually reserved for development environemts only. For production environments, the value of the namespace might be subject to change. Make sure to verify and update this accordingly during the first implementation.
The New-PynterSoapXmlBody
function is responsible for creating the SOAP envelope. It takes two parameters:
SOAPMethod
– Defines the specific SOAP method being called.Parameters
– Contains the key-value pairs for the SOAP body, derived fromactionContext.Data
or the correlation configuration.
Since actionContext.Data
dynamically provides the parameter names and values, this function allows full flexibility in constructing the SOAP envelope. You can easily extend actionContext.Data
with additional fields, as long as the names match the expected SOAP method parameters.
Consider the following PowerShell code:
$splatGetPersonByExternalIdXmlBody = @{
SoapMethod = 'GetPersonByExternalId'
Parameters = @{ externalId = '123456' }
}
New-PynterSoapXmlBody @splatGetPersonByExternalIdXmlBody
This will result in the following SOAP envelope:
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
<soap12:Body>
<GetPersonByExternalId xmlns="http://tempuri.org/">
<username>MyUserName</username>
<password>MyPassword</password>
<externalId>123456</externalId>
</GetPersonByExternalId>
</soap12:Body>
</soap12:Envelope>
- username and password are automatically derived from
actionContext.Configuration
, ensuring authentication. - externalId is a dynamic input and specified in the
-Parameters
parameter.
The fields: FirstName
, FamilyName
, ExternalIdentifier
, and Email
must always be provided when updating an account (or performing operations like enabling, disabling, or deleting an account). The values send back are the ones that come from the $correlatedAccount
' object.
The update lifecycle action does contain our standard compare logic. However, contrary to the documentation, its worth to note that; even though properties are compared and changed properties are logged, ALL properties will be updated.
The following endpoints are used by the connector
SOAP method | Documentation URI | Lifecycle actions |
---|---|---|
GetPersonByExternalId | Retrieve user information | create,update,enable,disable,delete |
CreatePerson | Create user account | create |
UpdatePerson | Update user account | update,enable,disable,delete |
Tip
For more information on how to configure a HelloID PowerShell connector, please refer to our documentation pages.
Tip
If you need help, feel free to ask questions on our forum.
The official HelloID documentation can be found at: https://docs.helloid.com/