name: repairshopr-appointment description: Manage appointments in RepairShopr - create, read, update, delete license: MIT compatibility: opencode metadata: audience: technicians, receptionists, schedulers api: GET /appointments, POST /appointments, GET /appointments/{id}, PUT /appointments/{id}, DELETE /appointments/{id}
What I do
I manage appointments in RepairShopr. I can list appointments with date filtering, create new appointments, retrieve appointment details, update existing appointments, and delete appointments.
When to use me
Use this when:
- Scheduling service appointments with customers
- Viewing upcoming or past appointments
- Rescheduling or modifying appointment times
- Canceling appointments
- Filtering appointments by date range or user
How to use
Required API base URL:
VITE_REPAIRSHOPR_SUBDOMAINVITE_REPAIRSHOPR_API_KEY
List Appointments (GET /appointments) Optional parameters:
date_from(string) - Filter appointments starting after this date (e.g., "2019-01-25")date_to(string) - Filter appointments starting before this date (e.g., "2019-12-31")mine(boolean) - Return only current user's appointmentspage(integer) - Page number (25 results per page)
Create Appointment (POST /appointments) Required parameters:
summary(string) - Appointment title/summarystart_at(string) - Start datetime in ISO 8601 format
Optional parameters:
end_at(string) - End datetime (ISO 8601)description(string) - Appointment description/notescustomer_id(integer) - Customer ID to associateticket_id(integer) - Related ticket IDuser_idoruser_ids(integer/array) - Assigned technician(s)location(string) - Appointment location (e.g., "In Shop", "On Site")all_day(boolean) - All day appointment flagemail_customer(boolean) - Whether to email customer
Get Single Appointment (GET /appointments/{id})
id(integer, required) - Appointment ID
Update Appointment (PUT /appointments/{id})
id(integer, required) - Appointment ID Optional body parameters same as Create
Delete Appointment (DELETE /appointments/{id})
id(integer, required) - Appointment ID
Example call:
const result = await skill({ name: "repairshopr-appointment" }, {
summary: "Laptop Repair",
start_at: "2024-01-15T10:00:00Z",
end_at: "2024-01-15T12:00:00Z",
description: "Screen replacement",
customer_id: 123,
location: "In Shop"
})
Response includes:
- For list:
appointmentsarray with full appointment data including customer info - For single/create/update:
appointmentobject with all fields - For delete: success status
Important
- Requires "Appointments - View All" permission for listing all appointments
- Create, update, delete don't require special permissions
summaryandstart_atare required for creation;start_atrequired for updates- Times should be in ISO 8601 format with timezone
- Associated
customer_idmust exist
Related skills
repairshopr-appointment-type- For appointment type configurationsrepairshopr-ticket-create- To create a related service ticket