> ## Documentation Index
> Fetch the complete documentation index at: https://docs.stackone.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Connect Personio with OAuth 2.0 – StackOne Hub

> Link a Personio account in the StackOne Hub using OAuth 2.0. End-user guide to authorize the integration and start using Personio actions.

<Warning>You need access to Personio Settings > Integrations to create API credentials. Admin or appropriate permissions are required.</Warning>

<section data-guide-section data-guide-scopes="">
  <h2>Create a Custom Integration</h2>

  <p>Create a custom integration in your Personio account to generate API credentials.</p>

  <Steps>
    <Step title="Access Integrations">
      <div data-guide-step data-guide-scopes="" data-guide-display-scopes-list="">
        <p>Navigate to the Integrations page in Personio Settings.</p>

        <ul>
          <li>Log in to your Personio account</li>
          <li>Go to <strong>Settings</strong> > <strong>Integrations</strong> > <strong>API credentials</strong></li>
          <li>Click <strong>Create a custom integration</strong></li>
        </ul>
      </div>
    </Step>

    <Step title="Enter Integration Info">
      <div data-guide-step data-guide-scopes="" data-guide-display-scopes-list="">
        <p>Provide a name to identify your integration.</p>

        <ul>
          <li>Enter a name (e.g., "StackOne Integration")</li>
          <li>Click <strong>Next</strong> to continue</li>
        </ul>
      </div>
    </Step>

    <Step title="Configure Access Rights">
      <div data-guide-step data-guide-scopes="" data-guide-display-scopes-list="">
        <p>Select the permissions your integration needs. Choose Read and/or Write access for each module.</p>

        <ul>
          <li>Select access rights for modules (employees, attendances, time off, documents, custom reports, compensations, recruiting, webhooks, org units, legal entities, cost centers, workplaces)</li>
          <li><strong>Required:</strong> Grant <strong>Read</strong> access for <strong>Employees</strong> - the connection will fail without this permission</li>
          <li>Grant <strong>Read</strong> access for other modules you need to retrieve data from</li>
          <li>Grant <strong>Write</strong> access for modules where you need to create or update data</li>
          <li><strong>Optional:</strong> Configure readable employee attributes if needed</li>
          <li><strong>Optional:</strong> Choose legal entities to scope access to specific entities</li>
          <li>Click <strong>Create integration</strong> after selecting permissions</li>
        </ul>
      </div>
    </Step>

    <Step title="View and Copy Credentials">
      <div data-guide-step data-guide-scopes="" data-guide-display-scopes-list="">
        <p>Your API credentials are now ready. Copy and store them securely.</p>

        <ul>
          <li>Copy the <strong>Client ID</strong> (format `papi-xxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`)</li>
          <li>Click <strong>Copy secret</strong> to copy the <strong>Client Secret</strong></li>
          <li><strong>Critical:</strong> Store the Client Secret immediately in a secure place - it won't be shown again</li>
          <li>If you lose the secret, you'll need to create a new integration</li>
        </ul>
      </div>
    </Step>
  </Steps>
</section>

<section data-guide-section data-guide-scopes="">
  <h2>Important Notes</h2>

  <p>Key information about Personio API authentication.</p>

  <ul>
    <li>Access tokens are automatically refreshed using the Client Credentials flow</li>
    <li>Permissions configured during setup determine which API endpoints you can access</li>
    <li>Keep your Client Secret secure and never share it publicly</li>
    <li>You can manage or revoke integrations anytime in <strong>Settings</strong> > <strong>Integrations</strong> > <strong>API credentials</strong></li>
    <li>If you need to change permissions, create a new integration with updated access rights</li>
    <li>Refer to the <a href="https://developer.personio.de/docs/getting-started-with-the-personio-api" target="_blank" rel="noopener noreferrer">Personio API documentation</a> for more information</li>
  </ul>
</section>

<div data-whitelabel-hide>
  <h2>Linking the Account from the Hub</h2>

  <Steps>
    <Step title="Navigate to the Hub">
      Use one of the three <a href="/guides/accounts-section#linking-accounts">Linking Account Methods</a> to access the Hub.
    </Step>

    <Step title="Fill out the fields">
      Fill out the following fields using details from your provider:

      <ul>
        <li><strong>Client ID</strong></li>
        <li><strong>Client Secret</strong></li>
      </ul>
    </Step>

    <Step title="Connect">
      <ul>
        <li>Click <strong>Connect</strong></li>
        <li>If applicable, the provider will redirect you to a sign-in or authorization page. Complete the provider's authorization flow.</li>
        <li>Once authorization is successful, you will see a confirmation popup</li>
      </ul>
    </Step>
  </Steps>

  <p>If the account linking is successful, you will see the newly linked account in your <a href="/guides/accounts-section">Accounts</a> page.</p>
</div>
