crisphive 0.1.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (229) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +183 -16
  3. data/crisphive.gemspec +5 -5
  4. data/lib/crisphive/api/business_skill_api.rb +502 -8
  5. data/lib/crisphive/api/customer_api.rb +20 -14
  6. data/lib/crisphive/api/job_request_business_api.rb +1273 -167
  7. data/lib/crisphive/api/job_types_api.rb +214 -2
  8. data/lib/crisphive/api/permission_api.rb +79 -0
  9. data/lib/crisphive/api/service_area_api.rb +214 -6
  10. data/lib/crisphive/api/technician_api.rb +510 -6
  11. data/lib/crisphive/api/technician_time_off_api.rb +240 -0
  12. data/lib/crisphive/api/vehicle_api.rb +214 -6
  13. data/lib/crisphive/api/webhooks_api.rb +213 -0
  14. data/lib/crisphive/api_client.rb +2 -2
  15. data/lib/crisphive/api_error.rb +2 -2
  16. data/lib/crisphive/configuration.rb +3 -3
  17. data/lib/crisphive/models/api_internal_techtimeoff_actions.rb +232 -0
  18. data/lib/crisphive/models/api_internal_techtimeoff_status.rb +42 -0
  19. data/lib/crisphive/models/assignable_group.rb +289 -0
  20. data/lib/crisphive/models/book_and_confirm_job_request200_response.rb +253 -0
  21. data/lib/crisphive/models/commit_absence_resolve200_response.rb +253 -0
  22. data/lib/crisphive/models/commit_emergency_reschedule200_response.rb +253 -0
  23. data/lib/crisphive/models/commit_job_request_move200_response.rb +253 -0
  24. data/lib/crisphive/models/create_customer200_response.rb +5 -2
  25. data/lib/crisphive/models/create_job_request200_response.rb +5 -2
  26. data/lib/crisphive/models/create_job_type200_response.rb +253 -0
  27. data/lib/crisphive/models/create_service_area200_response.rb +253 -0
  28. data/lib/crisphive/models/create_skill200_response.rb +253 -0
  29. data/lib/crisphive/models/create_skill_category200_response.rb +253 -0
  30. data/lib/crisphive/models/create_technician200_response.rb +253 -0
  31. data/lib/crisphive/models/create_technician_time_off200_response.rb +253 -0
  32. data/lib/crisphive/models/create_vehicle200_response.rb +253 -0
  33. data/lib/crisphive/models/create_webhook_endpoint200_response.rb +253 -0
  34. data/lib/crisphive/models/customer.rb +13 -3
  35. data/lib/crisphive/models/customer_address.rb +2 -2
  36. data/lib/crisphive/models/customer_address_request.rb +11 -2
  37. data/lib/crisphive/models/customer_contact.rb +27 -7
  38. data/lib/crisphive/models/customer_create_request.rb +14 -4
  39. data/lib/crisphive/models/customer_create_response.rb +2 -2
  40. data/lib/crisphive/models/customer_list.rb +3 -3
  41. data/lib/crisphive/models/customer_list_item.rb +13 -3
  42. data/lib/crisphive/models/customer_profile.rb +2 -2
  43. data/lib/crisphive/models/customer_quick_books_link.rb +235 -0
  44. data/lib/crisphive/models/customer_service_area_ref.rb +225 -0
  45. data/lib/crisphive/models/customer_spending.rb +2 -2
  46. data/lib/crisphive/models/customer_technician_ref.rb +225 -0
  47. data/lib/crisphive/models/customer_tier_progress.rb +2 -2
  48. data/lib/crisphive/models/customer_update_request.rb +25 -22
  49. data/lib/crisphive/models/get_customer200_response.rb +5 -2
  50. data/lib/crisphive/models/get_job_request200_response.rb +5 -2
  51. data/lib/crisphive/models/get_job_request_timeline200_response.rb +5 -2
  52. data/lib/crisphive/models/get_job_type200_response.rb +5 -2
  53. data/lib/crisphive/models/get_service_area200_response.rb +5 -2
  54. data/lib/crisphive/models/get_technician200_response.rb +5 -2
  55. data/lib/crisphive/models/get_technician_schedule200_response.rb +253 -0
  56. data/lib/crisphive/models/get_vehicle200_response.rb +5 -2
  57. data/lib/crisphive/models/internal_jobrequest_http_address_req.rb +475 -0
  58. data/lib/crisphive/models/job_date.rb +5 -3
  59. data/lib/crisphive/models/job_date_business_range.rb +7 -3
  60. data/lib/crisphive/models/job_date_period.rb +2 -2
  61. data/lib/crisphive/models/job_date_period_entry.rb +4 -2
  62. data/lib/crisphive/models/job_request.rb +56 -6
  63. data/lib/crisphive/models/job_request_absence_alternative.rb +356 -0
  64. data/lib/crisphive/models/job_request_absence_alternative_cost.rb +275 -0
  65. data/lib/crisphive/models/job_request_absence_assignment.rb +319 -0
  66. data/lib/crisphive/models/job_request_absence_commit_request.rb +296 -0
  67. data/lib/crisphive/models/job_request_absence_notification.rb +283 -0
  68. data/lib/crisphive/models/job_request_absence_plan.rb +322 -0
  69. data/lib/crisphive/models/job_request_absence_preview_request.rb +280 -0
  70. data/lib/crisphive/models/job_request_absence_resolved_job.rb +499 -0
  71. data/lib/crisphive/models/job_request_absence_solver.rb +289 -0
  72. data/lib/crisphive/models/job_request_absence_time_off.rb +281 -0
  73. data/lib/crisphive/models/job_request_absence_unresolved_job.rb +364 -0
  74. data/lib/crisphive/models/job_request_action_audit_by.rb +2 -2
  75. data/lib/crisphive/models/job_request_action_audit_entry.rb +3 -3
  76. data/lib/crisphive/models/job_request_action_summary.rb +3 -3
  77. data/lib/crisphive/models/job_request_address_summary.rb +2 -2
  78. data/lib/crisphive/models/job_request_archive_summary.rb +2 -2
  79. data/lib/crisphive/models/job_request_arrival_window.rb +4 -4
  80. data/lib/crisphive/models/job_request_assigned_vehicle.rb +2 -2
  81. data/lib/crisphive/models/job_request_assignment_summary.rb +2 -2
  82. data/lib/crisphive/models/job_request_attention_summary.rb +259 -0
  83. data/lib/crisphive/models/job_request_available_vehicle.rb +235 -0
  84. data/lib/crisphive/models/job_request_blocker.rb +363 -0
  85. data/lib/crisphive/models/job_request_blocker_ref.rb +223 -0
  86. data/lib/crisphive/models/job_request_book_and_confirm_customer.rb +302 -0
  87. data/lib/crisphive/models/job_request_book_and_confirm_emergency.rb +315 -0
  88. data/lib/crisphive/models/job_request_book_and_confirm_emergency_result.rb +279 -0
  89. data/lib/crisphive/models/job_request_book_and_confirm_refusal.rb +280 -0
  90. data/lib/crisphive/models/job_request_book_and_confirm_request.rb +466 -0
  91. data/lib/crisphive/models/job_request_book_and_confirm_response.rb +295 -0
  92. data/lib/crisphive/models/job_request_booking_windows.rb +2 -2
  93. data/lib/crisphive/models/job_request_buddy_slot_candidates.rb +239 -0
  94. data/lib/crisphive/models/job_request_business_time_range.rb +3 -3
  95. data/lib/crisphive/models/job_request_changes.rb +2 -2
  96. data/lib/crisphive/models/job_request_confirm_request.rb +255 -0
  97. data/lib/crisphive/models/job_request_create_request.rb +61 -7
  98. data/lib/crisphive/models/job_request_create_response.rb +2 -2
  99. data/lib/crisphive/models/job_request_crew_candidates.rb +227 -0
  100. data/lib/crisphive/models/job_request_crew_change.rb +299 -0
  101. data/lib/crisphive/models/job_request_crew_member.rb +7 -4
  102. data/lib/crisphive/models/job_request_crew_member_input.rb +284 -0
  103. data/lib/crisphive/models/job_request_crew_recommendation.rb +255 -0
  104. data/lib/crisphive/models/job_request_customer_summary.rb +2 -2
  105. data/lib/crisphive/models/job_request_day_windows.rb +3 -3
  106. data/lib/crisphive/models/job_request_emergency_candidate.rb +319 -0
  107. data/lib/crisphive/models/job_request_emergency_candidates.rb +311 -0
  108. data/lib/crisphive/models/job_request_emergency_candidates_request.rb +341 -0
  109. data/lib/crisphive/models/job_request_emergency_commit_request.rb +361 -0
  110. data/lib/crisphive/models/job_request_emergency_inline_job.rb +353 -0
  111. data/lib/crisphive/models/job_request_emergency_plan.rb +367 -0
  112. data/lib/crisphive/models/job_request_emergency_preview_request.rb +342 -0
  113. data/lib/crisphive/models/job_request_job_date_business_range_request.rb +3 -3
  114. data/lib/crisphive/models/job_request_job_date_period_request.rb +2 -2
  115. data/lib/crisphive/models/job_request_job_date_request.rb +3 -3
  116. data/lib/crisphive/models/job_request_lead_candidate.rb +311 -0
  117. data/lib/crisphive/models/job_request_list.rb +2 -2
  118. data/lib/crisphive/models/job_request_move_commit_req.rb +353 -0
  119. data/lib/crisphive/models/job_request_move_member.rb +299 -0
  120. data/lib/crisphive/models/job_request_move_plan.rb +387 -0
  121. data/lib/crisphive/models/job_request_move_preview_req.rb +300 -0
  122. data/lib/crisphive/models/job_request_move_warning.rb +335 -0
  123. data/lib/crisphive/models/job_request_period.rb +2 -2
  124. data/lib/crisphive/models/job_request_priority_update_result.rb +217 -0
  125. data/lib/crisphive/models/job_request_quote_request.rb +343 -0
  126. data/lib/crisphive/models/job_request_quote_summary.rb +2 -2
  127. data/lib/crisphive/models/job_request_rating_summary.rb +2 -2
  128. data/lib/crisphive/models/job_request_reassign_fallback.rb +287 -0
  129. data/lib/crisphive/models/job_request_reschedule_day.rb +227 -0
  130. data/lib/crisphive/models/job_request_reschedule_move.rb +319 -0
  131. data/lib/crisphive/models/job_request_reschedule_reassignment.rb +339 -0
  132. data/lib/crisphive/models/job_request_schedule.rb +2 -2
  133. data/lib/crisphive/models/job_request_session.rb +8 -7
  134. data/lib/crisphive/models/job_request_skill_summary.rb +3 -3
  135. data/lib/crisphive/models/job_request_status_summary.rb +3 -3
  136. data/lib/crisphive/models/job_request_tech_candidate.rb +287 -0
  137. data/lib/crisphive/models/job_request_technician_info.rb +2 -2
  138. data/lib/crisphive/models/job_request_time_segments.rb +287 -0
  139. data/lib/crisphive/models/job_request_time_segments_business_time.rb +321 -0
  140. data/lib/crisphive/models/job_request_time_segments_day.rb +247 -0
  141. data/lib/crisphive/models/job_request_time_segments_slot.rb +375 -0
  142. data/lib/crisphive/models/job_request_time_segments_worker.rb +295 -0
  143. data/lib/crisphive/models/job_request_timeline.rb +2 -2
  144. data/lib/crisphive/models/job_request_timeline_action.rb +2 -2
  145. data/lib/crisphive/models/job_request_timeline_event.rb +2 -2
  146. data/lib/crisphive/models/job_request_update_priority_request.rb +295 -0
  147. data/lib/crisphive/models/job_type.rb +44 -4
  148. data/lib/crisphive/models/job_type_create_request.rb +399 -0
  149. data/lib/crisphive/models/job_type_create_response.rb +215 -0
  150. data/lib/crisphive/models/job_type_update_request.rb +400 -0
  151. data/lib/crisphive/models/list_assignable_groups200_response.rb +255 -0
  152. data/lib/crisphive/models/list_crew_candidates200_response.rb +253 -0
  153. data/lib/crisphive/models/list_customers200_response.rb +5 -2
  154. data/lib/crisphive/models/list_emergency_candidates200_response.rb +253 -0
  155. data/lib/crisphive/models/list_job_request_booking_windows200_response.rb +5 -2
  156. data/lib/crisphive/models/list_job_request_changes200_response.rb +5 -2
  157. data/lib/crisphive/models/list_job_requests200_response.rb +5 -2
  158. data/lib/crisphive/models/list_job_types200_response.rb +5 -2
  159. data/lib/crisphive/models/list_matching_slots200_response.rb +253 -0
  160. data/lib/crisphive/models/list_nearby_technicians200_response.rb +253 -0
  161. data/lib/crisphive/models/list_service_areas200_response.rb +5 -2
  162. data/lib/crisphive/models/list_skill_categories200_response.rb +5 -2
  163. data/lib/crisphive/models/list_skills200_response.rb +5 -2
  164. data/lib/crisphive/models/list_skills_by_category200_response.rb +5 -2
  165. data/lib/crisphive/models/list_technician_skills200_response.rb +253 -0
  166. data/lib/crisphive/models/list_technician_time_off200_response.rb +253 -0
  167. data/lib/crisphive/models/list_technicians200_response.rb +5 -2
  168. data/lib/crisphive/models/list_vehicles200_response.rb +5 -2
  169. data/lib/crisphive/models/list_webhook_event_types200_response.rb +255 -0
  170. data/lib/crisphive/models/nearby_technician.rb +319 -0
  171. data/lib/crisphive/models/nearby_technicians.rb +237 -0
  172. data/lib/crisphive/models/pagination.rb +7 -2
  173. data/lib/crisphive/models/quote_job_request200_response.rb +253 -0
  174. data/lib/crisphive/models/replace_technician_service_areas200_response.rb +253 -0
  175. data/lib/crisphive/models/response_envelope.rb +6 -2
  176. data/lib/crisphive/models/service_area.rb +23 -3
  177. data/lib/crisphive/models/service_area_create_request.rb +455 -0
  178. data/lib/crisphive/models/service_area_create_response.rb +215 -0
  179. data/lib/crisphive/models/service_area_list.rb +2 -2
  180. data/lib/crisphive/models/service_area_update_request.rb +451 -0
  181. data/lib/crisphive/models/skill.rb +9 -2
  182. data/lib/crisphive/models/skill_by_category_list.rb +4 -2
  183. data/lib/crisphive/models/skill_category.rb +7 -2
  184. data/lib/crisphive/models/skill_category_create_request.rb +270 -0
  185. data/lib/crisphive/models/skill_category_create_response.rb +215 -0
  186. data/lib/crisphive/models/skill_category_list.rb +4 -2
  187. data/lib/crisphive/models/skill_create_request.rb +270 -0
  188. data/lib/crisphive/models/skill_create_response.rb +215 -0
  189. data/lib/crisphive/models/skill_list.rb +2 -2
  190. data/lib/crisphive/models/skill_summary.rb +2 -2
  191. data/lib/crisphive/models/skill_update_request.rb +281 -0
  192. data/lib/crisphive/models/technician.rb +66 -4
  193. data/lib/crisphive/models/technician_address.rb +2 -2
  194. data/lib/crisphive/models/technician_address_input.rb +408 -0
  195. data/lib/crisphive/models/technician_buddies_request.rb +236 -0
  196. data/lib/crisphive/models/technician_create_request.rb +603 -0
  197. data/lib/crisphive/models/technician_create_response.rb +215 -0
  198. data/lib/crisphive/models/technician_lead_ref.rb +2 -2
  199. data/lib/crisphive/models/technician_leads_request.rb +236 -0
  200. data/lib/crisphive/models/technician_list.rb +3 -3
  201. data/lib/crisphive/models/technician_schedule.rb +279 -0
  202. data/lib/crisphive/models/technician_schedule_block.rb +225 -0
  203. data/lib/crisphive/models/technician_schedule_session.rb +311 -0
  204. data/lib/crisphive/models/technician_service_area_ref.rb +2 -2
  205. data/lib/crisphive/models/technician_service_areas_request.rb +236 -0
  206. data/lib/crisphive/models/technician_service_areas_response.rb +217 -0
  207. data/lib/crisphive/models/technician_skill.rb +265 -0
  208. data/lib/crisphive/models/technician_skill_list.rb +227 -0
  209. data/lib/crisphive/models/technician_skills_request.rb +236 -0
  210. data/lib/crisphive/models/technician_status.rb +2 -2
  211. data/lib/crisphive/models/technician_time_off.rb +334 -0
  212. data/lib/crisphive/models/technician_time_off_create_request.rb +285 -0
  213. data/lib/crisphive/models/technician_time_off_create_response.rb +215 -0
  214. data/lib/crisphive/models/technician_time_off_list.rb +246 -0
  215. data/lib/crisphive/models/technician_update_request.rb +507 -0
  216. data/lib/crisphive/models/technician_vehicles_request.rb +236 -0
  217. data/lib/crisphive/models/vehicle.rb +26 -4
  218. data/lib/crisphive/models/vehicle_create_request.rb +420 -0
  219. data/lib/crisphive/models/vehicle_create_response.rb +215 -0
  220. data/lib/crisphive/models/vehicle_list.rb +2 -2
  221. data/lib/crisphive/models/vehicle_owner.rb +2 -2
  222. data/lib/crisphive/models/vehicle_update_request.rb +440 -0
  223. data/lib/crisphive/models/webhook_create_request.rb +320 -0
  224. data/lib/crisphive/models/webhook_create_response.rb +391 -0
  225. data/lib/crisphive/models/webhook_verification.rb +235 -0
  226. data/lib/crisphive/version.rb +3 -3
  227. data/lib/crisphive.rb +126 -2
  228. data/spec/spec_helper.rb +2 -2
  229. metadata +129 -5
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1ea71e345767c63c9580d0c9d27e917eac5b39841795b58a1168c8e087a8d750
4
- data.tar.gz: 6b6a8e958bec2b6bbd18780b48a9b9eeabc03639d65bd13ad71aab74f0b07713
3
+ metadata.gz: 903ac519c7797cf42f3772dcca0d80d45b2c01f692dac196265a6495db01d57d
4
+ data.tar.gz: 3702e48e53e57c10ab504d8b11749bd3bce796888b48707bdb33497029e8e148
5
5
  SHA512:
