naftiko: 1.0.0-alpha2 info: label: Suger API — Notification description: 'Suger API — Notification. 4 operations. Lead operation: List Notification Events. Self-contained Naftiko capability covering one Suger business surface.' tags: - Suger - Notification created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: SUGER_API_KEY: SUGER_API_KEY capability: consumes: - type: http namespace: suger-notification baseUri: https://api.suger.cloud description: Suger API — Notification business capability. Self-contained, no shared references. resources: - name: org-orgId-notificationEvent path: /org/{orgId}/notificationEvent operations: - name: listnotificationevents method: GET description: List Notification Events outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: orgId in: path type: string description: Organization ID required: true - name: startDate in: query type: string description: start date (UTC) in YYYY-MM-DD format, default is 30 days before the endDate - name: endDate in: query type: string description: end date (UTC) in YYYY-MM-DD format, default is today - name: limit in: query type: integer description: List pagination size, default 1000, max value is 1000 - name: offset in: query type: integer description: List pagination offset, default 0 - name: priorities in: query type: string description: 'Filter by priorities, empty means HIGH and CRITICAL only. Valid values are: LOW, MEDIUM, HIGH, CRITICAL. Multiple values are supported, separated by comma.' - name: org-orgId-notificationEvent-entityType-entityId path: /org/{orgId}/notificationEvent/{entityType}/{entityId} operations: - name: listnotificationeventsbyentity method: GET description: List Notification Events By Entity outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: orgId in: path type: string description: Organization ID required: true - name: entityType in: path type: string description: 'Entity type, valid values are: PRODUCT, OFFER, ENTITLEMENT, INTEGRATION etc.' required: true - name: entityId in: path type: string description: Entity ID required: true - name: limit in: query type: integer description: List pagination size, default 1000, max value is 1000 - name: offset in: query type: integer description: List pagination offset, default 0 - name: org-orgId-notificationMessage path: /org/{orgId}/notificationMessage operations: - name: listnotificationmessages method: GET description: List Notification Messages outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: orgId in: path type: string description: Organization ID required: true - name: limit in: query type: integer description: List pagination size, default 1000, max value is 1000 - name: offset in: query type: integer description: List pagination offset, default 0 - name: org-orgId-notificationMessage-notificationMessageId path: /org/{orgId}/notificationMessage/{notificationMessageId} operations: - name: getnotificationmessage method: GET description: Get Notification Message outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: orgId in: path type: string description: Organization ID required: true - name: notificationMessageId in: path type: string description: Notification Message ID required: true authentication: type: apikey key: Authorization value: '{{env.SUGER_API_KEY}}' placement: header exposes: - type: rest namespace: suger-notification-rest port: 8080 description: REST adapter for Suger API — Notification. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/org/{orgid}/notificationevent name: org-orgid-notificationevent description: REST surface for org-orgId-notificationEvent. operations: - method: GET name: listnotificationevents description: List Notification Events call: suger-notification.listnotificationevents with: orgId: rest.orgId startDate: rest.startDate endDate: rest.endDate limit: rest.limit offset: rest.offset priorities: rest.priorities outputParameters: - type: object mapping: $. - path: /v1/org/{orgid}/notificationevent/{entitytype}/{entityid} name: org-orgid-notificationevent-entitytype-entityid description: REST surface for org-orgId-notificationEvent-entityType-entityId. operations: - method: GET name: listnotificationeventsbyentity description: List Notification Events By Entity call: suger-notification.listnotificationeventsbyentity with: orgId: rest.orgId entityType: rest.entityType entityId: rest.entityId limit: rest.limit offset: rest.offset outputParameters: - type: object mapping: $. - path: /v1/org/{orgid}/notificationmessage name: org-orgid-notificationmessage description: REST surface for org-orgId-notificationMessage. operations: - method: GET name: listnotificationmessages description: List Notification Messages call: suger-notification.listnotificationmessages with: orgId: rest.orgId limit: rest.limit offset: rest.offset outputParameters: - type: object mapping: $. - path: /v1/org/{orgid}/notificationmessage/{notificationmessageid} name: org-orgid-notificationmessage-notificationmessageid description: REST surface for org-orgId-notificationMessage-notificationMessageId. operations: - method: GET name: getnotificationmessage description: Get Notification Message call: suger-notification.getnotificationmessage with: orgId: rest.orgId notificationMessageId: rest.notificationMessageId outputParameters: - type: object mapping: $. - type: mcp namespace: suger-notification-mcp port: 9090 transport: http description: MCP adapter for Suger API — Notification. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-notification-events description: List Notification Events hints: readOnly: true destructive: false idempotent: true call: suger-notification.listnotificationevents with: orgId: tools.orgId startDate: tools.startDate endDate: tools.endDate limit: tools.limit offset: tools.offset priorities: tools.priorities outputParameters: - type: object mapping: $. - name: list-notification-events-entity description: List Notification Events By Entity hints: readOnly: true destructive: false idempotent: true call: suger-notification.listnotificationeventsbyentity with: orgId: tools.orgId entityType: tools.entityType entityId: tools.entityId limit: tools.limit offset: tools.offset outputParameters: - type: object mapping: $. - name: list-notification-messages description: List Notification Messages hints: readOnly: true destructive: false idempotent: true call: suger-notification.listnotificationmessages with: orgId: tools.orgId limit: tools.limit offset: tools.offset outputParameters: - type: object mapping: $. - name: get-notification-message description: Get Notification Message hints: readOnly: true destructive: false idempotent: true call: suger-notification.getnotificationmessage with: orgId: tools.orgId notificationMessageId: tools.notificationMessageId outputParameters: - type: object mapping: $.