Open
Description
[FEAT] Fetch All Subscribers to Newsletter (Paginated)
π Description
Develop an endpoint to retrieve all active newsletter subscribers. The endpoint should support pagination, allowing clients to specify the page number and limit per request.
β Acceptance Criteria
- Fetches all active newsletter subscribers.
- Supports pagination with configurable page size.
- Returns the appropriate response and status code.
π Requirements
Endpoint:
- Method:
GET
- URL:
/api/v1/pages/newsletter/subscribers
- Headers:
Content-Type: application/json
Query Parameters:
Parameter | Type | Required | Default | Description |
---|---|---|---|---|
page |
Integer | β No | 1 |
The page number to retrieve. |
limit |
Integer | β No | 10 |
The number of subscribers per page. |
πΉ Responses
β Successful Response
{
"success": true,
"status_code": 200,
"message": "Subscribers retrieved successfully",
"data": [
{
"id": 1,
"email": "[email protected]"
},
{
"id": 2,
"email": "[email protected]"
}
],
"pagination": {
"page": 1,
"limit": 10,
"total": 100
}
}
β Error Response (No Subscribers Found)
{
"success": false,
"status_code": 404,
"message": "No subscribers found"
}
β Error Response (Invalid Pagination Parameters)
{
"success": false,
"status_code": 400,
"message": "Invalid pagination parameters"
}
π§ͺ Unit Tests
-β
Ensure only active subscribers are retrieved.
-β
Validate pagination functionality (correct number of records per page).
-β
Verify the response structure and status codes.