{"files":{"SKILL.md":"---\nname: notification-configuration-api\ndescription: \"Notification Configuration API skill. Use when working with Notification Configuration for createNotificationConfiguration, deleteNotificationConfigurations, getNotificationConfiguration. Covers 6 endpoints.\"\nversion: 1.0.0\ngenerator: lapsh\n---\n\n# Notification Configuration API\nAPI version: 6\n\n## Auth\nApiKey X-API-Key in header | Bearer basic\n\n## Base URL\nhttps://cal-test.adyen.com/cal/services/Notification/v6\n\n## Setup\n1. Set Authorization header with Bearer token\n2. Verify API access with a test request\n3. POST /createNotificationConfiguration -- create first createNotificationConfiguration\n\n## Endpoints\n6 endpoints across 6 groups. See references/api-spec.lap for full details.\n\n### CreateNotificationConfiguration\n| Method | Path | Description |\n|--------|------|-------------|\n| POST | /createNotificationConfiguration | Subscribe to notifications |\n\n### DeleteNotificationConfigurations\n| Method | Path | Description |\n|--------|------|-------------|\n| POST | /deleteNotificationConfigurations | Delete a notification subscription configuration |\n\n### GetNotificationConfiguration\n| Method | Path | Description |\n|--------|------|-------------|\n| POST | /getNotificationConfiguration | Get a notification subscription configuration |\n\n### GetNotificationConfigurationList\n| Method | Path | Description |\n|--------|------|-------------|\n| POST | /getNotificationConfigurationList | Get a list of notification subscription configurations |\n\n### TestNotificationConfiguration\n| Method | Path | Description |\n|--------|------|-------------|\n| POST | /testNotificationConfiguration | Test a notification configuration |\n\n### UpdateNotificationConfiguration\n| Method | Path | Description |\n|--------|------|-------------|\n| POST | /updateNotificationConfiguration | Update a notification subscription configuration |\n\n## Common Questions\nMatch user requests to endpoints in references/api-spec.lap. Key patterns:\n- \"Create a createNotificationConfiguration?\" -> POST /createNotificationConfiguration\n- \"Create a deleteNotificationConfiguration?\" -> POST /deleteNotificationConfigurations\n- \"Create a getNotificationConfiguration?\" -> POST /getNotificationConfiguration\n- \"Create a getNotificationConfigurationList?\" -> POST /getNotificationConfigurationList\n- \"Create a testNotificationConfiguration?\" -> POST /testNotificationConfiguration\n- \"Create a updateNotificationConfiguration?\" -> POST /updateNotificationConfiguration\n- \"How to authenticate?\" -> See Auth section above\n\n## Response Tips\n- Check response schemas in references/api-spec.lap for field details\n- Create/update endpoints return the modified resource on success\n- Error responses include status codes and descriptions in the spec\n\n## References\n- Full spec: See references/api-spec.lap for complete endpoint details, parameter tables, and response schemas\n\n> Generated from the official API spec by [LAP](https://lap.sh)\n","references/api-spec.lap":"@lap v0.3\n# Machine-readable API spec. Each @endpoint block is one API call.\n@api Notification Configuration API\n@base https://cal-test.adyen.com/cal/services/Notification/v6\n@version 6\n@auth ApiKey X-API-Key in header | Bearer basic\n@endpoints 6\n@toc createNotificationConfiguration(1), deleteNotificationConfigurations(1), getNotificationConfiguration(1), getNotificationConfigurationList(1), testNotificationConfiguration(1), updateNotificationConfiguration(1)\n\n@group createNotificationConfiguration\n@endpoint POST /createNotificationConfiguration\n@desc Subscribe to notifications\n@required {configurationDetails: map{active: bool, apiVersion: int(int32), description: str, eventConfigs: [map], hmacSignatureKey: str, notificationId: int(int64), notifyPassword: str, notifyURL: str, notifyUsername: str, sslProtocol: str}}\n@returns(200) {configurationDetails: map{active: bool, apiVersion: int(int32), description: str, eventConfigs: [map], hmacSignatureKey: str, notificationId: int(int64), notifyPassword: str, notifyURL: str, notifyUsername: str, sslProtocol: str}, invalidFields: [map], pspReference: str, resultCode: str} # OK - the request has succeeded.\n@errors {400: Bad Request - a problem reading or understanding the request., 401: Unauthorized - authentication required., 403: Forbidden - insufficient permissions to process the request., 422: Unprocessable Entity - a request validation error., 500: Internal Server Error - the server could not process the request.}\n@example_request {\"configurationDetails\":{\"active\":true,\"description\":\"Unique description 123\",\"eventConfigs\":[{\"eventType\":\"ACCOUNT_HOLDER_VERIFICATION\",\"includeMode\":\"INCLUDE\"}],\"notifyURL\":\"https://www.adyen.com/notification-handler\",\"notifyUsername\":\"testUserName\",\"notifyPassword\":\"testPassword\",\"sslProtocol\":\"TLSv13\"}}\n\n@endgroup\n\n@group deleteNotificationConfigurations\n@endpoint POST /deleteNotificationConfigurations\n@desc Delete a notification subscription configuration\n@required {notificationIds: [int(int64)] # A list of IDs of the notification subscription configurations to be deleted.}\n@returns(200) {invalidFields: [map], pspReference: str, resultCode: str} # OK - the request has succeeded.\n@errors {400: Bad Request - a problem reading or understanding the request., 401: Unauthorized - authentication required., 403: Forbidden - insufficient permissions to process the request., 422: Unprocessable Entity - a request validation error., 500: Internal Server Error - the server could not process the request.}\n@example_request {\"notificationIds\":[27891]}\n\n@endgroup\n\n@group getNotificationConfiguration\n@endpoint POST /getNotificationConfiguration\n@desc Get a notification subscription configuration\n@required {notificationId: int(int64) # The ID of the notification subscription configuration whose details are to be retrieved.}\n@returns(200) {configurationDetails: map{active: bool, apiVersion: int(int32), description: str, eventConfigs: [map], hmacSignatureKey: str, notificationId: int(int64), notifyPassword: str, notifyURL: str, notifyUsername: str, sslProtocol: str}, invalidFields: [map], pspReference: str, resultCode: str} # OK - the request has succeeded.\n@errors {400: Bad Request - a problem reading or understanding the request., 401: Unauthorized - authentication required., 403: Forbidden - insufficient permissions to process the request., 422: Unprocessable Entity - a request validation error., 500: Internal Server Error - the server could not process the request.}\n@example_request {\"notificationId\":21259}\n\n@endgroup\n\n@group getNotificationConfigurationList\n@endpoint POST /getNotificationConfigurationList\n@desc Get a list of notification subscription configurations\n@returns(200) {configurations: [map], invalidFields: [map], pspReference: str, resultCode: str} # OK - the request has succeeded.\n@errors {400: Bad Request - a problem reading or understanding the request., 401: Unauthorized - authentication required., 403: Forbidden - insufficient permissions to process the request., 422: Unprocessable Entity - a request validation error., 500: Internal Server Error - the server could not process the request.}\n@example_request {}\n\n@endgroup\n\n@group testNotificationConfiguration\n@endpoint POST /testNotificationConfiguration\n@desc Test a notification configuration\n@required {notificationId: int(int64) # The ID of the notification subscription configuration to be tested.}\n@optional {eventTypes: [str] # The event types to test.  If left blank, then all of the configured event types will be tested. >Permitted values: `ACCOUNT_HOLDER_CREATED`, `ACCOUNT_CREATED`, `ACCOUNT_UPDATED`, `ACCOUNT_HOLDER_UPDATED`, `ACCOUNT_HOLDER_STATUS_CHANGE`, `ACCOUNT_HOLDER_STORE_STATUS_CHANGE` `ACCOUNT_HOLDER_VERIFICATION`, `ACCOUNT_HOLDER_LIMIT_REACHED`, `ACCOUNT_HOLDER_PAYOUT`, `PAYMENT_FAILURE`, `SCHEDULED_REFUNDS`, `REPORT_AVAILABLE`, `TRANSFER_FUNDS`, `BENEFICIARY_SETUP`, `COMPENSATE_NEGATIVE_BALANCE`.}\n@returns(200) {errorMessages: [str], eventTypes: [str], exchangeMessages: [map], invalidFields: [map], notificationId: int(int64), okMessages: [str], pspReference: str, resultCode: str} # OK - the request has succeeded.\n@errors {400: Bad Request - a problem reading or understanding the request., 401: Unauthorized - authentication required., 403: Forbidden - insufficient permissions to process the request., 422: Unprocessable Entity - a request validation error., 500: Internal Server Error - the server could not process the request.}\n@example_request {\"eventTypes\":[\"ACCOUNT_HOLDER_VERIFICATION\"],\"notificationId\":25032}\n\n@endgroup\n\n@group updateNotificationConfiguration\n@endpoint POST /updateNotificationConfiguration\n@desc Update a notification subscription configuration\n@required {configurationDetails: map{active: bool, apiVersion: int(int32), description: str, eventConfigs: [map], hmacSignatureKey: str, notificationId: int(int64), notifyPassword: str, notifyURL: str, notifyUsername: str, sslProtocol: str}}\n@returns(200) {configurationDetails: map{active: bool, apiVersion: int(int32), description: str, eventConfigs: [map], hmacSignatureKey: str, notificationId: int(int64), notifyPassword: str, notifyURL: str, notifyUsername: str, sslProtocol: str}, invalidFields: [map], pspReference: str, resultCode: str} # OK - the request has succeeded.\n@errors {400: Bad Request - a problem reading or understanding the request., 401: Unauthorized - authentication required., 403: Forbidden - insufficient permissions to process the request., 422: Unprocessable Entity - a request validation error., 500: Internal Server Error - the server could not process the request.}\n@example_request {\"configurationDetails\":{\"active\":false,\"description\":\"Test notif config 756\",\"eventConfigs\":[{\"eventType\":\"ACCOUNT_HOLDER_CREATED\",\"includeMode\":\"EXCLUDE\"},{\"eventType\":\"ACCOUNT_CREATED\",\"includeMode\":\"INCLUDE\"}],\"notificationId\":21259,\"notifyPassword\":\"testPassword2\",\"notifyURL\":\"https://www.adyen.com/notification-handler\",\"notifyUsername\":\"testUserName2\",\"sslProtocol\":\"TLSv13\"}}\n\n@endgroup\n\n@end\n"}}