Skip to content

Commit

Permalink
feat: Adds personio_v2 provider (#3089)
Browse files Browse the repository at this point in the history
<!-- Describe the problem and your solution --> 
The base url for the `Personio` provider was including the `v1` path so
I was not able to make calls to the the `v2` of the api. To not break it
for the current users I have followed the same approach that you have
used with the twitter api and decided to create the provider for the api
`v2` version.

---------

Co-authored-by: Samuel Bodin <[email protected]>
  • Loading branch information
2 people authored and Hassan Wari committed Dec 3, 2024
1 parent 2d98ce6 commit 14ea2ab
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 2 deletions.
4 changes: 2 additions & 2 deletions docs-v2/integrations/all/personio.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -29,10 +29,10 @@ API configurations: [`personio`](https://nango.dev/providers.yaml), [`personio-r

- Personio offers a separate recruiting API that is API key based and is listed under `personio-recruiting`
- The other API Personio offers is a client credentials token that authorizes as app instead of a user. This is listed under `personio`.
- The `companyId` value is required for `personio-recruiting` and can be retrieved at Settings > Integrations (API Credentials) and clicking on the "Recruiting API Key".
- (Api V1): The `companyId` value is required for `personio-recruiting` and can be retrieved at Settings > Integrations (API Credentials) and clicking on the "Recruiting API Key".
The value for `company` as required for `personio-recruiting` is the name you use to login to your account
and is the subdomain of your Personio instance.
- The values for `partnerId` and `appId` are optional but strongly recommended by Personio. Both can be defined by you, but should represent your company name and application name and MUST follow the UPPER_SNAKE_CASE format. For example `MY_APPLICATION`, `ACME` are valid values.
- (Api V1): The values for `partnerId` and `appId` are optional but strongly recommended by Personio. Both can be defined by you, but should represent your company name and application name and MUST follow the UPPER_SNAKE_CASE format. For example `MY_APPLICATION`, `ACME` are valid values.
An example of setting them in the `nango.auth` call:
```ts
nango.auth('personio-recruiting', 'test-connection-id', { params: { companyId: '33434', partnerId: 'YOUR_CUSTOM_NAME', appId: 'UNIQUE_ID', company: 'company-b' },
Expand Down
15 changes: 15 additions & 0 deletions packages/shared/providers.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4634,6 +4634,21 @@ personio:
title: App ID
description: The app ID of your Personio account

personio-v2:
display_name: Personio (v2)
categories:
- hr
auth_mode: OAUTH2_CC
proxy:
base_url: https://api.personio.de/v2
headers:
Content-Type: application/x-www-form-urlencoded
token_url: https://api.personio.de/v2/auth/token
scope_separator: ' '
docs: https://docs.nango.dev/integrations/all/personio
token_params:
grant_type: client_credentials

personio-recruiting:
display_name: Personio Recruiting
categories:
Expand Down

0 comments on commit 14ea2ab

Please sign in to comment.