6
- metadata.gz: d1c0cb7cf0c4935756695f2d586d1cd8aa4a8134fef772137bb2825dbec04e253b824a49e6439a4ba93af6c71adf61834d500a4928eaadd1b120db80c341dbc8
7
- data.tar.gz: 944ca1a86086463ed7ebaa5ecd4afb886786c24c7d424ae5dc3a1cc5d6caa640cc461d114cab1aa98d2a2667d09698f16e10817ed5c94151a3989432f8f326f4
6
+ metadata.gz: acfcb7333f4745c46004d6594a0039930312f069afc547e8b81b9708639f315b28d9168cf96b6e55556d23e7fb488071065bd6e8ccd61c2d0adcd04d2f15d615
7
+ data.tar.gz: 84e1831c06fc7aa5010e72a839e0df4257c0140ad1a61047db95efa0d1d242253991786399d07e713d0400ba0c7bd8d2c3bf40a202aeef0cb69b95acba01f969
data/README.md CHANGED
@@ -1,8 +1,8 @@
1
1
  # crisphive
2
2
 
3
- Crisphive - the Ruby gem for the CrispHive Developer API
3
+ Crisphive - the Ruby gem for the Crisphive Developer API
4
4
 
5
- Public REST API for integrating CrispHive from your own backend. Authenticate every request with a secret API key as a Bearer token (`Authorization: Bearer chsk_live_…`). The key prefix selects the data environment: `chsk_live_…` → production (live), `chsk_test_…` → sandbox (isolated test).
5
+ Public REST API for integrating Crisphive from your own backend. Authenticate every request with a secret API key as a Bearer token (`Authorization: Bearer chsk_live_…`). The key prefix selects the data environment: `chsk_live_…` → production (live), `chsk_test_…` → sandbox (isolated test).
6
6
 
