---
title: "Start Login"
method: POST
path: "/{tenant_id}/login/initialize"
---

# Start Login

`POST /{tenant_id}/login/initialize`

Initialize a login flow for passkeys

## Path parameters

- `tenant_id` string, uuid, required

## Request body

- object
  - `user_id` string — optional - when provided the API Key needs to be sent to the server too.

## Response `200`

Example response

- object
  - `publicKey` object
    - `challenge` string, required
    - `timeout` integer
    - `rpId` string
    - `allowCredentials` CredentialDescriptorEntity[]
      - `type` 'public-key', required
      - `id` string, required
      - `transports` string[]
    - `userVerification` 'discouraged' | 'preferred' | 'required'
    - `extensions` object
      - `appid` boolean
      - `appidExclude` boolean
      - `credProps` object
        - `rk` boolean
  - `mediation` 'optional' | 'required' | 'silent'

## Other responses

- `400` — Error Response with detailed information
- `401` — Error Response with detailed information
- `404` — Error Response with detailed information
- `500` — Error Response with detailed information

---

[API](https://skmtc.net/hanko/apis/hanko-admin-api.md) · [All operations](https://skmtc.net/hanko/apis/hanko-admin-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/hanko/hanko-admin-api/revisions/d22a127b0978/schema)
