diff --git a/docs/api/apps-service.yaml b/docs/api/apps-service.yaml index 6d4217256b..bd788f793b 100644 --- a/docs/api/apps-service.yaml +++ b/docs/api/apps-service.yaml @@ -1838,6 +1838,52 @@ paths: $ref: '#/components/schemas/ErrorResponse' '401': description: The User is unauthorized + '/api/apps/subscription/{subscriptionId}/decline': + put: + tags: + - Apps + summary: 'Declines a pending app subscription. (Authorization required - Roles: decline_subscription)' + description: 'Example: PUT: /api/apps/subscription/{subscriptiondId}/decline' + parameters: + - name: subscriptionId + in: path + description: ID of the subscription to decline. + required: true + schema: + type: string + format: uuid + example: D3B1ECA2-6148-4008-9E6C-C1C2AEA5C645 + responses: + '204': + description: App subscription was successfully declined. + '404': + description: 'If sub claim is empty/invalid or user does not exist, or any other parameters are invalid.' + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + '403': + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + '409': + description: Conflict + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + '500': + description: Internal Server Error. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + '400': + description: 'If sub claim is empty/invalid or user does not exist, or any other parameters are invalid.' + '401': + description: The User is unauthorized '/api/apps/{subscriptionId}/unsubscribe': put: tags: diff --git a/docs/api/notifications-service.yaml b/docs/api/notifications-service.yaml index 5eb0850144..58768efbcb 100644 --- a/docs/api/notifications-service.yaml +++ b/docs/api/notifications-service.yaml @@ -508,6 +508,8 @@ components: - CREDENTIAL_APPROVAL - CREDENTIAL_REJECTED - CREDENTIAL_EXPIRY + - APP_SUBSCRIPTION_DECLINE + - SERVICE_SUBSCRIPTION_DECLINE type: string SearchSemanticTypeId: enum: diff --git a/docs/api/services-service.yaml b/docs/api/services-service.yaml index 8348b1ec86..87e5d63c21 100644 --- a/docs/api/services-service.yaml +++ b/docs/api/services-service.yaml @@ -1514,6 +1514,52 @@ paths: $ref: '#/components/schemas/ErrorResponse' '401': description: The User is unauthorized + '/subscription/{subscriptionId}/decline': + put: + tags: + - Services + summary: 'Declines a pending service subscription. (Authorization required - Roles: decline_subscription)' + description: 'Example: PUT: /api/services/supscription/{subscriptiondId}/decline' + parameters: + - name: subscriptionId + in: path + description: ID of the subscription to decline. + required: true + schema: + type: string + format: uuid + example: D3B1ECA2-6148-4008-9E6C-C1C2AEA5C645 + responses: + '204': + description: Service subscription was successfully declined. + '404': + description: Not Found + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + '403': + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + '409': + description: Conflict + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + '500': + description: Internal Server Error. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + '400': + description: 'If sub claim is empty/invalid or user does not exist, or any other parameters are invalid.' + '401': + description: The User is unauthorized components: schemas: AgreementConsentStatus: diff --git a/src/mailing/Mailing.Template/EmailTemplates/app_subscription_decline.html b/src/mailing/Mailing.Template/EmailTemplates/app_subscription_decline.html new file mode 100644 index 0000000000..d51ca1319d --- /dev/null +++ b/src/mailing/Mailing.Template/EmailTemplates/app_subscription_decline.html @@ -0,0 +1,473 @@ + + + + + +
+ + + + + +