7
7
  **Key scopes (restricted keys).** A key is either *full-access* (can call every endpoint below) or *restricted* to a set of permission codes chosen at creation — the same codes as the dashboard permission grid (e.g. `customers_view`, `job_create`, `team_manage`). A restricted key calling an endpoint outside its scope gets `403`. The full code list is the permission catalog (`GET /permission/modules` on the dashboard API). Create, scope, and revoke keys from the business dashboard.
8
8
 
@@ -11,7 +11,7 @@ Every response is wrapped in the envelope `{ \"error_code\": 0, \"message\": \"S
11
11
  This SDK is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
12
12
 
13
13
  - API version: 1.0
14
- - Package version: 0.1.0
14
+ - Package version: 0.3.0
15
15
  - Generator version: 7.11.0
16
16
  - Build package: org.openapitools.codegen.languages.RubyClientCodegen
17
17
 
@@ -28,16 +28,16 @@ gem build crisphive.gemspec
28
28
  Then either install the gem locally:
29
29
 
30
30
  ```shell
31
- gem install ./crisphive-0.1.0.gem
31
+ gem install ./crisphive-0.3.0.gem
32
32
  ```
33
33
 
34
- (for development, run `gem install --dev ./crisphive-0.1.0.gem` to install the development dependencies)
34
+ (for development, run `gem install --dev ./crisphive-0.3.0.gem` to install the development dependencies)
35
35
 
36
36
  or publish the gem to a gem hosting service, e.g. [RubyGems](https://rubygems.org/).
37
37
 
38
38
  Finally add this to the Gemfile:
39
39
 
40
- gem 'crisphive', '~> 0.1.0'
40
+ gem 'crisphive', '~> 0.3.0'
41
41
 
42
42
  ### Install from Git
43
43
 
@@ -63,7 +63,7 @@ require 'crisphive'
63
63
 
64
64
  # Setup authorization
65
65
  Crisphive.configure do |config|
66
- # Configure Bearer authorization (CrispHive secret key): ApiKeyAuth
66
+ # Configure Bearer authorization (Crisphive secret key): ApiKeyAuth
67
67
  config.access_token = 'YOUR_BEARER_TOKEN'
68
68
  # Configure a proc to get access tokens in lieu of the static access_token configuration
69
69
  config.access_token_getter = -> { 'YOUR TOKEN GETTER PROC' }
@@ -72,17 +72,18 @@ Crisphive.configure do |config|
72
72
  end
73
73
 
74
74
  api_instance = Crisphive::BusinessSkillApi.new
75
+ id = 'id_example' # String | Skill category ID (UUID)
76
+ skill_create_request = Crisphive::SkillCreateRequest.new({name: 'Pipe Repair'}) # SkillCreateRequest | Skill details (name max 200 chars, description max 4000 chars)
75
77
  opts = {
76
- page: 56, # Integer | Page number (default: 1)
77
- limit: 56 # Integer | Page size (default: 15, max: 1000)
78
+ idempotency_key: 'idempotency_key_example' # String | Unique key making retries safe: a repeat send with the same key replays the original response (header Idempotent-Replayed: true) instead of re-running the operation. Reusing a key with a different body returns 422 IDEMPOTENCY_KEY_REUSE.
78
79
  }
79
80
 
80
81
  begin
81
- #List skill categories
82
- result = api_instance.list_skill_categories(opts)
82
+ #Create a skill
83
+ result = api_instance.create_skill(id, skill_create_request, opts)
83
84
  p result
84
85
  rescue Crisphive::ApiError => e
85
- puts "Exception when calling BusinessSkillApi->list_skill_categories: #{e}"
86
+ puts "Exception when calling BusinessSkillApi->create_skill: #{e}"
86
87
  end
87
88
 
88
89
  ```
