> ## Documentation Index
> Fetch the complete documentation index at: https://studio.assembly.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Mark notification as unread

> Marks a notification as unread and returns the updated notification.



## OpenAPI

````yaml /api-reference/openapi.json post /v1/notifications/{id}/unread
openapi: 3.0.0
info:
  contact: {}
  title: Assembly API
  version: 0.0.1
servers:
  - url: https://api.assembly.com
security: []
paths:
  /v1/notifications/{id}/unread:
    post:
      tags:
        - Notifications
      summary: Mark notification as unread
      description: Marks a notification as unread and returns the updated notification.
      operationId: mark-notification-unread
      parameters:
        - description: Notification ID
          in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/notifications.Notification'
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/dispatcher.Error'
          description: Missing or invalid API key
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/dispatcher.Error'
          description: Notification not found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/dispatcher.Error'
          description: Unexpected server error
      security:
        - APIKeyHeader: []
components:
  schemas:
    notifications.Notification:
      properties:
        additionalFields:
          $ref: '#/components/schemas/notifications.AdditionalFields'
        appId:
          description: >-
            AppID is the ID of the custom app that created the notification,
            when applicable.
          example: 550e8400-e29b-41d4-a716-446655440005
          format: uuid
          type: string
        assetS3Key:
          type: string
        channelId:
          type: string
        companyId:
          description: >-
            CompanyID is the company the notification is associated with, when
            applicable.
          example: 550e8400-e29b-41d4-a716-446655440003
          format: uuid
          type: string
        count:
          type: integer
        createdAt:
          type: string
        creatorId:
          type: string
        data:
          type: string
        defaultListIndexPkey:
          description: >-
            DefaultListIndexPkey for the notification model is used to mark
            whether a notification is an inbox notification
          type: string
        deliveryTargets:
          allOf:
            - $ref: '#/components/schemas/notifications.DeliveryTargets'
          description: >-
            DeliveryTargets describes how the notification is delivered
            (in-product and/or email).
        event:
          allOf:
            - $ref: '#/components/schemas/notifications.EventType'
          description: Event is the domain event that triggered the notification.
          enum:
            - files.created
            - file.created
            - contract.signed
            - contract.requested
            - formResponse.requested
            - formResponse.completed
            - form.created
            - invoice.paid
            - invoice.requested
            - invoice.processing
            - invoice.paymentFailed
            - refund.requested
            - refund.processed
            - refund.failed
            - autoChargePayment.requested
            - customApp.action
            - internalChat.mentioned
            - channel.mentioned
          example: file.created
        fields:
          allOf:
            - $ref: '#/components/schemas/notifications.Fields'
          description: 'todo: remove fields once FE doesn''t use them'
        id:
          type: string
        identityId:
          type: string
        isGroup:
          type: boolean
        isRead:
          description: 'Deprecated: use DeliveryTargets.InProduct.IsRead'
          type: boolean
        object:
          type: string
        previousAttributes:
          additionalProperties: true
          type: object
        recipientClientId:
          description: >-
            RecipientClientID is the recipient client ID, set when the recipient
            is a client.
          example: 550e8400-e29b-41d4-a716-446655440001
          format: uuid
          type: string
        recipientCompanyId:
          description: >-
            RecipientCompanyID is the recipient company ID, set when the
            recipient is a client (their company).
          example: 550e8400-e29b-41d4-a716-446655440003
          format: uuid
          type: string
        recipientId:
          description: >-
            RecipientID is the ID of the member the notification is delivered
            to.
          example: 550e8400-e29b-41d4-a716-446655440001
          format: uuid
          type: string
        recipientInternalUserId:
          description: >-
            RecipientInternalUserID is the recipient internal user ID, set when
            the recipient is an internal user.
          example: 550e8400-e29b-41d4-a716-446655440004
          format: uuid
          type: string
        recipientType:
          $ref: '#/components/schemas/notifications.MemberType'
        ref:
          type: string
        reminders:
          $ref: '#/components/schemas/notifications.Reminders'
        resourceId:
          description: >-
            ResourceID is the ID of the resource the notification refers to
            (e.g. the uploaded file or invoice).
          example: 550e8400-e29b-41d4-a716-446655440002
          type: string
        senderCompanyId:
          description: >-
            SenderCompanyID is the sender's company ID, set when the recipient
            is an internal user.
          example: 550e8400-e29b-41d4-a716-446655440003
          format: uuid
          type: string
        senderId:
          description: SenderID is the ID of the member who triggered the notification.
          example: 550e8400-e29b-41d4-a716-446655440000
          format: uuid
          type: string
        senderType:
          allOf:
            - $ref: '#/components/schemas/notifications.MemberType'
          description: SenderType is the kind of member that sent the notification.
          enum:
            - client
            - internalUser
            - company
          example: internalUser
        updatedAt:
          type: string
      type: object
    dispatcher.Error:
      properties:
        code:
          type: string
        data: {}
        message:
          type: string
      type: object
    notifications.AdditionalFields:
      properties:
        channelName:
          type: string
        invoiceNumber:
          type: string
        senderName:
          type: string
      type: object
    notifications.DeliveryTargets:
      properties:
        email:
          allOf:
            - $ref: '#/components/schemas/notifications.EmailDeliveryTarget'
          description: Email delivers the notification by email.
        inProduct:
          allOf:
            - $ref: '#/components/schemas/notifications.InProductDeliveryTarget'
          description: >-
            InProduct delivers the notification to the in-product notification
            inbox.
      type: object
    notifications.EventType:
      enum:
        - files.created
        - file.created
        - contract.signed
        - contract.requested
        - formResponse.requested
        - formResponse.completed
        - form.created
        - invoice.paid
        - invoice.requested
        - invoice.processing
        - invoice.paymentFailed
        - refund.requested
        - refund.processed
        - refund.failed
        - autoChargePayment.requested
        - customApp.action
        - customApp.buildComplete
        - internalChat.mentioned
        - channel.mentioned
      type: string
      x-enum-varnames:
        - NewFileGroups
        - NewFile
        - ContractSigned
        - ContractRequested
        - FormResponseRequested
        - FormResponseCompleted
        - FormCreated
        - InvoicePaid
        - InvoiceRequested
        - InvoiceProcessing
        - InvoicePaymentFailed
        - RefundRequested
        - RefundProcessed
        - RefundFailed
        - AutoChargePayment
        - CustomAppAction
        - AppBuilderBuildComplete
        - InternalChatMention
        - ChannelMention
    notifications.Fields:
      properties:
        channelId:
          type: string
        companyId:
          type: string
        count:
          description: >-
            Count is only used for notification groups, which represent multiple
            notifications
          type: integer
        formId:
          type: string
        groupingEntityType:
          description: >-
            GroupingEntityType designates the notification entity types that are
            associated with a notification grouping
          type: string
        itemName:
          description: >-
            ItemName is used to capture data for inbox notifications, for
            example the filename for an esig complete notification (if files are
            not loaded into state)
          type: string
        notificationGroup:
          type: string
        senderID:
          type: string
        senderType:
          type: string
        senderUserId:
          type: string
      type: object
    notifications.MemberType:
      enum:
        - USER
        - CLIENT_USER
        - CLIENT_COMPANY
      type: string
      x-enum-varnames:
        - Internal
        - Client
        - Company
    notifications.Reminders:
      properties:
        scheduled:
          items:
            type: string
          type: array
        sent:
          items:
            type: string
          type: array
      type: object
    notifications.EmailDeliveryTarget:
      properties:
        body:
          description: >-
            Body is the plain-text email body. Either body or htmlBody must be
            provided.
          example: A new file was uploaded to your portal.
          type: string
        ctaParams:
          additionalProperties:
            type: string
          description: >-
            CtaParams are key/value parameters used to build the email's
            call-to-action link.
          type: object
        header:
          description: Header is the email header. Required.
          example: You have a new file
          type: string
        htmlBody:
          description: >-
            HtmlBody is HTML for the email body, sanitized to a safe subset
            (basic formatting, lists, and https links); other tags, inline
            styles, images and scripts are stripped. Either body or htmlBody
            must be provided.
          example: <p>A new file was uploaded to your portal.</p>
          type: string
        subject:
          description: Subject is the email subject line. Required.
          example: New file uploaded
          type: string
        title:
          description: Title is the email title. Required.
          example: New file uploaded
          type: string
      required:
        - header
        - subject
        - title
      type: object
    notifications.InProductDeliveryTarget:
      properties:
        body:
          description: Body is the optional supporting text shown beneath the title.
          example: A new file was uploaded to your portal.
          type: string
        ctaParams:
          additionalProperties:
            type: string
          description: >-
            CtaParams are key/value parameters used to build the notification's
            call-to-action link.
          type: object
        isRead:
          description: >-
            IsRead indicates whether the recipient has read the notification.
            Read-only.
          example: false
          type: boolean
        title:
          description: Title is the headline shown in the inbox. Required.
          example: New file uploaded
          type: string
      required:
        - title
      type: object
  securitySchemes:
    APIKeyHeader:
      in: header
      name: X-API-KEY
      type: apiKey

````