> ## 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.

# Zelt OAuth 2.0 connector profile – StackOne setup guide

> Set up the OAuth 2.0 connector profile for Zelt in StackOne. One-time admin setup required before your users can link Zelt accounts via Hub.

<Warning>Admin privileges are required on your Zelt account.</Warning>

<Panel>
  <div className="not-prose guides-scope-selector" data-guides-scope-selector data-guide-actions-json="[{&#x22;id&#x22;:&#x22;zelt_get_user_addresses&#x22;,&#x22;label&#x22;:&#x22;Get User Addresses By User ID&#x22;,&#x22;scopes&#x22;:[&#x22;user.address:read:all&#x22;]},{&#x22;id&#x22;:&#x22;zelt_get_current_user_address&#x22;,&#x22;label&#x22;:&#x22;Get Currently Effective User Address&#x22;,&#x22;scopes&#x22;:[&#x22;user.address:read:all&#x22;]},{&#x22;id&#x22;:&#x22;zelt_bulk_import_attendance&#x22;,&#x22;label&#x22;:&#x22;Bulk Import Attendance Entries&#x22;,&#x22;scopes&#x22;:[&#x22;attendance:all&#x22;]},{&#x22;id&#x22;:&#x22;zelt_list_absences&#x22;,&#x22;label&#x22;:&#x22;List Absences&#x22;,&#x22;scopes&#x22;:[&#x22;absence:read:all&#x22;,&#x22;absence.selectedPolicy:all&#x22;]},{&#x22;id&#x22;:&#x22;zelt_list_sites&#x22;,&#x22;label&#x22;:&#x22;List All Sites For Company&#x22;,&#x22;scopes&#x22;:[&#x22;company.settings:read&#x22;]},{&#x22;id&#x22;:&#x22;zelt_list_departments&#x22;,&#x22;label&#x22;:&#x22;List All Departments For Company&#x22;,&#x22;scopes&#x22;:[&#x22;company.settings:read&#x22;]},{&#x22;id&#x22;:&#x22;zelt_list_job_positions&#x22;,&#x22;label&#x22;:&#x22;List All Job Positions&#x22;,&#x22;scopes&#x22;:[&#x22;company.settings:read&#x22;]},{&#x22;id&#x22;:&#x22;zelt_list_job_levels&#x22;,&#x22;label&#x22;:&#x22;List All Job Levels&#x22;,&#x22;scopes&#x22;:[&#x22;company.settings:read&#x22;]},{&#x22;id&#x22;:&#x22;zelt_list_permission_group_members&#x22;,&#x22;label&#x22;:&#x22;List Permission Group Members&#x22;,&#x22;scopes&#x22;:[&#x22;company.settings:read&#x22;]},{&#x22;id&#x22;:&#x22;zelt_create_user_compensation&#x22;,&#x22;label&#x22;:&#x22;Create User Compensation&#x22;,&#x22;scopes&#x22;:[&#x22;user.compensation:all&#x22;]},{&#x22;id&#x22;:&#x22;zelt_get_user_compensation&#x22;,&#x22;label&#x22;:&#x22;Get User Compensation Details&#x22;,&#x22;scopes&#x22;:[&#x22;user.compensation:read:all&#x22;]},{&#x22;id&#x22;:&#x22;zelt_update_user_compensation&#x22;,&#x22;label&#x22;:&#x22;Update User Compensation&#x22;,&#x22;scopes&#x22;:[&#x22;user.compensation:all&#x22;]},{&#x22;id&#x22;:&#x22;zelt_delete_user_compensation&#x22;,&#x22;label&#x22;:&#x22;Delete User Compensation&#x22;,&#x22;scopes&#x22;:[&#x22;user.compensation:all&#x22;]},{&#x22;id&#x22;:&#x22;zelt_get_current_compensation&#x22;,&#x22;label&#x22;:&#x22;Get Currently Effective Compensation Details&#x22;,&#x22;scopes&#x22;:[&#x22;user.compensation:read:all&#x22;]},{&#x22;id&#x22;:&#x22;zelt_get_user_contracts&#x22;,&#x22;label&#x22;:&#x22;Get User Contracts By User ID&#x22;,&#x22;scopes&#x22;:[&#x22;user.contract:read:all&#x22;]},{&#x22;id&#x22;:&#x22;zelt_create_user_contract&#x22;,&#x22;label&#x22;:&#x22;Create New User Contract&#x22;,&#x22;scopes&#x22;:[&#x22;user.contract:all&#x22;]},{&#x22;id&#x22;:&#x22;zelt_get_current_user_contract&#x22;,&#x22;label&#x22;:&#x22;Get Current User Contract By User ID&#x22;,&#x22;scopes&#x22;:[&#x22;user.contract:read:all&#x22;]},{&#x22;id&#x22;:&#x22;zelt_update_user_contract_record&#x22;,&#x22;label&#x22;:&#x22;Update User Contract Record&#x22;,&#x22;scopes&#x22;:[&#x22;user.contract:all&#x22;]},{&#x22;id&#x22;:&#x22;zelt_delete_user_contract_record&#x22;,&#x22;label&#x22;:&#x22;Delete User Contract Record&#x22;,&#x22;scopes&#x22;:[&#x22;user.contract:all&#x22;]},{&#x22;id&#x22;:&#x22;zelt_list_document_types_for_company&#x22;,&#x22;label&#x22;:&#x22;List Document Types For Company&#x22;,&#x22;scopes&#x22;:[&#x22;documents:all&#x22;]},{&#x22;id&#x22;:&#x22;zelt_get_user_events&#x22;,&#x22;label&#x22;:&#x22;Get User Events&#x22;,&#x22;scopes&#x22;:[&#x22;user.lifecycle:read:all&#x22;]},{&#x22;id&#x22;:&#x22;zelt_rehire_user&#x22;,&#x22;label&#x22;:&#x22;Rehire User&#x22;,&#x22;scopes&#x22;:[&#x22;user.lifecycle:all&#x22;,&#x22;user.onboard:all&#x22;]},{&#x22;id&#x22;:&#x22;zelt_get_current_user_event&#x22;,&#x22;label&#x22;:&#x22;Get Currently Effective User Event&#x22;,&#x22;scopes&#x22;:[&#x22;user.lifecycle:read:all&#x22;]},{&#x22;id&#x22;:&#x22;zelt_get_user_role_details&#x22;,&#x22;label&#x22;:&#x22;Get User Role Details&#x22;,&#x22;scopes&#x22;:[&#x22;user.role:read:all&#x22;]},{&#x22;id&#x22;:&#x22;zelt_create_user_role_record&#x22;,&#x22;label&#x22;:&#x22;Create New User Role Record&#x22;,&#x22;scopes&#x22;:[&#x22;user.role:all&#x22;]},{&#x22;id&#x22;:&#x22;zelt_get_current_user_role&#x22;,&#x22;label&#x22;:&#x22;Get Currently Effective User Role&#x22;,&#x22;scopes&#x22;:[&#x22;user.role:read:all&#x22;]},{&#x22;id&#x22;:&#x22;zelt_update_user_role_record&#x22;,&#x22;label&#x22;:&#x22;Update User Role Record&#x22;,&#x22;scopes&#x22;:[&#x22;user.role:all&#x22;]},{&#x22;id&#x22;:&#x22;zelt_delete_user_role_record&#x22;,&#x22;label&#x22;:&#x22;Delete User Role Record&#x22;,&#x22;scopes&#x22;:[&#x22;user.role:all&#x22;]},{&#x22;id&#x22;:&#x22;zelt_list_users&#x22;,&#x22;label&#x22;:&#x22;List All Users&#x22;,&#x22;scopes&#x22;:[&#x22;user.basicInfo:read&#x22;]},{&#x22;id&#x22;:&#x22;zelt_create_user&#x22;,&#x22;label&#x22;:&#x22;Create User&#x22;,&#x22;scopes&#x22;:[&#x22;user.basicInfo:all&#x22;,&#x22;user.onboard:all&#x22;]},{&#x22;id&#x22;:&#x22;zelt_get_user&#x22;,&#x22;label&#x22;:&#x22;Get User Basic Details&#x22;,&#x22;scopes&#x22;:[&#x22;user.basicInfo:read&#x22;]},{&#x22;id&#x22;:&#x22;zelt_get_user_personal_info&#x22;,&#x22;label&#x22;:&#x22;Get User Personal Info&#x22;,&#x22;scopes&#x22;:[&#x22;user.personalInfo:read&#x22;]},{&#x22;id&#x22;:&#x22;zelt_update_user&#x22;,&#x22;label&#x22;:&#x22;Update User Basic Details&#x22;,&#x22;scopes&#x22;:[&#x22;user.basicInfo:all&#x22;]},{&#x22;id&#x22;:&#x22;zelt_update_user_personal_info&#x22;,&#x22;label&#x22;:&#x22;Update User Personal Info&#x22;,&#x22;scopes&#x22;:[&#x22;user.personalInfo:all&#x22;]}]" style={{ borderRadius: '8px', padding: '16px', marginBottom: '24px' }}>
    <div className="guides-scope-selector__title" style={{ fontSize: '16px', fontWeight: '600', marginBottom: '12px' }}>Select Actions to adjust the guide</div>
    <div className="guides-scope-selector__muted" style={{ fontSize: '13px', marginBottom: '12px' }}>Some actions may require additional configuration in the provider to be accessible. Choose the actions you need and the guide will be updated.</div>

    <div style={{ display: 'flex', gap: '8px', marginBottom: '12px', flexWrap: 'wrap' }}>
      <input type="text" placeholder="Search actions..." className="guides-scope-selector__input" data-guide-action-search style={{ padding: '8px 12px', borderRadius: '6px', fontSize: '13px', flex: 1, minWidth: '160px' }} />

      <button type="button" className="guides-scope-selector__quick-btn" data-guide-select-all style={{ padding: '6px 10px', borderRadius: '6px', fontSize: '12px', cursor: 'pointer' }}>Select all</button>
      <button type="button" className="guides-scope-selector__quick-btn" data-guide-clear style={{ padding: '6px 10px', borderRadius: '6px', fontSize: '12px', cursor: 'pointer' }}>Clear</button>
    </div>

    <div className="guides-scope-selector__list" style={{ maxHeight: '240px', overflowY: 'auto', borderRadius: '6px', marginBottom: '12px' }}>
      <div className="guides-scope-selector__list-header" style={{ display: 'flex', alignItems: 'center', gap: '10px', padding: '8px 12px', fontSize: '12px', fontWeight: '600', position: 'sticky', top: 0, zIndex: 1 }}>
        <div style={{ width: '16px', flexShrink: 0 }} />

        <div style={{ flex: 1, textAlign: 'left' }}>Action</div>
        <div style={{ minWidth: '120px', marginLeft: 'auto', textAlign: 'right' }}>Scope(s)</div>
      </div>

      <div className="guides-scope-selector__muted" data-guide-loading style={{ padding: '16px', textAlign: 'center', fontSize: '13px' }}>Loading actions...</div>
      <div className="guides-scope-selector__muted" data-guide-no-results hidden style={{ padding: '16px', textAlign: 'center', fontSize: '13px' }}>No actions match your search.</div>
    </div>

    <div className="guides-scope-selector__url-section" style={{ marginTop: '12px', paddingTop: '12px' }}>
      <div className="guides-scope-selector__muted" style={{ fontSize: '12px', fontWeight: '500', marginBottom: '6px' }}>Dynamic Guide URL</div>

      <div style={{ display: 'flex', alignItems: 'center', gap: '8px', flexWrap: 'wrap' }}>
        <input type="text" readOnly className="guides-scope-selector__input" data-guide-url style={{ flex: 1, minWidth: '200px', padding: '8px 10px', borderRadius: '6px', fontSize: '12px', fontFamily: 'monospace' }} />

        <button type="button" className="guides-scope-selector__copy-btn" data-guide-copy-url style={{ width: '120px', padding: '8px 14px', borderRadius: '6px', fontSize: '13px', fontWeight: '500', cursor: 'pointer', whiteSpace: 'nowrap', marginLeft: 'auto' }}>Copy URL</button>
      </div>

      <div style={{ marginTop: '12px' }}>
        <div className="guides-scope-selector__muted" style={{ fontSize: '12px', fontWeight: '500', marginBottom: '6px' }}>Scopes Selected</div>

        <div style={{ display: 'flex', alignItems: 'stretch', gap: '8px', flexWrap: 'wrap' }}>
          <pre className="guides-scope-selector__input" role="textbox" aria-readonly="true" tabIndex={0} data-guide-scopes-output style={{ flex: 1, minWidth: '200px', minHeight: '88px', maxHeight: '120px', overflowY: 'auto', margin: 0, padding: '8px 10px', borderRadius: '6px', fontSize: '12px', fontFamily: 'monospace', whiteSpace: 'pre-wrap' }} />

          <div className="guides-scope-selector__muted" style={{ display: 'flex', flexDirection: 'column', gap: '8px', fontSize: '12px', fontWeight: '500', flexShrink: 0, alignItems: 'flex-start' }}>
            <div style={{ whiteSpace: 'nowrap' }}>Separator</div>

            <select className="guides-scope-selector__input" data-guide-scope-delimiter style={{ width: '100%', padding: '6px 10px', borderRadius: '6px', fontSize: '12px' }}>
              <option value="space">Space</option>
              <option value="comma">Comma</option>
              <option value="semicolon">Semicolon</option>
              <option value="pipe">Pipe</option>
              <option value="newline">Newline</option>
            </select>

            <button type="button" className="guides-scope-selector__copy-btn" data-guide-copy-scopes style={{ width: '120px', padding: '8px 14px', borderRadius: '6px', fontSize: '13px', fontWeight: '500', cursor: 'pointer', whiteSpace: 'nowrap' }}>Copy scopes</button>
          </div>
        </div>
      </div>
    </div>
  </div>
