---
title: "Validates the email and single-use hash, and returns a share authorization token."
method: POST
path: "/v1/shares/{share_id}/magic_link/validate/"
---

# Validates the email and single-use hash, and returns a share authorization token.

`POST /v1/shares/{share_id}/magic_link/validate/`

## Request

- Base URL: `https://app.iconik.io/API/assets`
- URL: `https://app.iconik.io/API/assets/v1/shares/{share_id}/magic_link/validate/`
- Auth: none declared
- TypeScript: <https://skmtc.dev/iconik/apis/iconik-assets/docs/v1/shares/:share_id/magic_link/validate/post.ts> (a function with typed inputs; its response is checked against the schema)

<br/>The hash is consumed upon first use and cannot be reused.

## Path parameters

- `share_id` string, required

## Request body

- MagicLinkValidateSchema
  - `app_id` string: App ID for session fallback authentication
  - `email` string, email, required: The recipient email address
  - `hash` string, required: The JWT magic link token
  - `password` string: Password for password-protected shares
  - `token` string: Auth token for session fallback authentication

## Response `200`

Token validated successfully

- ShareTokenSchema
  - `app_id` string, required
  - `drm` 'none' | 'standard', required: DRM information for the share token, if applicable
  - `email` string, email, required
  - `expires` string, date-time, required
  - `is_internal_user` boolean, required
  - `object_id` string, required
  - `object_type` string, required
  - `roles` string[], required
  - `share_id` string, required
  - `share_session_id` string, nullable
  - `share_user_id` string, required
  - `system_domain_id` string, required
  - `token` string, required
  - `user_id` string, required
  - `watermark` 'none' | 'standard', required: Watermark information for the share token, if applicable

## Other responses

- `400`: Bad request or invalid token
- `404`: Share not found
- `423`: The share has not started yet; starts in the body is its start date
- `429`: Rate limit exceeded
- `default`: Error response

## Changes

- **2026-11-06** `62580d9e640e`: 4 info
  - added the non-success response with the status `423`
  - added the optional property `share_session_id` to the response with the `200` status
  - added the required property `drm` to the response with the `200` status
  - added the required property `watermark` to the response with the `200` status

[Operation history](https://skmtc.dev/iconik/apis/iconik-assets/changes/v1/shares/:share_id/magic_link/validate/post.md)

---

[API](https://skmtc.dev/iconik/apis/iconik-assets.md) - [All operations](https://skmtc.dev/iconik/apis/iconik-assets/llms.txt) - [OpenAPI document](https://skmtc.dev/iconik/apis/iconik-assets/revisions/62580d9e640e?raw)