@@ -93,34 +94,94 @@ All URIs are relative to *https://api.crisphive.com/v1*
93
94
 
94
95
  Class | Method | HTTP request | Description
95
96
  ------------ | ------------- | ------------- | -------------
97
+ *Crisphive::BusinessSkillApi* | [**create_skill**](docs/BusinessSkillApi.md#create_skill) | **POST** /skill-categories/{id}/skills | Create a skill
98
+ *Crisphive::BusinessSkillApi* | [**create_skill_category**](docs/BusinessSkillApi.md#create_skill_category) | **POST** /skill-categories | Create a skill category
99
+ *Crisphive::BusinessSkillApi* | [**delete_skill**](docs/BusinessSkillApi.md#delete_skill) | **DELETE** /skills/{id} | Delete a skill
100
+ *Crisphive::BusinessSkillApi* | [**delete_skill_category**](docs/BusinessSkillApi.md#delete_skill_category) | **DELETE** /skill-categories/{id} | Delete a skill category
96
101
  *Crisphive::BusinessSkillApi* | [**list_skill_categories**](docs/BusinessSkillApi.md#list_skill_categories) | **GET** /skill-categories | List skill categories
97
102
  *Crisphive::BusinessSkillApi* | [**list_skills**](docs/BusinessSkillApi.md#list_skills) | **GET** /skills | List all skills
98
103
  *Crisphive::BusinessSkillApi* | [**list_skills_by_category**](docs/BusinessSkillApi.md#list_skills_by_category) | **GET** /skill-categories/{id}/skills | List skills in a category
104
+ *Crisphive::BusinessSkillApi* | [**list_technician_skills**](docs/BusinessSkillApi.md#list_technician_skills) | **GET** /technicians/{id}/skills | List skills for a technician
105
+ *Crisphive::BusinessSkillApi* | [**replace_technician_skills**](docs/BusinessSkillApi.md#replace_technician_skills) | **PATCH** /technicians/{id}/skills | Replace a technician's skills
106
+ *Crisphive::BusinessSkillApi* | [**update_skill**](docs/BusinessSkillApi.md#update_skill) | **PUT** /skills/{id} | Update a skill
99
107
  *Crisphive::CustomerApi* | [**create_customer**](docs/CustomerApi.md#create_customer) | **POST** /customers | Create a customer
100
108
  *Crisphive::CustomerApi* | [**delete_customer**](docs/CustomerApi.md#delete_customer) | **DELETE** /customers/{id} | Delete a customer
101
109
  *Crisphive::CustomerApi* | [**get_customer**](docs/CustomerApi.md#get_customer) | **GET** /customers/{id} | Get a customer
102
110
  *Crisphive::CustomerApi* | [**list_customers**](docs/CustomerApi.md#list_customers) | **GET** /customers | List customers
103
111
  *Crisphive::CustomerApi* | [**update_customer**](docs/CustomerApi.md#update_customer) | **PUT** /customers/{id} | Update a customer
104
- *Crisphive::JobRequestBusinessApi* | [**create_job_request**](docs/JobRequestBusinessApi.md#create_job_request) | **POST** /job-requests | Create a job request (business actor)
112
+ *Crisphive::JobRequestBusinessApi* | [**book_and_confirm_job_request**](docs/JobRequestBusinessApi.md#book_and_confirm_job_request) | **POST** /job-requests/book-and-confirm | Book, schedule and confirm a job in one call
113
+ *Crisphive::JobRequestBusinessApi* | [**commit_absence_resolve**](docs/JobRequestBusinessApi.md#commit_absence_resolve) | **POST** /job-requests/absence/commit | Commit the previewed re-staffing of a technician's day
114
+ *Crisphive::JobRequestBusinessApi* | [**commit_emergency_reschedule**](docs/JobRequestBusinessApi.md#commit_emergency_reschedule) | **POST** /job-requests/emergency/commit | Commit emergency insert + cascade reschedule
115
+ *Crisphive::JobRequestBusinessApi* | [**commit_job_request_move**](docs/JobRequestBusinessApi.md#commit_job_request_move) | **POST** /job-requests/{id}/move/commit | Commit a schedule-board job move
116
+ *Crisphive::JobRequestBusinessApi* | [**confirm_job_request**](docs/JobRequestBusinessApi.md#confirm_job_request) | **POST** /job-requests/{id}/confirm | Confirm a booking on behalf of the customer
117
+ *Crisphive::JobRequestBusinessApi* | [**create_job_request**](docs/JobRequestBusinessApi.md#create_job_request) | **POST** /job-requests | Create a job request
105
118
  *Crisphive::JobRequestBusinessApi* | [**get_job_request**](docs/JobRequestBusinessApi.md#get_job_request) | **GET** /job-requests/{id} | Get a job request
106
- *Crisphive::JobRequestBusinessApi* | [**get_job_request_timeline**](docs/JobRequestBusinessApi.md#get_job_request_timeline) | **GET** /job-requests/{id}/timeline | Job timeline (business surface — also serves tech via BusinessAuth)
107
- *Crisphive::JobRequestBusinessApi* | [**list_job_request_booking_windows**](docs/JobRequestBusinessApi.md#list_job_request_booking_windows) | **GET** /job-requests/booking-windows | Booking availability (business actor)
119
+ *Crisphive::JobRequestBusinessApi* | [**get_job_request_timeline**](docs/JobRequestBusinessApi.md#get_job_request_timeline) | **GET** /job-requests/{id}/timeline | Job timeline
120
+ *Crisphive::JobRequestBusinessApi* | [**get_technician_schedule**](docs/JobRequestBusinessApi.md#get_technician_schedule) | **GET** /technicians/{id}/schedule | One technician's real schedule (sessions + time off)
121
+ *Crisphive::JobRequestBusinessApi* | [**list_crew_candidates**](docs/JobRequestBusinessApi.md#list_crew_candidates) | **GET** /job-requests/{id}/crew-candidates | Matching crew candidates for a job
122
+ *Crisphive::JobRequestBusinessApi* | [**list_emergency_candidates**](docs/JobRequestBusinessApi.md#list_emergency_candidates) | **POST** /job-requests/emergency/candidates | Rank technicians for a P0 emergency insert
123
+ *Crisphive::JobRequestBusinessApi* | [**list_job_request_booking_windows**](docs/JobRequestBusinessApi.md#list_job_request_booking_windows) | **GET** /job-requests/booking-windows | Booking availability
108
124
  *Crisphive::JobRequestBusinessApi* | [**list_job_request_changes**](docs/JobRequestBusinessApi.md#list_job_request_changes) | **GET** /job-requests/changes | Poll for new & changed job requests (sync feed)
109
125
  *Crisphive::JobRequestBusinessApi* | [**list_job_requests**](docs/JobRequestBusinessApi.md#list_job_requests) | **GET** /job-requests | List job requests
126
+ *Crisphive::JobRequestBusinessApi* | [**list_matching_slots**](docs/JobRequestBusinessApi.md#list_matching_slots) | **GET** /job-requests/{id}/time-segments | Matching time slots for a quoted job
127
+ *Crisphive::JobRequestBusinessApi* | [**list_nearby_technicians**](docs/JobRequestBusinessApi.md#list_nearby_technicians) | **GET** /technicians/nearby | Find nearby feasible technicians (job-less location query)
128
+ *Crisphive::JobRequestBusinessApi* | [**preview_absence_resolve**](docs/JobRequestBusinessApi.md#preview_absence_resolve) | **POST** /job-requests/absence/preview | Preview re-staffing a technician's whole day (sick call)
129
+ *Crisphive::JobRequestBusinessApi* | [**preview_emergency_reschedule**](docs/JobRequestBusinessApi.md#preview_emergency_reschedule) | **POST** /job-requests/emergency/preview | Preview emergency insert + cascade reschedule
130
+ *Crisphive::JobRequestBusinessApi* | [**preview_job_request_move**](docs/JobRequestBusinessApi.md#preview_job_request_move) | **POST** /job-requests/{id}/move/preview | Preview a schedule-board job move
131
+ *Crisphive::JobRequestBusinessApi* | [**quote_job_request**](docs/JobRequestBusinessApi.md#quote_job_request) | **POST** /job-requests/{id}/quote | Fire quote (FIXED action — business)
132
+ *Crisphive::JobRequestBusinessApi* | [**update_job_priority**](docs/JobRequestBusinessApi.md#update_job_priority) | **PATCH** /job-requests/{id}/priority | Set job priority (scheduling staff)
133
+ *Crisphive::JobTypesApi* | [**create_job_type**](docs/JobTypesApi.md#create_job_type) | **POST** /job-types | Add a job type to the catalog
134
+ *Crisphive::JobTypesApi* | [**delete_job_type**](docs/JobTypesApi.md#delete_job_type) | **DELETE** /job-types/{id} | Remove a job type from the catalog
110
135
  *Crisphive::JobTypesApi* | [**get_job_type**](docs/JobTypesApi.md#get_job_type) | **GET** /job-types/{id} | Get a job type
111
136
  *Crisphive::JobTypesApi* | [**list_job_types**](docs/JobTypesApi.md#list_job_types) | **GET** /job-types | List job types
137
+ *Crisphive::JobTypesApi* | [**update_job_type**](docs/JobTypesApi.md#update_job_type) | **PUT** /job-types/{id} | Rename a job type or change its availability
138
+ *Crisphive::PermissionApi* | [**list_assignable_groups**](docs/PermissionApi.md#list_assignable_groups) | **GET** /permission/groups/assignable | List groups the caller may assign to a member
139
+ *Crisphive::ServiceAreaApi* | [**create_service_area**](docs/ServiceAreaApi.md#create_service_area) | **POST** /service-areas | Define a territory the business serves
140
+ *Crisphive::ServiceAreaApi* | [**delete_service_area**](docs/ServiceAreaApi.md#delete_service_area) | **DELETE** /service-areas/{id} | Stop serving a territory
112
141
  *Crisphive::ServiceAreaApi* | [**get_service_area**](docs/ServiceAreaApi.md#get_service_area) | **GET** /service-areas/{id} | Get a service area
113
142
  *Crisphive::ServiceAreaApi* | [**list_service_areas**](docs/ServiceAreaApi.md#list_service_areas) | **GET** /service-areas | List service areas
143
+ *Crisphive::ServiceAreaApi* | [**update_service_area**](docs/ServiceAreaApi.md#update_service_area) | **PUT** /service-areas/{id} | Adjust a territory's details or its boundary
144
+ *Crisphive::TechnicianApi* | [**create_technician**](docs/TechnicianApi.md#create_technician) | **POST** /technicians | Add a technician
145
+ *Crisphive::TechnicianApi* | [**delete_technician**](docs/TechnicianApi.md#delete_technician) | **DELETE** /technicians/{id} | Remove a technician from the business
114
146
  *Crisphive::TechnicianApi* | [**get_technician**](docs/TechnicianApi.md#get_technician) | **GET** /technicians/{id} | Get a technician
115
147
  *Crisphive::TechnicianApi* | [**list_technicians**](docs/TechnicianApi.md#list_technicians) | **GET** /technicians | List technicians
148
+ *Crisphive::TechnicianApi* | [**replace_technician_buddies**](docs/TechnicianApi.md#replace_technician_buddies) | **PUT** /technicians/{id}/buddies | Replace a technician's buddies
149
+ *Crisphive::TechnicianApi* | [**replace_technician_leads**](docs/TechnicianApi.md#replace_technician_leads) | **PUT** /technicians/{id}/leads | Replace a buddy's leaders (buddy side)
150
+ *Crisphive::TechnicianApi* | [**replace_technician_service_areas**](docs/TechnicianApi.md#replace_technician_service_areas) | **PUT** /technicians/{id}/service-areas | Replace a technician's service areas
151
+ *Crisphive::TechnicianApi* | [**replace_technician_vehicles**](docs/TechnicianApi.md#replace_technician_vehicles) | **PUT** /technicians/{id}/vehicles | Replace a technician's vehicles
152
+ *Crisphive::TechnicianApi* | [**update_technician**](docs/TechnicianApi.md#update_technician) | **PUT** /technicians/{id} | Update a technician
153
+ *Crisphive::TechnicianTimeOffApi* | [**create_technician_time_off**](docs/TechnicianTimeOffApi.md#create_technician_time_off) | **POST** /technician-time-off | Record a technician's time off (sick day, leave)
154
+ *Crisphive::TechnicianTimeOffApi* | [**delete_technician_time_off**](docs/TechnicianTimeOffApi.md#delete_technician_time_off) | **DELETE** /technician-time-off/{id} | Delete a technician's time off (e.g. back from a sick day)
155
+ *Crisphive::TechnicianTimeOffApi* | [**list_technician_time_off**](docs/TechnicianTimeOffApi.md#list_technician_time_off) | **GET** /technicians/{id}/time-off | List time off for a specific technician
156
+ *Crisphive::VehicleApi* | [**create_vehicle**](docs/VehicleApi.md#create_vehicle) | **POST** /vehicles | Add a vehicle to the fleet
157
+ *Crisphive::VehicleApi* | [**delete_vehicle**](docs/VehicleApi.md#delete_vehicle) | **DELETE** /vehicles/{id} | Retire a vehicle from the fleet
116
158
  *Crisphive::VehicleApi* | [**get_vehicle**](docs/VehicleApi.md#get_vehicle) | **GET** /vehicles/{id} | Get a vehicle
117
159
  *Crisphive::VehicleApi* | [**list_vehicles**](docs/VehicleApi.md#list_vehicles) | **GET** /vehicles | List vehicles
160
+ *Crisphive::VehicleApi* | [**update_vehicle**](docs/VehicleApi.md#update_vehicle) | **PUT** /vehicles/{id} | Change a vehicle's details
161
+ *Crisphive::WebhooksApi* | [**create_webhook_endpoint**](docs/WebhooksApi.md#create_webhook_endpoint) | **POST** /webhooks | Create a webhook endpoint
162
+ *Crisphive::WebhooksApi* | [**delete_webhook_endpoint**](docs/WebhooksApi.md#delete_webhook_endpoint) | **DELETE** /webhooks/{id} | Delete a webhook endpoint
163
+ *Crisphive::WebhooksApi* | [**list_webhook_event_types**](docs/WebhooksApi.md#list_webhook_event_types) | **GET** /webhooks/event-types | List subscribable webhook event types
118
164
 
119
165
 
120
166
  ## Documentation for Models
121
167
 
168
+ - [Crisphive::ApiInternalTechtimeoffActions](docs/ApiInternalTechtimeoffActions.md)
169
+ - [Crisphive::ApiInternalTechtimeoffStatus](docs/ApiInternalTechtimeoffStatus.md)
170
+ - [Crisphive::AssignableGroup](docs/AssignableGroup.md)
171
+ - [Crisphive::BookAndConfirmJobRequest200Response](docs/BookAndConfirmJobRequest200Response.md)
172
+ - [Crisphive::CommitAbsenceResolve200Response](docs/CommitAbsenceResolve200Response.md)
173
+ - [Crisphive::CommitEmergencyReschedule200Response](docs/CommitEmergencyReschedule200Response.md)
174
+ - [Crisphive::CommitJobRequestMove200Response](docs/CommitJobRequestMove200Response.md)
122
175
  - [Crisphive::CreateCustomer200Response](docs/CreateCustomer200Response.md)
123
176
  - [Crisphive::CreateJobRequest200Response](docs/CreateJobRequest200Response.md)
177
+ - [Crisphive::CreateJobType200Response](docs/CreateJobType200Response.md)
178
+ - [Crisphive::CreateServiceArea200Response](docs/CreateServiceArea200Response.md)
179
+ - [Crisphive::CreateSkill200Response](docs/CreateSkill200Response.md)
180
+ - [Crisphive::CreateSkillCategory200Response](docs/CreateSkillCategory200Response.md)
181
+ - [Crisphive::CreateTechnician200Response](docs/CreateTechnician200Response.md)
182
+ - [Crisphive::CreateTechnicianTimeOff200Response](docs/CreateTechnicianTimeOff200Response.md)
183
+ - [Crisphive::CreateVehicle200Response](docs/CreateVehicle200Response.md)
184
+ - [Crisphive::CreateWebhookEndpoint200Response](docs/CreateWebhookEndpoint200Response.md)
124
185
  - [Crisphive::Customer](docs/Customer.md)
125
186
  - [Crisphive::CustomerAddress](docs/CustomerAddress.md)
126
187
  - [Crisphive::CustomerAddressRequest](docs/CustomerAddressRequest.md)
@@ -130,7 +191,10 @@ Class | Method | HTTP request | Description
130
191
  - [Crisphive::CustomerList](docs/CustomerList.md)
131
192
  - [Crisphive::CustomerListItem](docs/CustomerListItem.md)
132
193
  - [Crisphive::CustomerProfile](docs/CustomerProfile.md)
194
+ - [Crisphive::CustomerQuickBooksLink](docs/CustomerQuickBooksLink.md)
195
+ - [Crisphive::CustomerServiceAreaRef](docs/CustomerServiceAreaRef.md)
133
196
  - [Crisphive::CustomerSpending](docs/CustomerSpending.md)
197
+ - [Crisphive::CustomerTechnicianRef](docs/CustomerTechnicianRef.md)
134
198
  - [Crisphive::CustomerTierProgress](docs/CustomerTierProgress.md)
135
199
  - [Crisphive::CustomerUpdateRequest](docs/CustomerUpdateRequest.md)
136
200
  - [Crisphive::GetCustomer200Response](docs/GetCustomer200Response.md)
@@ -139,12 +203,25 @@ Class | Method | HTTP request | Description
139
203
  - [Crisphive::GetJobType200Response](docs/GetJobType200Response.md)
140
204
  - [Crisphive::GetServiceArea200Response](docs/GetServiceArea200Response.md)
141
205
  - [Crisphive::GetTechnician200Response](docs/GetTechnician200Response.md)
206
+ - [Crisphive::GetTechnicianSchedule200Response](docs/GetTechnicianSchedule200Response.md)
142
207
  - [Crisphive::GetVehicle200Response](docs/GetVehicle200Response.md)
208
+ - [Crisphive::InternalJobrequestHttpAddressReq](docs/InternalJobrequestHttpAddressReq.md)
143
209
  - [Crisphive::JobDate](docs/JobDate.md)
144
210
  - [Crisphive::JobDateBusinessRange](docs/JobDateBusinessRange.md)
145
211
  - [Crisphive::JobDatePeriod](docs/JobDatePeriod.md)
146
212
  - [Crisphive::JobDatePeriodEntry](docs/JobDatePeriodEntry.md)
147
213
  - [Crisphive::JobRequest](docs/JobRequest.md)
214
+ - [Crisphive::JobRequestAbsenceAlternative](docs/JobRequestAbsenceAlternative.md)
215
+ - [Crisphive::JobRequestAbsenceAlternativeCost](docs/JobRequestAbsenceAlternativeCost.md)
216
+ - [Crisphive::JobRequestAbsenceAssignment](docs/JobRequestAbsenceAssignment.md)
217
+ - [Crisphive::JobRequestAbsenceCommitRequest](docs/JobRequestAbsenceCommitRequest.md)
218
+ - [Crisphive::JobRequestAbsenceNotification](docs/JobRequestAbsenceNotification.md)
219
+ - [Crisphive::JobRequestAbsencePlan](docs/JobRequestAbsencePlan.md)
220
+ - [Crisphive::JobRequestAbsencePreviewRequest](docs/JobRequestAbsencePreviewRequest.md)
221
+ - [Crisphive::JobRequestAbsenceResolvedJob](docs/JobRequestAbsenceResolvedJob.md)
222
+ - [Crisphive::JobRequestAbsenceSolver](docs/JobRequestAbsenceSolver.md)
223
+ - [Crisphive::JobRequestAbsenceTimeOff](docs/JobRequestAbsenceTimeOff.md)
224
+ - [Crisphive::JobRequestAbsenceUnresolvedJob](docs/JobRequestAbsenceUnresolvedJob.md)
148
225
  - [Crisphive::JobRequestActionAuditBy](docs/JobRequestActionAuditBy.md)
149
226
  - [Crisphive::JobRequestActionAuditEntry](docs/JobRequestActionAuditEntry.md)
150
227
  - [Crisphive::JobRequestActionSummary](docs/JobRequestActionSummary.md)
@@ -153,60 +230,150 @@ Class | Method | HTTP request | Description
153
230
  - [Crisphive::JobRequestArrivalWindow](docs/JobRequestArrivalWindow.md)
154
231
  - [Crisphive::JobRequestAssignedVehicle](docs/JobRequestAssignedVehicle.md)
155
232
  - [Crisphive::JobRequestAssignmentSummary](docs/JobRequestAssignmentSummary.md)
233
+ - [Crisphive::JobRequestAttentionSummary](docs/JobRequestAttentionSummary.md)
234
+ - [Crisphive::JobRequestAvailableVehicle](docs/JobRequestAvailableVehicle.md)
235
+ - [Crisphive::JobRequestBlocker](docs/JobRequestBlocker.md)
236
+ - [Crisphive::JobRequestBlockerRef](docs/JobRequestBlockerRef.md)
237
+ - [Crisphive::JobRequestBookAndConfirmCustomer](docs/JobRequestBookAndConfirmCustomer.md)
238
+ - [Crisphive::JobRequestBookAndConfirmEmergency](docs/JobRequestBookAndConfirmEmergency.md)
239
+ - [Crisphive::JobRequestBookAndConfirmEmergencyResult](docs/JobRequestBookAndConfirmEmergencyResult.md)
240
+ - [Crisphive::JobRequestBookAndConfirmRefusal](docs/JobRequestBookAndConfirmRefusal.md)
241
+ - [Crisphive::JobRequestBookAndConfirmRequest](docs/JobRequestBookAndConfirmRequest.md)
242
+ - [Crisphive::JobRequestBookAndConfirmResponse](docs/JobRequestBookAndConfirmResponse.md)
156
243
  - [Crisphive::JobRequestBookingWindows](docs/JobRequestBookingWindows.md)
244
+ - [Crisphive::JobRequestBuddySlotCandidates](docs/JobRequestBuddySlotCandidates.md)
157
245
  - [Crisphive::JobRequestBusinessTimeRange](docs/JobRequestBusinessTimeRange.md)
158
246
  - [Crisphive::JobRequestChanges](docs/JobRequestChanges.md)
247
+ - [Crisphive::JobRequestConfirmRequest](docs/JobRequestConfirmRequest.md)
159
248
  - [Crisphive::JobRequestCreateRequest](docs/JobRequestCreateRequest.md)
160
249
  - [Crisphive::JobRequestCreateResponse](docs/JobRequestCreateResponse.md)
250
+ - [Crisphive::JobRequestCrewCandidates](docs/JobRequestCrewCandidates.md)
251
+ - [Crisphive::JobRequestCrewChange](docs/JobRequestCrewChange.md)
161
252
  - [Crisphive::JobRequestCrewMember](docs/JobRequestCrewMember.md)
253
+ - [Crisphive::JobRequestCrewMemberInput](docs/JobRequestCrewMemberInput.md)
254
+ - [Crisphive::JobRequestCrewRecommendation](docs/JobRequestCrewRecommendation.md)
162
255
  - [Crisphive::JobRequestCustomerSummary](docs/JobRequestCustomerSummary.md)
163
256
  - [Crisphive::JobRequestDayWindows](docs/JobRequestDayWindows.md)
257
+ - [Crisphive::JobRequestEmergencyCandidate](docs/JobRequestEmergencyCandidate.md)
258
+ - [Crisphive::JobRequestEmergencyCandidates](docs/JobRequestEmergencyCandidates.md)
259
+ - [Crisphive::JobRequestEmergencyCandidatesRequest](docs/JobRequestEmergencyCandidatesRequest.md)
260
+ - [Crisphive::JobRequestEmergencyCommitRequest](docs/JobRequestEmergencyCommitRequest.md)
261
+ - [Crisphive::JobRequestEmergencyInlineJob](docs/JobRequestEmergencyInlineJob.md)
262
+ - [Crisphive::JobRequestEmergencyPlan](docs/JobRequestEmergencyPlan.md)
263
+ - [Crisphive::JobRequestEmergencyPreviewRequest](docs/JobRequestEmergencyPreviewRequest.md)
164
264
  - [Crisphive::JobRequestJobDateBusinessRangeRequest](docs/JobRequestJobDateBusinessRangeRequest.md)
165
265
  - [Crisphive::JobRequestJobDatePeriodRequest](docs/JobRequestJobDatePeriodRequest.md)
166
266
  - [Crisphive::JobRequestJobDateRequest](docs/JobRequestJobDateRequest.md)
267
+ - [Crisphive::JobRequestLeadCandidate](docs/JobRequestLeadCandidate.md)
167
268
  - [Crisphive::JobRequestList](docs/JobRequestList.md)
269
+ - [Crisphive::JobRequestMoveCommitReq](docs/JobRequestMoveCommitReq.md)
270
+ - [Crisphive::JobRequestMoveMember](docs/JobRequestMoveMember.md)
271
+ - [Crisphive::JobRequestMovePlan](docs/JobRequestMovePlan.md)
272
+ - [Crisphive::JobRequestMovePreviewReq](docs/JobRequestMovePreviewReq.md)
273
+ - [Crisphive::JobRequestMoveWarning](docs/JobRequestMoveWarning.md)
168
274
  - [Crisphive::JobRequestPeriod](docs/JobRequestPeriod.md)
275
+ - [Crisphive::JobRequestPriorityUpdateResult](docs/JobRequestPriorityUpdateResult.md)
276
+ - [Crisphive::JobRequestQuoteRequest](docs/JobRequestQuoteRequest.md)
169
277
  - [Crisphive::JobRequestQuoteSummary](docs/JobRequestQuoteSummary.md)
170
278
  - [Crisphive::JobRequestRatingSummary](docs/JobRequestRatingSummary.md)
279
+ - [Crisphive::JobRequestReassignFallback](docs/JobRequestReassignFallback.md)
280
+ - [Crisphive::JobRequestRescheduleDay](docs/JobRequestRescheduleDay.md)
281
+ - [Crisphive::JobRequestRescheduleMove](docs/JobRequestRescheduleMove.md)
282
+ - [Crisphive::JobRequestRescheduleReassignment](docs/JobRequestRescheduleReassignment.md)
171
283
  - [Crisphive::JobRequestSchedule](docs/JobRequestSchedule.md)
172
284
  - [Crisphive::JobRequestSession](docs/JobRequestSession.md)
173
285
  - [Crisphive::JobRequestSkillSummary](docs/JobRequestSkillSummary.md)
174
286
  - [Crisphive::JobRequestStatusSummary](docs/JobRequestStatusSummary.md)
287
+ - [Crisphive::JobRequestTechCandidate](docs/JobRequestTechCandidate.md)
175
288
  - [Crisphive::JobRequestTechnicianInfo](docs/JobRequestTechnicianInfo.md)
289
+ - [Crisphive::JobRequestTimeSegments](docs/JobRequestTimeSegments.md)
290
+ - [Crisphive::JobRequestTimeSegmentsBusinessTime](docs/JobRequestTimeSegmentsBusinessTime.md)
291
+ - [Crisphive::JobRequestTimeSegmentsDay](docs/JobRequestTimeSegmentsDay.md)
292
+ - [Crisphive::JobRequestTimeSegmentsSlot](docs/JobRequestTimeSegmentsSlot.md)
293
+ - [Crisphive::JobRequestTimeSegmentsWorker](docs/JobRequestTimeSegmentsWorker.md)
176
294
  - [Crisphive::JobRequestTimeline](docs/JobRequestTimeline.md)
177
295
  - [Crisphive::JobRequestTimelineAction](docs/JobRequestTimelineAction.md)
178
296
  - [Crisphive::JobRequestTimelineEvent](docs/JobRequestTimelineEvent.md)
297
+ - [Crisphive::JobRequestUpdatePriorityRequest](docs/JobRequestUpdatePriorityRequest.md)
179
298
  - [Crisphive::JobType](docs/JobType.md)
299
+ - [Crisphive::JobTypeCreateRequest](docs/JobTypeCreateRequest.md)
300
+ - [Crisphive::JobTypeCreateResponse](docs/JobTypeCreateResponse.md)
301
+ - [Crisphive::JobTypeUpdateRequest](docs/JobTypeUpdateRequest.md)
302
+ - [Crisphive::ListAssignableGroups200Response](docs/ListAssignableGroups200Response.md)
303
+ - [Crisphive::ListCrewCandidates200Response](docs/ListCrewCandidates200Response.md)
180
304
  - [Crisphive::ListCustomers200Response](docs/ListCustomers200Response.md)
305
+ - [Crisphive::ListEmergencyCandidates200Response](docs/ListEmergencyCandidates200Response.md)
181
306
  - [Crisphive::ListJobRequestBookingWindows200Response](docs/ListJobRequestBookingWindows200Response.md)
182
307
  - [Crisphive::ListJobRequestChanges200Response](docs/ListJobRequestChanges200Response.md)
183
308
  - [Crisphive::ListJobRequests200Response](docs/ListJobRequests200Response.md)
184
309
  - [Crisphive::ListJobTypes200Response](docs/ListJobTypes200Response.md)
310
+ - [Crisphive::ListMatchingSlots200Response](docs/ListMatchingSlots200Response.md)
311
+ - [Crisphive::ListNearbyTechnicians200Response](docs/ListNearbyTechnicians200Response.md)
185
312
  - [Crisphive::ListServiceAreas200Response](docs/ListServiceAreas200Response.md)
186
313
  - [Crisphive::ListSkillCategories200Response](docs/ListSkillCategories200Response.md)
187
314
  - [Crisphive::ListSkills200Response](docs/ListSkills200Response.md)
188
315
  - [Crisphive::ListSkillsByCategory200Response](docs/ListSkillsByCategory200Response.md)
316
+ - [Crisphive::ListTechnicianSkills200Response](docs/ListTechnicianSkills200Response.md)
317
+ - [Crisphive::ListTechnicianTimeOff200Response](docs/ListTechnicianTimeOff200Response.md)
189
318
  - [Crisphive::ListTechnicians200Response](docs/ListTechnicians200Response.md)
190
319
  - [Crisphive::ListVehicles200Response](docs/ListVehicles200Response.md)
320
+ - [Crisphive::ListWebhookEventTypes200Response](docs/ListWebhookEventTypes200Response.md)
321
+ - [Crisphive::NearbyTechnician](docs/NearbyTechnician.md)
322
+ - [Crisphive::NearbyTechnicians](docs/NearbyTechnicians.md)
191
323
  - [Crisphive::Pagination](docs/Pagination.md)
324
+ - [Crisphive::QuoteJobRequest200Response](docs/QuoteJobRequest200Response.md)
325
+ - [Crisphive::ReplaceTechnicianServiceAreas200Response](docs/ReplaceTechnicianServiceAreas200Response.md)
192
326
  - [Crisphive::ResponseEnvelope](docs/ResponseEnvelope.md)
193
327
  - [Crisphive::ServiceArea](docs/ServiceArea.md)
328
+ - [Crisphive::ServiceAreaCreateRequest](docs/ServiceAreaCreateRequest.md)
329
+ - [Crisphive::ServiceAreaCreateResponse](docs/ServiceAreaCreateResponse.md)
194
330
  - [Crisphive::ServiceAreaList](docs/ServiceAreaList.md)
331
+ - [Crisphive::ServiceAreaUpdateRequest](docs/ServiceAreaUpdateRequest.md)
195
332
  - [Crisphive::Skill](docs/Skill.md)
196
333
  - [Crisphive::SkillByCategoryList](docs/SkillByCategoryList.md)
197
334
  - [Crisphive::SkillCategory](docs/SkillCategory.md)
335
+ - [Crisphive::SkillCategoryCreateRequest](docs/SkillCategoryCreateRequest.md)
336
+ - [Crisphive::SkillCategoryCreateResponse](docs/SkillCategoryCreateResponse.md)
198
337
  - [Crisphive::SkillCategoryList](docs/SkillCategoryList.md)
338
+ - [Crisphive::SkillCreateRequest](docs/SkillCreateRequest.md)
339
+ - [Crisphive::SkillCreateResponse](docs/SkillCreateResponse.md)
199
340
  - [Crisphive::SkillList](docs/SkillList.md)
200
341
  - [Crisphive::SkillSummary](docs/SkillSummary.md)
342
+ - [Crisphive::SkillUpdateRequest](docs/SkillUpdateRequest.md)
201
343
  - [Crisphive::Technician](docs/Technician.md)
202
344
  - [Crisphive::TechnicianAddress](docs/TechnicianAddress.md)
345
+ - [Crisphive::TechnicianAddressInput](docs/TechnicianAddressInput.md)
346
+ - [Crisphive::TechnicianBuddiesRequest](docs/TechnicianBuddiesRequest.md)
347
+ - [Crisphive::TechnicianCreateRequest](docs/TechnicianCreateRequest.md)
348
+ - [Crisphive::TechnicianCreateResponse](docs/TechnicianCreateResponse.md)
203
349
  - [Crisphive::TechnicianLeadRef](docs/TechnicianLeadRef.md)
350
+ - [Crisphive::TechnicianLeadsRequest](docs/TechnicianLeadsRequest.md)
204
351
  - [Crisphive::TechnicianList](docs/TechnicianList.md)
352
+ - [Crisphive::TechnicianSchedule](docs/TechnicianSchedule.md)
353
+ - [Crisphive::TechnicianScheduleBlock](docs/TechnicianScheduleBlock.md)
354
+ - [Crisphive::TechnicianScheduleSession](docs/TechnicianScheduleSession.md)
205
355
  - [Crisphive::TechnicianServiceAreaRef](docs/TechnicianServiceAreaRef.md)
356
+ - [Crisphive::TechnicianServiceAreasRequest](docs/TechnicianServiceAreasRequest.md)
357
+ - [Crisphive::TechnicianServiceAreasResponse](docs/TechnicianServiceAreasResponse.md)
358
+ - [Crisphive::TechnicianSkill](docs/TechnicianSkill.md)
359
+ - [Crisphive::TechnicianSkillList](docs/TechnicianSkillList.md)
360
+ - [Crisphive::TechnicianSkillsRequest](docs/TechnicianSkillsRequest.md)
206
361
  - [Crisphive::TechnicianStatus](docs/TechnicianStatus.md)
362
+ - [Crisphive::TechnicianTimeOff](docs/TechnicianTimeOff.md)
363
+ - [Crisphive::TechnicianTimeOffCreateRequest](docs/TechnicianTimeOffCreateRequest.md)
364
+ - [Crisphive::TechnicianTimeOffCreateResponse](docs/TechnicianTimeOffCreateResponse.md)
365
+ - [Crisphive::TechnicianTimeOffList](docs/TechnicianTimeOffList.md)
366
+ - [Crisphive::TechnicianUpdateRequest](docs/TechnicianUpdateRequest.md)
367
+ - [Crisphive::TechnicianVehiclesRequest](docs/TechnicianVehiclesRequest.md)
207
368
  - [Crisphive::Vehicle](docs/Vehicle.md)
369
+ - [Crisphive::VehicleCreateRequest](docs/VehicleCreateRequest.md)
370
+ - [Crisphive::VehicleCreateResponse](docs/VehicleCreateResponse.md)
208
371
  - [Crisphive::VehicleList](docs/VehicleList.md)
209
372
  - [Crisphive::VehicleOwner](docs/VehicleOwner.md)
373
+ - [Crisphive::VehicleUpdateRequest](docs/VehicleUpdateRequest.md)
374
+ - [Crisphive::WebhookCreateRequest](docs/WebhookCreateRequest.md)
375
+ - [Crisphive::WebhookCreateResponse](docs/WebhookCreateResponse.md)
376
+ - [Crisphive::WebhookVerification](docs/WebhookVerification.md)
210
377
 
211
378
 
212
379
  ## Documentation for Authorization
@@ -215,5 +382,5 @@ Class | Method | HTTP request | Description
215
382
  Authentication schemes defined for the API:
216
383
  ### ApiKeyAuth
217
384
 
218
- - **Type**: Bearer authentication (CrispHive secret key)
385
+ - **Type**: Bearer authentication (Crisphive secret key)
219
386
 
data/crisphive.gemspec CHANGED
@@ -1,9 +1,9 @@
1
1
  # -*- encoding: utf-8 -*-
2
2
 
3
3
  =begin
4
- #CrispHive Developer API
4
+ #Crisphive Developer API
5
5
 
6
- #Public REST API for integrating CrispHive from your own backend. Authenticate every request with a secret API key as a Bearer token (`Authorization: Bearer chsk_live_…`). The key prefix selects the data environment: `chsk_live_…` → production (live), `chsk_test_…` → sandbox (isolated test). **Key scopes (restricted keys).** A key is either *full-access* (can call every endpoint below) or *restricted* to a set of permission codes chosen at creation — the same codes as the dashboard permission grid (e.g. `customers_view`, `job_create`, `team_manage`). A restricted key calling an endpoint outside its scope gets `403`. The full code list is the permission catalog (`GET /permission/modules` on the dashboard API). Create, scope, and revoke keys from the business dashboard. Every response is wrapped in the envelope `{ \"error_code\": 0, \"message\": \"Success\", \"data\": <payload> }`.
6
+ #Public REST API for integrating Crisphive from your own backend. Authenticate every request with a secret API key as a Bearer token (`Authorization: Bearer chsk_live_…`). The key prefix selects the data environment: `chsk_live_…` → production (live), `chsk_test_…` → sandbox (isolated test). **Key scopes (restricted keys).** A key is either *full-access* (can call every endpoint below) or *restricted* to a set of permission codes chosen at creation — the same codes as the dashboard permission grid (e.g. `customers_view`, `job_create`, `team_manage`). A restricted key calling an endpoint outside its scope gets `403`. The full code list is the permission catalog (`GET /permission/modules` on the dashboard API). Create, scope, and revoke keys from the business dashboard. Every response is wrapped in the envelope `{ \"error_code\": 0, \"message\": \"Success\", \"data\": <payload> }`.
7
7
 
8
8
  The version of the OpenAPI document: 1.0
9
9
 
@@ -19,11 +19,11 @@ Gem::Specification.new do |s|
19
19
  s.name = "crisphive"
20
20
  s.version = Crisphive::VERSION
21
21
  s.platform = Gem::Platform::RUBY
22
- s.authors = ["CrispHive"]
22
+ s.authors = ["Crisphive"]
23
23
  s.email = ["developer@crisphive.com"]
24
24
  s.homepage = "https://docs.crisphive.com"
25
- s.summary = "Official Ruby SDK for the CrispHive API"
26
- s.description = "Official Ruby SDK for the CrispHive API. Typed access to the public /v1 API - customers, bookings, catalog, team and fleet."
25
+ s.summary = "Official Ruby SDK for the Crisphive API"
26
+ s.description = "Official Ruby SDK for the Crisphive API. Typed access to the public /v1 API - customers, bookings, catalog, team and fleet."
27
27
  s.license = "MIT"
28
28
  s.required_ruby_version = ">= 2.7"
29
29
  s.metadata = { "source_code_uri" => "https://github.com/crisphive/crisphive-ruby", "documentation_uri" => "https://docs.crisphive.com" }