---
title: "PUT /public/decks/{reference}"
method: PUT
path: "/public/decks/{reference}"
tags: ["decks-viewer"]
---

# PUT /public/decks/{reference}

`PUT /public/decks/{reference}`

update the session details

## Path parameters

- `reference` string, required

## Request body

- ServerCreateDeckViewerSession
  - `browser` string, required
  - `device_info` string, required
  - `os` string, required
  - `password` string, required

## Response `200`

OK

- ServerFetchPublicDeckResponse
  - `deck` MalakPublicDeck, required
    - `created_at` string
    - `deck_size` integer
    - `is_archived` boolean
    - `object_link` string
    - `preferences` MalakPublicDeckPreference
      - `enable_downloading` boolean
      - `has_password` boolean
      - `require_email` boolean
    - `reference` string
    - `session` MalakDeckViewerSession
      - `browser` string
      - `city` string
      - `contact` MalakContact
        - `city` string — Legacy lmao. should be address but migrations bit ugh :))
        - `company` string
        - `created_at` string
        - `created_by` string — User who added/created this contact
        - `email` string
        - `first_name` string
        - `id` string
        - `last_name` string
        - `lists` MalakContactListMapping[]
          - `contact_id` string
          - `created_at` string
          - `created_by` string
          - `id` string
          - `list` MalakContactList
            - `created_at` string
            - `created_by` string
            - `id` string
            - `reference` string
            - `title` string
            - `updated_at` string
            - `workspace_id` string
          - `list_id` string
          - `reference` string
          - `updated_at` string
        - `metadata` MalakCustomContactMetadata
        - `notes` string
        - `owner_id` string — User who owns the contact. Does not mean who added the contact but who chases or follows up officially with the contact
        - `phone` string
        - `reference` string
        - `updated_at` string
        - `workspace_id` string
      - `contact_id` string
      - `country` string
      - `created_at` string
      - `deck_id` string
      - `device_info` string
      - `id` string
      - `ip_address` string
      - `os` string
      - `reference` string
      - `session_id` string
      - `time_spent_seconds` integer
      - `updated_at` string
      - `viewed_at` string
    - `short_link` string
    - `title` string
    - `updated_at` string
    - `workspace_id` string
  - `message` string, required

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `404` — Not Found
- `500` — Internal Server Error

---

[API](https://skmtc.net/ayinke-llc/apis/malak-s-api-documentation.md) · [All operations](https://skmtc.net/ayinke-llc/apis/malak-s-api-documentation/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/ayinke-llc/malak-s-api-documentation/revisions/3dff99ea5963/schema)
