Haruno Knowledge base

Approve a desktop app

When the Mac or Windows app signs in, it opens a page on the dashboard asking the customer to authorize or deny the device. This page shows that screen and every answer it can give.

  • DashboardAvailable

The Haruno apps do not have their own login screen. When a customer presses sign in in the app, the app opens a page on the dashboard in their browser. The customer checks that the request is theirs and presses Authorize.

What the customer does

  1. Start the sign-in in the app

    The Mac app or the Windows app opens the browser.

  2. Sign in with Google if asked

    A customer who is not signed in is sent to sign in first. They come back to this page afterwards.

  3. Check the request

    The page asks "Authorize this device?" and says "A desktop app is asking to use your Haruno account." It shows the Device, which is the name of the computer, and the Platform, Macos or Windows.

  4. Press Authorize

    The page says "Device authorized — return to the app." The browser hands a one-time code to the app on the same computer, and the app is signed in.

The approval screen.
The Authorize this device page. A laptop icon, the line A desktop app is asking to use your Haruno account, Device Priya's MacBook Pro, Platform Macos, an Authorize button and a Deny button.

Press Deny if the customer did not start the sign-in. The page says "Request denied. You can close this tab." and nothing is signed in.

After Deny.
The Haruno logo and a card saying: Request denied. You can close this tab.
After Authorize.
The Haruno logo and a card saying: Device authorized, return to the app.

When the page shows an error

The device limit.
A red box: Device limit reached, revoke a device on the Account page first.
What the customer seesWhat it means
This sign-in request is invalid or has expired. Start again from the app.The link is old (a request is good for about ten minutes), has been used, or is wrong. Start the sign-in again in the app.
Device limit reached — revoke a device on the Account page first.An account can have only a few apps signed in at once, five at the moment. Open Devices and revoke one.
An old or wrong request.
A red box: This sign-in request is invalid or has expired. Start again from the app.
Only authorize a sign-in you started

The page has no code to compare. It names the computer. If the name is not the customer's own computer, press Deny.

After the customer authorizes, the app keeps itself signed in. The customer can end that at any time from Devices.

An older way of signing in, with a code, is described in Link an app with a code.

Last updated · PR #2944 · View this version on GitHub

History (1 version)
  1. Internal knowledge base for staff: site, reader keys, assistant, 197 pages and the PR rule (#2944)
    What changed
    @@ -0,0 +1,55 @@
    +---
    +title: Approve a desktop app
    +summary: When the Mac or Windows app signs in, it opens a page on the dashboard asking the customer to authorize or deny the device. This page shows that screen and every answer it can give.
    +feature: dashboard-devices
    +covers:
    +  - web/dashboard/app/[lang]/device/page.tsx
    +  - web/dashboard/lib/api.ts
    +  - server-dotnet/src/Haruno.Server/Services/DeviceAuthService.cs
    +---
    +
    +The Haruno apps do not have their own login screen. When a customer presses sign in in the app, the app opens a page on the dashboard in their browser. The customer checks that the request is theirs and presses **Authorize**.
    +
    +## What the customer does
    +
    +<Steps>
    +<Step title="Start the sign-in in the app">
    +The Mac app or the Windows app opens the browser.
    +</Step>
    +<Step title="Sign in with Google if asked">
    +A customer who is not signed in is sent to [sign in](/dashboard/getting-started/sign-in/) first. They come back to this page afterwards.
    +</Step>
    +<Step title="Check the request">
    +The page asks "Authorize this device?" and says "A desktop app is asking to use your Haruno account." It shows the **Device**, which is the name of the computer, and the **Platform**, **Macos** or **Windows**.
    +</Step>
    +<Step title="Press Authorize">
    +The page says "Device authorized — return to the app." The browser hands a one-time code to the app on the same computer, and the app is signed in.
    +</Step>
    +</Steps>
    +
    +<Shot src="/m/290cf85b1bca-dashboard-device-consent-light.webp" alt="The Authorize this device page. A laptop icon, the line A desktop app is asking to use your Haruno account, Device Priya's MacBook Pro, Platform Macos, an Authorize button and a Deny button." caption="The approval screen." />
    +
    +Press **Deny** if the customer did not start the sign-in. The page says "Request denied. You can close this tab." and nothing is signed in.
    +
    +<Shot src="/m/e8827647974d-dashboard-device-denied-light.webp" alt="The Haruno logo and a card saying: Request denied. You can close this tab." caption="After Deny." />
    +
    +<Shot src="/m/4f821877eb6f-dashboard-device-approved-light.webp" alt="The Haruno logo and a card saying: Device authorized, return to the app." caption="After Authorize." />
    +
    +## When the page shows an error
    +
    +<Shot src="/m/61c76b1de6ae-dashboard-device-limit-light.webp" alt="A red box: Device limit reached, revoke a device on the Account page first." caption="The device limit." />
    +
    +| What the customer sees | What it means |
    +|---|---|
    +| This sign-in request is invalid or has expired. Start again from the app. | The link is old (a request is good for about ten minutes), has been used, or is wrong. Start the sign-in again in the app. |
    +| Device limit reached — revoke a device on the Account page first. | An account can have only a few apps signed in at once, five at the moment. Open [Devices](/dashboard/desktop-app-sign-in/devices/) and revoke one. |
    +
    +<Shot src="/m/bfa93cf10251-dashboard-device-invalid-light.webp" alt="A red box: This sign-in request is invalid or has expired. Start again from the app." caption="An old or wrong request." />
    +
    +<Callout variant="warning" title="Only authorize a sign-in you started">
    +The page has no code to compare. It names the computer. If the name is not the customer's own computer, press **Deny**.
    +</Callout>
    +
    +After the customer authorizes, the app keeps itself signed in. The customer can end that at any time from [Devices](/dashboard/desktop-app-sign-in/devices/).
    +
    +An older way of signing in, with a code, is described in [Link an app with a code](/dashboard/desktop-app-sign-in/link-desktop/).