openapi: 3.0.0 info: title: Lightdash AiAgents Notifications API version: 0.3156.1 description: 'Open API documentation for all public Lightdash API endpoints. # Authentication Before you get started, you might need to create a Personal Access Token to authenticate via the API. You can create a token by following this guide: https://docs.lightdash.com/references/personal_tokens ' license: name: MIT contact: name: Lightdash Support email: support@lightdash.com url: https://docs.lightdash.com/help-and-contact/contact/contact_info/ servers: - url: / tags: - name: Notifications paths: /api/v1/notifications: get: operationId: getNotifications responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiGetNotifications' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Gets notifications for a user based on the type summary: Get notifications tags: - Notifications security: [] parameters: - in: query name: type required: true schema: $ref: '#/components/schemas/ApiNotificationResourceType' /api/v1/notifications/{notificationId}: patch: operationId: updateNotification responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSuccessEmpty' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Update notification summary: Update notification tags: - Notifications security: [] parameters: - description: the id of the notification in: path name: notificationId required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApiNotificationUpdateParams' components: schemas: ApiNotificationResourceType.DashboardComments: enum: - dashboardComments type: string Pick_Notification.viewed_: properties: viewed: type: boolean required: - viewed type: object description: From T, pick a set of properties whose keys are in the union K ApiGetNotifications: properties: results: $ref: '#/components/schemas/ApiNotificationsResults' status: type: string enum: - ok nullable: false required: - results - status type: object AnyType: description: 'This AnyType is an alias for any The goal is to make it easier to identify any type in the codebase without having to eslint-disable all the time These are only used on legacy `any` types, don''t use it for new types. This is added on a separate file to avoid circular dependencies.' ApiErrorPayload: properties: error: properties: data: $ref: '#/components/schemas/AnyType' description: Optional data containing details of the error message: type: string description: A friendly message summarising the error name: type: string description: Unique name for the type of error statusCode: type: number format: integer description: HTTP status code required: - name - statusCode type: object status: type: string enum: - error nullable: false required: - error - status type: object description: 'The Error object is returned from the api any time there is an error. The message contains' ApiSuccessEmpty: properties: results: {} status: type: string enum: - ok nullable: false required: - status type: object ApiNotificationResourceType: enum: - dashboardComments type: string ApiNotificationsResults: items: $ref: '#/components/schemas/Notification' type: array NotificationDashboardComment: allOf: - $ref: '#/components/schemas/NotificationBase' - properties: metadata: $ref: '#/components/schemas/NotificationDashboardTileCommentMetadata' resourceType: $ref: '#/components/schemas/ApiNotificationResourceType.DashboardComments' required: - resourceType type: object ApiNotificationUpdateParams: $ref: '#/components/schemas/Pick_Notification.viewed_' NotificationBase: properties: url: type: string message: type: string resourceUuid: type: string viewed: type: boolean createdAt: type: string format: date-time notificationId: type: string required: - viewed - createdAt - notificationId type: object Notification: $ref: '#/components/schemas/NotificationDashboardComment' NotificationDashboardTileCommentMetadata: properties: dashboardUuid: type: string dashboardName: type: string dashboardTileUuid: type: string dashboardTileName: type: string required: - dashboardUuid - dashboardName - dashboardTileUuid - dashboardTileName type: object additionalProperties: true securitySchemes: session_cookie: type: apiKey in: cookie name: connect.sid api_key: type: apiKey in: header name: Authorization description: Value should be 'ApiKey '