https://github.com/isaacsarte/jnce-clinic-api
JNCE Clinic API [RAILS]
https://github.com/isaacsarte/jnce-clinic-api
rails6 railsapi serializers
Last synced: 5 months ago
JSON representation
JNCE Clinic API [RAILS]
- Host: GitHub
- URL: https://github.com/isaacsarte/jnce-clinic-api
- Owner: IsaacSarte
- Created: 2022-03-21T12:44:24.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2022-04-09T15:26:35.000Z (about 4 years ago)
- Last Synced: 2025-06-08T14:43:26.838Z (about 1 year ago)
- Topics: rails6, railsapi, serializers
- Language: Ruby
- Homepage: https://jnceclinicapi.herokuapp.com
- Size: 677 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# JNCE Clinic API
### by: Isaac Sarte & Argie Barcena
```
Ruby 3.0.2
Rails 6.1.5
NodeJS 12.18.3
Yarn 1.22.4
```
* ## **Base URL**
```
https://jnceclinicapi.herokuapp.com
```
===============================
* ## **Admin Side/Feature**
### Admin Sign up
```
HTTP Method: POST
URL: {{url}}/admins/
```
##### Sample Request Body
```
{
"email": "admin1@example.com",
"password": "123456"
}
```
##### Parameters
Name | Description | Required |
--- | --- | --- |
email | Admin email | Yes |
password | Admin password | Yes |
### Admin Sign in
```
HTTP Method: POST
URL: {{url}}/admins/sign_in
```
##### Sample Request Body
```
{
"email": "admin1@example.com",
"password": "123456"
}
```
##### Parameters
Name | Description | Required |
--- | --- | --- |
email | Admin email | Yes |
password | Admin password | Yes |
### Admin Sign out
```
HTTP Method: DELETE
URL: {{url}}/admins/sign_out
```
##### Sample Request Body
```
{
"email": "admin1@example.com",
"password": "123456"
}
```
##### Parameters
Name | Description | Required |
--- | --- | --- |
email | Admin email | Yes |
password | Admin password | Yes |
##### Headers
Name | Required |
--- | --- |
authorization token | Yes |
Note: Feedback is for public users.
### Admin Retrieve All Feedbacks
```
HTTP Method: GET
URL: {{url}}/api/v1/users/
```
##### Headers
Name | Required |
--- | --- |
authorization token | Yes |
### Admin Show Feedback
```
HTTP Method: GET
URL: {{url}}/api/v1/users/{{user_id}}
```
##### Headers
Name | Required |
--- | --- |
authorization token | Yes |
### Admin Retrieve All Appointments
```
HTTP Method: GET
URL: {{url}}/api/v1/appointments
```
##### Headers
Name | Required |
--- | --- |
authorization token | Yes |
### Admin Show Appointment
```
HTTP Method: GET
URL: {{url}}/api/v1/appointments/{{id}}
```
##### Headers
Name | Required |
--- | --- |
authorization token | Yes |
### Admin Change Appointment Status
```
HTTP Method: PUT
URL: {{url}}/api/v1/appointments/{{id}}
```
##### Sample Request Body
```
{
"status": "done"
}
```
##### Payload
Name | Description | Required |
--- | --- | --- |
status | Appointment status | Yes |
##### Headers
Name | Required |
--- | --- |
authorization token | Yes |
### Admin Retrieve All Logs
```
HTTP Method: GET
URL: {{url}}/api/v1/logs
```
##### Headers
Name | Required |
--- | --- |
authorization token | Yes |
### Admin Show Log
```
HTTP Method: GET
URL: {{url}}/api/v1/logs/{{id}}
```
##### Headers
Name | Required |
--- | --- |
authorization token | Yes |
### Admin Create Log
```
HTTP Method: POST
URL: {{url}}/api/v1/logs
```
##### Sample Request Body
```
{
"appointment_id": 1
"admin_id": 1
}
```
##### Payload
Name | Description | Required |
--- | --- | --- |
appointment_id | Appointment id | Yes |
admin_id | Admin id | Yes |
##### Headers
Name | Required |
--- | --- |
authorization token | Yes |
===============================
* ## **Services Feature**
### Retrieve All Services
```
HTTP Method: GET
URL: {{url}}/api/v1/services
```
===============================
* ## **Feedback Feature**
### Create User Feedback
```
HTTP Method: POST
URL: {{url}}/api/v1/users
```
##### Sample Request Body
```
{
"fullname": "test user"
"email": "testuser@example.com",
"phone": 01212312312,
"message": "test message feedback"
}
```
##### Parameters
Name | Description | Required |
--- | --- | --- |
fullname | User fullname | Yes |
email | User email | Yes |
phone | User phone | Yes |
message | User message | Yes |
===============================
Note: Before booking appoinment, see this link for google oAuth endpoints:
```
https://github.com/Zhi0105/jnce-calendar-api
```
After connecting google oAuth, continue to Book Appointment Feature below.
* ## **Book Appointment Feature**
### Scheduling Appointment
```
HTTP Method: POST
URL: {{url}}/api/v1/appointments
```
##### Sample Request Body
```
{
"service_id": 1,
"status": "pending",
"fullname": "test fullname",
"location": "Subd., City, PH",
"start_datetime": Date.today,
"end_datetime": Date.today,
"title": "service title",
"email": "appointment@email.com"
}
```
##### Parameters
Name | Description | Required |
--- | --- | --- |
service_id | Service id | Yes |
status | Appointment initial status | Yes |
fullname | User fullname | Yes |
location | Medical Clinic's location not User's | Yes |
start_datetime | Appointment start date time | Yes |
end_datetime | Appointment end date time | Yes |
title | Service title | Yes |
email | User email | Yes |
===============================
# ERD
