Audius notifications API

The notifications API from Audius — 2 operation(s) for notifications.

OpenAPI Specification

audius-notifications-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: Audius challenges notifications API
  description: '## Overview


    The Audius API provides REST access to the world''s largest open music catalog, built on the [Open Audio Protocol](https://openaudio.org). Use it to query and stream tracks, users, playlists, and more—perfect for building music players, discovery apps, and audio-native products.


    ## Key Capabilities


    - **Users** — Profiles, followers, following, search

    - **Tracks** — Search, trending, stream, favorites, reposts

    - **Playlists** — Create, update, browse, curate

    - **Resolve** — Look up content by Audius canonical URLs (e.g. `audius.co/artist/...`)

    - **Explore** — Trending content, charts, discovery

    - **Comments, Tips, Rewards** — Social features and engagement


    ## Authentication


    - **Read-only** — Most endpoints work without credentials. Use an API key for higher rate limits.

    - **Writes** — Upload, favorite, repost, and other mutations require an API key and secret. Get keys at [api.audius.co/plans](https://api.audius.co/plans) or [audius.co/settings](https://audius.co/settings).


    ## Resources


    - [API Docs](https://docs.audius.co/api) — Full reference and guides

    - [API Plans](https://api.audius.co/plans) — Get API keys (free tier available)

    - [Log in with Audius](https://docs.audius.co/developers/guides/log-in-with-audius) — OAuth for user actions

    - [JavaScript SDK](https://www.npmjs.com/package/@audius/sdk) — `@audius/sdk` for Node and browser

    '
  version: '1.0'
  contact:
    name: Audius
    url: https://audius.co
  x-logo:
    url: https://audius.co/favicons/favicon.ico
servers:
- url: https://api.audius.co/v1
  description: Production
tags:
- name: notifications
paths:
  /notifications/{user_id}:
    get:
      tags:
      - notifications
      description: Get notifications for user ID
      operationId: Get Notifications
      parameters:
      - name: user_id
        in: path
        description: A User ID
        required: true
        schema:
          type: string
      - name: timestamp
        in: query
        description: The timestamp from which to paginate
        schema:
          type: integer
      - name: group_id
        in: query
        description: The group_id form which to paginate
        schema:
          type: string
      - name: limit
        in: query
        description: The number of notifications to return
        schema:
          type: integer
      - name: types
        in: query
        description: Additional valid notification types to return
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
            enum:
            - announcement
            - follow
            - repost
            - save
            - remix
            - cosign
            - create
            - tip_receive
            - tip_send
            - challenge_reward
            - repost_of_repost
            - save_of_repost
            - tastemaker
            - reaction
            - supporter_dethroned
            - supporter_rank_up
            - supporting_rank_up
            - milestone
            - track_milestone
            - track_added_to_playlist
            - playlist_milestone
            - tier_change
            - trending
            - trending_playlist
            - trending_underground
            - usdc_purchase_buyer
            - usdc_purchase_seller
            - track_added_to_purchased_album
            - request_manager
            - approve_manager_request
            - claimable_reward
            - comment
            - comment_thread
            - comment_mention
            - comment_reaction
            - listen_streak_reminder
            - fan_remix_contest_started
            - fan_remix_contest_ended
            - fan_remix_contest_ending_soon
            - fan_remix_contest_winners_selected
            - artist_remix_contest_ended
            - artist_remix_contest_ending_soon
            - artist_remix_contest_submissions
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/notifications_response'
  /notifications/{user_id}/playlist_updates:
    get:
      tags:
      - notifications
      description: Get playlists the user has saved that have been updated for user ID
      operationId: Get Playlist Updates
      parameters:
      - name: user_id
        in: path
        description: A User ID
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/playlist_updates_response'
components:
  schemas:
    save_of_repost_notification_action_data:
      required:
      - save_of_repost_item_id
      - type
      - user_id
      type: object
      properties:
        type:
          type: string
          example: track
          enum:
          - track
          - playlist
          - album
        user_id:
          type: string
        save_of_repost_item_id:
          type: string
    follow_notification_action:
      required:
      - data
      - specifier
      - timestamp
      - type
      type: object
      properties:
        specifier:
          type: string
        type:
          type: string
        timestamp:
          type: integer
        data:
          $ref: '#/components/schemas/follow_notification_action_data'
    artist_remix_contest_submissions_notification_action_data:
      required:
      - entity_id
      - event_id
      - milestone
      type: object
      properties:
        event_id:
          type: string
        milestone:
          type: integer
        entity_id:
          type: string
    usdc_purchase_seller_notification_action_data:
      required:
      - amount
      - buyer_user_id
      - content_id
      - content_type
      - extra_amount
      - seller_user_id
      type: object
      properties:
        content_type:
          type: string
        buyer_user_id:
          type: string
        seller_user_id:
          type: string
        amount:
          type: string
        extra_amount:
          type: string
        content_id:
          type: string
    approve_manager_request_notification_action:
      required:
      - data
      - specifier
      - timestamp
      - type
      type: object
      properties:
        specifier:
          type: string
        type:
          type: string
        timestamp:
          type: integer
        data:
          $ref: '#/components/schemas/approve_manager_request_notification_action_data'
    approve_manager_request_notification_action_data:
      required:
      - grantee_address
      - grantee_user_id
      - user_id
      type: object
      properties:
        user_id:
          type: string
        grantee_user_id:
          type: string
        grantee_address:
          type: string
    create_track_notification_action_data:
      required:
      - track_id
      type: object
      properties:
        track_id:
          type: string
    comment_reaction_notification:
      required:
      - actions
      - group_id
      - is_seen
      - type
      type: object
      properties:
        type:
          type: string
        group_id:
          type: string
        is_seen:
          type: boolean
        seen_at:
          type: integer
        actions:
          type: array
          items:
            $ref: '#/components/schemas/comment_reaction_notification_action'
    fan_remix_contest_ending_soon_notification:
      required:
      - actions
      - group_id
      - is_seen
      - type
      type: object
      properties:
        type:
          type: string
        group_id:
          type: string
        is_seen:
          type: boolean
        seen_at:
          type: integer
        actions:
          type: array
          items:
            $ref: '#/components/schemas/fan_remix_contest_ending_soon_notification_action'
    tastemaker_notification:
      required:
      - actions
      - group_id
      - is_seen
      - type
      type: object
      properties:
        type:
          type: string
        group_id:
          type: string
        is_seen:
          type: boolean
        seen_at:
          type: integer
        actions:
          type: array
          items:
            $ref: '#/components/schemas/tastemaker_notification_action'
    artist_remix_contest_ended_notification_action_data:
      required:
      - entity_id
      type: object
      properties:
        entity_id:
          type: string
    track_added_to_purchased_album_notification_action:
      required:
      - data
      - specifier
      - timestamp
      - type
      type: object
      properties:
        specifier:
          type: string
        type:
          type: string
        timestamp:
          type: integer
        data:
          $ref: '#/components/schemas/track_added_to_purchased_album_notification_action_data'
    fan_remix_contest_ended_notification:
      required:
      - actions
      - group_id
      - is_seen
      - type
      type: object
      properties:
        type:
          type: string
        group_id:
          type: string
        is_seen:
          type: boolean
        seen_at:
          type: integer
        actions:
          type: array
          items:
            $ref: '#/components/schemas/fan_remix_contest_ended_notification_action'
    comment_thread_notification_action:
      required:
      - data
      - specifier
      - timestamp
      - type
      type: object
      properties:
        specifier:
          type: string
        type:
          type: string
        timestamp:
          type: integer
        data:
          $ref: '#/components/schemas/comment_thread_notification_action_data'
    playlist_update:
      required:
      - playlist_id
      - updated_at
      type: object
      properties:
        playlist_id:
          type: string
        updated_at:
          type: integer
        last_seen_at:
          type: integer
    announcement_notification_action_data:
      required:
      - long_description
      - push_body
      - short_description
      - title
      - route
      type: object
      properties:
        title:
          type: string
        push_body:
          type: string
        short_description:
          type: string
        long_description:
          type: string
        route:
          type: string
    milestone_notification:
      required:
      - actions
      - group_id
      - is_seen
      - type
      type: object
      properties:
        type:
          type: string
        group_id:
          type: string
        is_seen:
          type: boolean
        seen_at:
          type: integer
        actions:
          type: array
          items:
            $ref: '#/components/schemas/milestone_notification_action'
    request_manager_notification_action_data:
      required:
      - grantee_address
      - grantee_user_id
      - user_id
      type: object
      properties:
        user_id:
          type: string
        grantee_user_id:
          type: string
        grantee_address:
          type: string
    listen_streak_reminder_notification_action_data:
      required:
      - streak
      type: object
      properties:
        streak:
          type: integer
    usdc_purchase_buyer_notification:
      required:
      - actions
      - group_id
      - is_seen
      - type
      type: object
      properties:
        type:
          type: string
        group_id:
          type: string
        is_seen:
          type: boolean
        seen_at:
          type: integer
        actions:
          type: array
          items:
            $ref: '#/components/schemas/usdc_purchase_buyer_notification_action'
    create_notification_action:
      required:
      - data
      - specifier
      - timestamp
      - type
      type: object
      properties:
        specifier:
          type: string
        type:
          type: string
        timestamp:
          type: integer
        data:
          $ref: '#/components/schemas/create_notification_action_data'
    create_playlist_notification_action_data:
      required:
      - is_album
      - playlist_id
      type: object
      properties:
        is_album:
          type: boolean
        playlist_id:
          type: string
    receive_tip_notification:
      required:
      - actions
      - group_id
      - is_seen
      - type
      type: object
      properties:
        type:
          type: string
        group_id:
          type: string
        is_seen:
          type: boolean
        seen_at:
          type: integer
        actions:
          type: array
          items:
            $ref: '#/components/schemas/receive_tip_notification_action'
    send_tip_notification:
      required:
      - actions
      - group_id
      - is_seen
      - type
      type: object
      properties:
        type:
          type: string
        group_id:
          type: string
        is_seen:
          type: boolean
        seen_at:
          type: integer
        actions:
          type: array
          items:
            $ref: '#/components/schemas/send_tip_notification_action'
    fan_remix_contest_winners_selected_notification_action_data:
      required:
      - entity_id
      - entity_user_id
      type: object
      properties:
        entity_user_id:
          type: string
        entity_id:
          type: string
    notifications:
      required:
      - unread_count
      type: object
      properties:
        notifications:
          type: array
          items:
            $ref: '#/components/schemas/notification'
        unread_count:
          type: integer
    repost_of_repost_notification:
      required:
      - actions
      - group_id
      - is_seen
      - type
      type: object
      properties:
        type:
          type: string
        group_id:
          type: string
        is_seen:
          type: boolean
        seen_at:
          type: integer
        actions:
          type: array
          items:
            $ref: '#/components/schemas/repost_of_repost_notification_action'
    trending_notification_action:
      required:
      - data
      - specifier
      - timestamp
      - type
      type: object
      properties:
        specifier:
          type: string
        type:
          type: string
        timestamp:
          type: integer
        data:
          $ref: '#/components/schemas/trending_notification_action_data'
    trending_underground_notification_action:
      required:
      - data
      - specifier
      - timestamp
      - type
      type: object
      properties:
        specifier:
          type: string
        type:
          type: string
        timestamp:
          type: integer
        data:
          $ref: '#/components/schemas/trending_underground_notification_action_data'
    create_notification_action_data:
      oneOf:
      - $ref: '#/components/schemas/create_playlist_notification_action_data'
      - $ref: '#/components/schemas/create_track_notification_action_data'
    remix_notification_action:
      required:
      - data
      - specifier
      - timestamp
      - type
      type: object
      properties:
        specifier:
          type: string
        type:
          type: string
        timestamp:
          type: integer
        data:
          $ref: '#/components/schemas/remix_notification_action_data'
    track_added_to_playlist_notification_action_data:
      required:
      - playlist_id
      - playlist_owner_id
      - track_id
      type: object
      properties:
        track_id:
          type: string
        playlist_id:
          type: string
        playlist_owner_id:
          type: string
    tastemaker_notification_action_data:
      required:
      - action
      - tastemaker_item_id
      - tastemaker_item_owner_id
      - tastemaker_item_type
      - tastemaker_user_id
      type: object
      properties:
        tastemaker_item_owner_id:
          type: string
        tastemaker_item_id:
          type: string
        action:
          type: string
        tastemaker_item_type:
          type: string
        tastemaker_user_id:
          type: string
    comment_mention_notification_action_data:
      required:
      - comment_user_id
      - entity_id
      - entity_user_id
      - type
      type: object
      properties:
        type:
          type: string
          example: Track
          enum:
          - Track
          - Playlist
          - Album
        entity_id:
          type: string
        entity_user_id:
          type: string
        comment_user_id:
          type: string
        comment_id:
          type: string
    trending_underground_notification_action_data:
      required:
      - genre
      - rank
      - time_range
      - track_id
      type: object
      properties:
        rank:
          type: integer
        genre:
          type: string
        track_id:
          type: string
        time_range:
          type: string
          example: week
          enum:
          - week
          - month
          - year
    approve_manager_request_notification:
      required:
      - actions
      - group_id
      - is_seen
      - type
      type: object
      properties:
        type:
          type: string
        group_id:
          type: string
        is_seen:
          type: boolean
        seen_at:
          type: integer
        actions:
          type: array
          items:
            $ref: '#/components/schemas/approve_manager_request_notification_action'
    listen_streak_reminder_notification_action:
      required:
      - data
      - specifier
      - timestamp
      - type
      type: object
      properties:
        specifier:
          type: string
        type:
          type: string
        timestamp:
          type: integer
        data:
          $ref: '#/components/schemas/listen_streak_reminder_notification_action_data'
    supporter_rank_up_notification:
      required:
      - actions
      - group_id
      - is_seen
      - type
      type: object
      properties:
        type:
          type: string
        group_id:
          type: string
        is_seen:
          type: boolean
        seen_at:
          type: integer
        actions:
          type: array
          items:
            $ref: '#/components/schemas/supporter_rank_up_notification_action'
    supporter_dethroned_notification:
      required:
      - actions
      - group_id
      - is_seen
      - type
      type: object
      properties:
        type:
          type: string
        group_id:
          type: string
        is_seen:
          type: boolean
        seen_at:
          type: integer
        actions:
          type: array
          items:
            $ref: '#/components/schemas/supporter_dethroned_notification_action'
    receive_tip_notification_action_data:
      required:
      - amount
      - reaction_value
      - receiver_user_id
      - sender_user_id
      - tip_tx_signature
      type: object
      properties:
        amount:
          type: string
        sender_user_id:
          type: string
        receiver_user_id:
          type: string
        tip_tx_signature:
          type: string
        reaction_value:
          type: integer
    fan_remix_contest_winners_selected_notification_action:
      required:
      - data
      - specifier
      - timestamp
      - type
      type: object
      properties:
        specifier:
          type: string
        type:
          type: string
        timestamp:
          type: integer
        data:
          $ref: '#/components/schemas/fan_remix_contest_winners_selected_notification_action_data'
    milestone_notification_action_data:
      oneOf:
      - $ref: '#/components/schemas/user_milestone_notification_action_data'
      - $ref: '#/components/schemas/track_milestone_notification_action_data'
      - $ref: '#/components/schemas/playlist_milestone_notification_action_data'
    comment_notification:
      required:
      - actions
      - group_id
      - is_seen
      - type
      type: object
      properties:
        type:
          type: string
        group_id:
          type: string
        is_seen:
          type: boolean
        seen_at:
          type: integer
        actions:
          type: array
          items:
            $ref: '#/components/schemas/comment_notification_action'
    trending_underground_notification:
      required:
      - actions
      - group_id
      - is_seen
      - type
      type: object
      properties:
        type:
          type: string
        group_id:
          type: string
        is_seen:
          type: boolean
        seen_at:
          type: integer
        actions:
          type: array
          items:
            $ref: '#/components/schemas/trending_underground_notification_action'
    comment_mention_notification_action:
      required:
      - data
      - specifier
      - timestamp
      - type
      type: object
      properties:
        specifier:
          type: string
        type:
          type: string
        timestamp:
          type: integer
        data:
          $ref: '#/components/schemas/comment_mention_notification_action_data'
    artist_remix_contest_ending_soon_notification_action_data:
      required:
      - entity_id
      - entity_user_id
      type: object
      properties:
        entity_user_id:
          type: string
        entity_id:
          type: string
    comment_reaction_notification_action_data:
      required:
      - entity_id
      - entity_user_id
      - reacter_user_id
      - type
      type: object
      properties:
        type:
          type: string
          example: Track
          enum:
          - Track
          - Playlist
          - Album
        entity_id:
          type: string
        entity_user_id:
          type: string
        reacter_user_id:
          type: string
        comment_id:
          type: string
    fan_remix_contest_ended_notification_action_data:
      required:
      - entity_id
      - entity_user_id
      type: object
      properties:
        entity_user_id:
          type: string
        entity_id:
          type: string
    save_notification_action_data:
      required:
      - save_item_id
      - type
      - user_id
      type: object
      properties:
        type:
          type: string
          example: track
          enum:
          - track
          - playlist
          - album
        user_id:
          type: string
        save_item_id:
          type: string
    tastemaker_notification_action:
      required:
      - data
      - specifier
      - timestamp
      - type
      type: object
      properties:
        specifier:
          type: string
        type:
          type: string
        timestamp:
          type: integer
        data:
          $ref: '#/components/schemas/tastemaker_notification_action_data'
    reaction_notification:
      required:
      - actions
      - group_id
      - is_seen
      - type
      type: object
      properties:
        type:
          type: string
        group_id:
          type: string
        is_seen:
          type: boolean
        seen_at:
          type: integer
        actions:
          type: array
          items:
            $ref: '#/components/schemas/reaction_notification_action'
    track_added_to_purchased_album_notification:
      required:
      - actions
      - group_id
      - is_seen
      - type
      type: object
      properties:
        type:
          type: string
        group_id:
          type: string
        is_seen:
          type: boolean
        seen_at:
          type: integer
        actions:
          type: array
          items:
            $ref: '#/components/schemas/track_added_to_purchased_album_notification_action'
    comment_thread_notification_action_data:
      required:
      - comment_user_id
      - entity_id
      - entity_user_id
      - type
      type: object
      properties:
        type:
          type: string
          example: Track
          enum:
          - Track
          - Playlist
          - Album
        entity_id:
          type: string
        entity_user_id:
          type: string
        comment_user_id:
          type: string
        comment_id:
          type: string
    fan_remix_contest_ending_soon_notification_action_data:
      required:
      - entity_id
      - entity_user_id
      type: object
      properties:
        entity_user_id:
          type: string
        entity_id:
          type: string
    challenge_reward_notification:
      required:
      - actions
      - group_id
      - is_seen
      - type
      type: object
      properties:
        type:
          type: string
        group_id:
          type: string
        is_seen:
          type: boolean
        seen_at:
          type: integer
        actions:
          type: array
          items:
            $ref: '#/components/schemas/challenge_reward_notification_action'
    comment_reaction_notification_action:
      required:
      - data
      - specifier
      - timestamp
      - type
      type: object
      properties:
        specifier:
          type: string
        type:
          type: string
        timestamp:
          type: integer
        data:
          $ref: '#/components/schemas/comment_reaction_notification_action_data'
    receive_tip_notification_action:
      required:
      - data
      - specifier
      - timestamp
      - type
      type: object
      properties:
        specifier:
          type: string
        type:
          type: string
        timestamp:
          type: integer
        data:
          $ref: '#/components/schemas/receive_tip_notification_action_data'
    repost_notification:
      required:
      - actions
      - group_id
      - is_seen
      - type
      type: object
      properties:
        type:
          type: string
        group_id:
          type: string
        is_seen:
          type: boolean
        seen_at:
          type: integer
        actions:
          type: array
          items:
            $ref: '#/components/schemas/repost_notification_action'
    trending_playlist_notification_action:
      required:
      - data
      - specifier
      - timestamp
      - type
      type: object
      properties:
        specifier:
          type: string
        type:
          type: string
        timestamp:
          type: integer
        data:
          $ref: '#/components/schemas/trending_playlist_notification_action_data'
    cosign_notification_action_data:
      required:
      - parent_track_id
      - track_id
      - track_owner_id
      type: object
      properties:
        parent_track_id:
          type: string
        track_id:
          type: string
        track_owner_id:
          type: string
    trending_playlist_notification:
      required:
      - actions
      - group_id
      - is_seen
      - type
      type: object
      properties:
        type:
          type: string
        group_id:
          type: string
        is_seen:
          type: boolean
        seen_at:
          type: integer
        actions:
          type: array
          items:
            $ref: '#/components/schemas/trending_playlist_notification_action'
    usdc_purchase_seller_notification_action:
      required:
      - data
      - specifier
      - timestamp
      - type
      type: object
      properties:
        specifier:
          type: string
        type:
          type: string
        timestamp:
          type: integer
        data:
          $ref: '#/components/schemas/usdc_purchase_seller_notification_action_data'
    artist_remix_contest_ending_soon_notification:
      required:
      - actions
      - group_id
      - is_seen
      - type
      type: object
      properties:
        type:
          type: string
        group_id:
          type: string
        is_seen:
          type: boolean
        seen_at:
          type: integer
        actions:
          type: array
          items:
            $ref: '#/components/schemas/artist_remix_contest_ending_soon_notification_action'
    notifications_response:
      required:
      - latest_chain_block
      - latest_chain_slot_plays
      - latest_indexed_block
      - latest_indexed_slot_plays
      - signature
      - timestamp
      - version
      type: object
      properties:
        latest_chain_block:
          type: integer
        latest_indexed_block:
          type: integer
        latest_chain_slot_plays:
          type: integer
        latest_indexed_slot_plays:
          type: integer
        signature:
          type: string
        timestamp:
          type: string
        version:
          $ref: '#/components/schemas/version_metadata'
        data:
          $ref: '#/components/schemas/notifications'
    tier_change_notification_action:
      required:
      - data
      - specifier
      - timestamp
      - type
      type: object
      properties:
        specifier:
          type: string
        type:
          type: string
        timestamp:
          type: integer
        data:
          $ref: '#/components/schemas/tier_change_notification_action_data'
    reaction_notification_action_data:
      required:
      - reacted_to
      - reaction_type
      - reaction_value
      - receiver_user_id
      - sender_user_id
      - sender_wallet
      - tip_amount
      type: object
      properties:
        reacted_to:
          type: string
        reaction_type:
          type: string
        reaction_value:
          type: integer
        receiver_user_id:
          type: string
        sender_user_id:
          type: string
        sender_wallet:
          type: string
        tip_amount:
          type: string
    comment_notification_action_data:
      required:
      - comment_user_id
      - entity_id
      - type
      type: object
      properties:
        type:
          type: string
          example: Track
          enum:
          - Track
          - Playlist
          - Album
        entity_id:
          type: string
        comment_user_id:
          type: string
        comment_id:
          type: string
    fan_remix_contest_started_notification_action:
      required:
      - data
      - specifier
      - timestamp
      - type
      type: object
      properties:
        specifier:
          type: string
        type:
          type: string
        timestamp:
          type: integer
        data:
          $ref: '#/components/schemas/fan_remix_contest_started_notification_action_data'
    usdc_purchase_seller_notification:
      required:
      - actions
      - group_id
      - is_seen
      - type
      type: object
      properties:
        type:
          type: string
        group_id:
          type: string
        is_seen:
          type: boolean
        seen_at:
          type: integer
        actions:
          type: array
          items:
            $ref: '#/components/schemas/usdc_purchase_seller_notification_action'
    artist_remix_contest_ended_notification_action:
      required:
      - data
      - specifier
      - timestamp
      - type
      type: object
      properties:
        specifier:
          type: string
        type:
          type: string
        timestamp:
          type: integer
        data:
          $ref: '#/components/schemas/artist_remix_contest_ended_notification_action_data'
    fan_remix_contest_started_notification_action_data:
      required:
      - entity_id
      - entity_user_id
      type: object
      properties:
        entity_user_id:
          type: string
        entity_id:
          type: string
    follow_notification_action_data:
      required:
      - followee_user_id
      - follower_user_id
      type: object
      properties:
        follower_user_id:
          type: string
        followee_user_id:
          type: string
    artist_remix_contest_submissions_notification_action:
      required:
      - data
      - specifier
      - timestamp
      - type
      type: object
      properties:
        specifier:
          type: string
        type:
          type: string
        timestamp:
          type: integer
        data:
          $ref: '#/components/schemas/artist_remix_contest_submissions_notification_action_data'
    announcement_notification_action:
      required:
      - data
      - specifier
      - timestamp
      - type
      type: object
      properties:
        speci

# --- truncated at 32 KB (61 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/audius/refs/heads/main/openapi/audius-notifications-api-openapi.yml