Base URL: https://www.smsreminder.2ri.cc/api
Authorization: Bearer YOUR_API_TOKEN in request headers.Register a new user account.
{
"name": "John Doe",
"phone": "233XXXXXXXXX",
"password": "secret"
}
Get JWT token for authenticated requests.
{
"phone": "233XXXXXXXXX",
"password": "secret"
}
Response: { "token": "eyJ...", "user": {...} }
Send a 6-digit OTP to a phone number.
{ "phone": "233XXXXXXXXX" }
Verify OTP code. Valid for 5 minutes.
{ "phone": "233XXXXXXXXX", "code": "123456" }
List all contacts.
Create a new contact.
{ "phone": "233XXXXXXXXX", "group_ids": [1, 2] }Get single contact details.
Update a contact.
Delete a contact.
Create a contact group.
{ "name": "Friends" }List all groups.
Send reminder to entire group.
Manage custom fields.
List all reminders.
Create a reminder.
{
"contact_id": 1,
"title": "Rent Due",
"message_template": "Hello {{name}}, rent is due on {{event_date}}",
"event_date": "2026-06-01 09:00:00",
"triggers": [
{"type": "exact"},
{"type": "before", "offset_value": 1, "offset_unit": "weeks"}
],
"reminder_type_id": 1,
"sender_id": 2,
"otp_code": "123456"
}Get single reminder.
Update a reminder.
Delete a reminder.
Create guest reminder (no auth, paid via Paystack).
{ "contact_phone": "233XXX", "title": "...", "message_template": "...", "event_date": "...", "triggers": [...] }Bulk create reminders (requires permitted user + OTP).
{ "phones": ["233XXX", "233YYY"], "title": "...", "message_template": "...", "event_date": "...", "triggers": [...] }Toggle reminder status (active/paused).
Get wallet balance and details.
Initiate Paystack payment.
{ "amount": 10 }Verify Paystack payment.
Paystack callback URL (auto-handled).
Paystack webhook endpoint.
Get available sender IDs for a reminder type. Filter by country.
GET /api/sender-ids/1?country_code=GH&user_id=5
Get message templates for a sender ID.
Submit bulk SMS campaign (guest, admin-reviewed).
{
"title": "Newsletter",
"message": "Hello from SMS Reminder!",
"phones": ["233XXX", "233YYY"],
"reminder_type_id": 1,
"sender_id": 2,
"email": "user@email.com",
"reference": "paystack_ref",
"amount": 0.50
}Get active message templates for a sender ID.
GET /api/message-templates/1
Returns: [{"id":1,"name":"Welcome","content":"Hello {{name}}!"}]