</Panel>

<section data-guide-section data-guide-scopes="">
  <h2>Create OAuth app</h2>

  <p>Register an OAuth application in the Zelt Developer hub.</p>

  <Steps>
    <Step title="Sign in to Zelt">
      <div data-guide-step data-guide-scopes="" data-guide-display-scopes-list="">
        <p>Sign in to your <a href="https://go.zelt.app" target="_blank" rel="noopener noreferrer">Zelt account</a>.</p>

        <ul>
          <li>Navigate to <strong>Settings</strong> > <strong>Organisation</strong> > <strong>Security</strong>.</li>
          <li>Next to <strong>Developer hub</strong>, click <strong>Generate</strong> (or <strong>New app</strong> if one already exists).</li>
        </ul>
      </div>
    </Step>

    <Step title="Fill in application details">
      <div data-guide-step data-guide-scopes="" data-guide-display-scopes-list="">
        <p>Complete the form to create your OAuth application.</p>

        <ul>
          <li><strong>Name</strong>: `StackOne Service Credentials`</li>
          <li><strong>Description</strong>: `Service authorization for StackOne integration`</li>
          <li><strong>Redirection URI</strong>: `https://api.stackone.com/connect/oauth2/zelt/callback`</li>
          <li>Click <strong>Generate</strong> to create the app.</li>
        </ul>
      </div>
    </Step>

    <Step title="Copy credentials">
      <div data-guide-step data-guide-scopes="" data-guide-display-scopes-list="">
        <p>A window displays the new app credentials. Copy the <strong>Client Secret</strong> immediately — it is shown only once and cannot be recovered. The <strong>Client ID</strong> remains visible afterwards. Store both securely for use later.</p>
      </div>
    </Step>

    <Step title="Set permissions">
      <div data-guide-step data-guide-scopes="user.read:all,user.basicInfo:read,user.basicInfo:all,user.personalInfo:read,user.personalInfo:all,user.address:read:all,user.lifecycle:read:all,user.lifecycle:all,user.contract:read:all,user.contract:all,user.compensation:read:all,user.compensation:all,user.role:read:all,user.role:all,user.onboard:all,company.settings:read,documents:all,absence:read:all,absence.selectedPolicy:all,attendance:all" data-guide-display-scopes-list="user.read:all,user.basicInfo:read,user.basicInfo:all,user.personalInfo:read,user.personalInfo:all,user.address:read:all,user.lifecycle:read:all,user.lifecycle:all,user.contract:read:all,user.contract:all,user.compensation:read:all,user.compensation:all,user.role:read:all,user.role:all,user.onboard:all,company.settings:read,documents:all,absence:read:all,absence.selectedPolicy:all,attendance:all">
        <div className="connector-guide-actions-badge" data-guide-actions-badge data-guide-actions-badge-scopes="user.read:all,user.basicInfo:read,user.basicInfo:all,user.personalInfo:read,user.personalInfo:all,user.address:read:all,user.lifecycle:read:all,user.lifecycle:all,user.contract:read:all,user.contract:all,user.compensation:read:all,user.compensation:all,user.role:read:all,user.role:all,user.onboard:all,company.settings:read,documents:all,absence:read:all,absence.selectedPolicy:all,attendance:all" style={{ display: 'block', width: 'fit-content', maxWidth: '100%', padding: '2px 8px', borderRadius: '8px', fontSize: '12px', marginBottom: '8px', marginTop: '-10px', whiteSpace: 'nowrap', overflowX: 'auto', overflowY: 'hidden', msOverflowStyle: 'none', scrollbarWidth: 'none' }}>
          <span>Enables actions: </span><span data-guide-actions-badge-labels>Bulk Import Attendance Entries, Create New User Contract, Create New User Role Record, Create User, Create User Compensation, Delete User Compensation, Delete User Contract Record, Delete User Role Record, Get Current User Contract By User ID, Get Currently Effective Compensation Details, Get Currently Effective User Address, Get Currently Effective User Event, Get Currently Effective User Role, Get User Addresses By User ID, Get User Basic Details, Get User Compensation Details, Get User Contracts By User ID, Get User Events, Get User Personal Info, Get User Role Details, List Absences, List All Departments For Company, List All Job Levels, List All Job Positions, List All Sites For Company, List All Users, List Document Types For Company, List Permission Group Members, Rehire User, Update User Basic Details, Update User Compensation, Update User Contract Record, Update User Personal Info, Update User Role Record</span>
        </div>

        <p>Open the new app, go to the <strong>Permissions</strong> tab, click the pencil icon, select the scopes required for the actions you plan to use, provide a reason for each, and click <strong>Update scopes</strong> to save.</p>

        <div style={{ marginTop: '8px' }} data-guide-display-scopes>
          <div className="connector-guide-scopes-container connector-guide-scopes-container--scrollable">
            <ul className="not-prose" style={{ listStyleType: "'- '", paddingLeft: '1em', margin: 0 }}>
              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="user.read:all">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy user.read:all" title="Copy scope" data-copy="user.read:all">
                  <span className="connector-guide-scope-copy__label">user.read:all</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="user.basicInfo:read">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy user.basicInfo:read" title="Copy scope" data-copy="user.basicInfo:read">
                  <span className="connector-guide-scope-copy__label">user.basicInfo:read</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="user.basicInfo:all">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy user.basicInfo:all" title="Copy scope" data-copy="user.basicInfo:all">
                  <span className="connector-guide-scope-copy__label">user.basicInfo:all</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="user.personalInfo:read">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy user.personalInfo:read" title="Copy scope" data-copy="user.personalInfo:read">
                  <span className="connector-guide-scope-copy__label">user.personalInfo:read</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="user.personalInfo:all">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy user.personalInfo:all" title="Copy scope" data-copy="user.personalInfo:all">
                  <span className="connector-guide-scope-copy__label">user.personalInfo:all</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="user.address:read:all">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy user.address:read:all" title="Copy scope" data-copy="user.address:read:all">
                  <span className="connector-guide-scope-copy__label">user.address:read:all</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="user.lifecycle:read:all">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy user.lifecycle:read:all" title="Copy scope" data-copy="user.lifecycle:read:all">
                  <span className="connector-guide-scope-copy__label">user.lifecycle:read:all</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="user.lifecycle:all">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy user.lifecycle:all" title="Copy scope" data-copy="user.lifecycle:all">
                  <span className="connector-guide-scope-copy__label">user.lifecycle:all</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="user.contract:read:all">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy user.contract:read:all" title="Copy scope" data-copy="user.contract:read:all">
                  <span className="connector-guide-scope-copy__label">user.contract:read:all</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="user.contract:all">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy user.contract:all" title="Copy scope" data-copy="user.contract:all">
                  <span className="connector-guide-scope-copy__label">user.contract:all</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="user.compensation:read:all">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy user.compensation:read:all" title="Copy scope" data-copy="user.compensation:read:all">
                  <span className="connector-guide-scope-copy__label">user.compensation:read:all</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="user.compensation:all">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy user.compensation:all" title="Copy scope" data-copy="user.compensation:all">
                  <span className="connector-guide-scope-copy__label">user.compensation:all</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="user.role:read:all">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy user.role:read:all" title="Copy scope" data-copy="user.role:read:all">
                  <span className="connector-guide-scope-copy__label">user.role:read:all</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="user.role:all">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy user.role:all" title="Copy scope" data-copy="user.role:all">
                  <span className="connector-guide-scope-copy__label">user.role:all</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="user.onboard:all">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy user.onboard:all" title="Copy scope" data-copy="user.onboard:all">
                  <span className="connector-guide-scope-copy__label">user.onboard:all</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="company.settings:read">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy company.settings:read" title="Copy scope" data-copy="company.settings:read">
                  <span className="connector-guide-scope-copy__label">company.settings:read</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="documents:all">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy documents:all" title="Copy scope" data-copy="documents:all">
                  <span className="connector-guide-scope-copy__label">documents:all</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="absence:read:all">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy absence:read:all" title="Copy scope" data-copy="absence:read:all">
                  <span className="connector-guide-scope-copy__label">absence:read:all</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="absence.selectedPolicy:all">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy absence.selectedPolicy:all" title="Copy scope" data-copy="absence.selectedPolicy:all">
                  <span className="connector-guide-scope-copy__label">absence.selectedPolicy:all</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="attendance:all">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy attendance:all" title="Copy scope" data-copy="attendance:all">
                  <span className="connector-guide-scope-copy__label">attendance:all</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>
            </ul>
          </div>
        </div>
      </div>
    </Step>
  </Steps>
</section>

## Creating the StackOne Connector Profile

To create the Connector Profile in StackOne for <strong>Zelt</strong>:

<Steps>
  <Step title="Navigate to Connector Profiles">
    Login to StackOne and navigate to [Connector Profiles](https://app.stackone.com/connector_profiles)
  </Step>

  <Step title="Create New Connector Profile">
    <ul>
      <li>Click <strong>+ Connector Profile</strong></li>
      <li>Search for and select <strong>Zelt</strong></li>
      <li>Select <strong>Type</strong> as <strong>OAuth 2.0</strong></li>

      <li>
        Fill out the fields using details retrieved from your provider:

        <ul style={{ marginLeft: '20px' }}>
          <li><strong>Client ID</strong></li>
          <li><strong>Client Secret</strong></li>
        </ul>
      </li>

      <li>(Optional) Select <strong>Actions</strong> to be enabled for this Connector Profile</li>
      <li>Click <strong>Create profile</strong></li>
    </ul>
  </Step>
</Steps>

Congratulations! The new Connector Profile will now show up in your project ready to be used. You can now continue to <a href="/guides/accounts-section#linking-accounts">Link Accounts</a> for <strong>Zelt</strong>.
