Class: Peddler::APIs::ServicesV1
- Inherits:
-
Peddler::API
- Object
- Peddler::API
- Peddler::APIs::ServicesV1
- Defined in:
- lib/peddler/apis/services_v1.rb,
lib/peddler/apis/services_v1/poa.rb,
lib/peddler/apis/services_v1/buyer.rb,
lib/peddler/apis/services_v1/error.rb,
lib/peddler/apis/services_v1/seller.rb,
lib/peddler/apis/services_v1/address.rb,
lib/peddler/apis/services_v1/payment.rb,
lib/peddler/apis/services_v1/warning.rb,
lib/peddler/apis/services_v1/error_list.rb,
lib/peddler/apis/services_v1/fixed_slot.rb,
lib/peddler/apis/services_v1/range_slot.rb,
lib/peddler/apis/services_v1/recurrence.rb,
lib/peddler/apis/services_v1/technician.rb,
lib/peddler/apis/services_v1/appointment.rb,
lib/peddler/apis/services_v1/job_listing.rb,
lib/peddler/apis/services_v1/reservation.rb,
lib/peddler/apis/services_v1/service_job.rb,
lib/peddler/apis/services_v1/linked_asset.rb,
lib/peddler/apis/services_v1/money_amount.rb,
lib/peddler/apis/services_v1/warning_list.rb,
lib/peddler/apis/services_v1/item_delivery.rb,
lib/peddler/apis/services_v1/scope_of_work.rb,
lib/peddler/apis/services_v1/range_capacity.rb,
lib/peddler/apis/services_v1/associated_item.rb,
lib/peddler/apis/services_v1/date_time_range.rb,
lib/peddler/apis/services_v1/appointment_slot.rb,
lib/peddler/apis/services_v1/appointment_time.rb,
lib/peddler/apis/services_v1/fulfillment_time.rb,
lib/peddler/apis/services_v1/service_location.rb,
lib/peddler/apis/services_v1/encryption_details.rb,
lib/peddler/apis/services_v1/availability_record.rb,
lib/peddler/apis/services_v1/fixed_slot_capacity.rb,
lib/peddler/apis/services_v1/range_slot_capacity.rb,
lib/peddler/apis/services_v1/appointment_resource.rb,
lib/peddler/apis/services_v1/availability_records.rb,
lib/peddler/apis/services_v1/fulfillment_document.rb,
lib/peddler/apis/services_v1/service_job_provider.rb,
lib/peddler/apis/services_v1/appointment_resources.rb,
lib/peddler/apis/services_v1/fulfillment_documents.rb,
lib/peddler/apis/services_v1/item_delivery_promise.rb,
lib/peddler/apis/services_v1/appointment_time_input.rb,
lib/peddler/apis/services_v1/update_schedule_record.rb,
lib/peddler/apis/services_v1/add_appointment_request.rb,
lib/peddler/apis/services_v1/appointment_slot_report.rb,
lib/peddler/apis/services_v1/service_upload_document.rb,
lib/peddler/apis/services_v1/update_schedule_request.rb,
lib/peddler/apis/services_v1/set_appointment_response.rb,
lib/peddler/apis/services_v1/update_schedule_response.rb,
lib/peddler/apis/services_v1/create_reservation_record.rb,
lib/peddler/apis/services_v1/fixed_slot_capacity_query.rb,
lib/peddler/apis/services_v1/get_service_jobs_response.rb,
lib/peddler/apis/services_v1/range_slot_capacity_query.rb,
lib/peddler/apis/services_v1/update_reservation_record.rb,
lib/peddler/apis/services_v1/create_reservation_request.rb,
lib/peddler/apis/services_v1/fixed_slot_capacity_errors.rb,
lib/peddler/apis/services_v1/range_slot_capacity_errors.rb,
lib/peddler/apis/services_v1/update_reservation_request.rb,
lib/peddler/apis/services_v1/cancel_reservation_response.rb,
lib/peddler/apis/services_v1/create_reservation_response.rb,
lib/peddler/apis/services_v1/update_reservation_response.rb,
lib/peddler/apis/services_v1/get_appointment_slots_response.rb,
lib/peddler/apis/services_v1/reschedule_appointment_request.rb,
lib/peddler/apis/services_v1/service_document_upload_destination.rb,
lib/peddler/apis/services_v1/assign_appointment_resources_request.rb,
lib/peddler/apis/services_v1/assign_appointment_resources_response.rb,
lib/peddler/apis/services_v1/set_appointment_fulfillment_data_request.rb,
lib/peddler/apis/services_v1/create_service_document_upload_destination.rb,
lib/peddler/apis/services_v1/get_service_job_by_service_job_id_response.rb,
lib/peddler/apis/services_v1/cancel_service_job_by_service_job_id_response.rb,
lib/peddler/apis/services_v1/complete_service_job_by_service_job_id_response.rb,
sig/peddler/apis/services_v1.rbs
Overview
Selling Partner API for Services
With the Services API, you can build applications that help service providers get and modify their service orders and manage their resources.
Defined Under Namespace
Classes: AddAppointmentRequest, Address, Appointment, AppointmentResource, AppointmentResources, AppointmentSlot, AppointmentSlotReport, AppointmentTime, AppointmentTimeInput, AssignAppointmentResourcesRequest, AssignAppointmentResourcesResponse, AssociatedItem, AvailabilityRecord, AvailabilityRecords, Buyer, CancelReservationResponse, CancelServiceJobByServiceJobIdResponse, CompleteServiceJobByServiceJobIdResponse, CreateReservationRecord, CreateReservationRequest, CreateReservationResponse, CreateServiceDocumentUploadDestination, DateTimeRange, EncryptionDetails, Error, ErrorList, FixedSlot, FixedSlotCapacity, FixedSlotCapacityErrors, FixedSlotCapacityQuery, FulfillmentDocument, FulfillmentDocuments, FulfillmentTime, GetAppointmentSlotsResponse, GetServiceJobByServiceJobIdResponse, GetServiceJobsResponse, ItemDelivery, ItemDeliveryPromise, JobListing, LinkedAsset, MoneyAmount, Payment, Poa, RangeCapacity, RangeSlot, RangeSlotCapacity, RangeSlotCapacityErrors, RangeSlotCapacityQuery, Recurrence, RescheduleAppointmentRequest, Reservation, ScopeOfWork, Seller, ServiceDocumentUploadDestination, ServiceJob, ServiceJobProvider, ServiceLocation, ServiceUploadDocument, SetAppointmentFulfillmentDataRequest, SetAppointmentResponse, Technician, UpdateReservationRecord, UpdateReservationRequest, UpdateReservationResponse, UpdateScheduleRecord, UpdateScheduleRequest, UpdateScheduleResponse, Warning, WarningList
Constant Summary
Constants inherited from Peddler::API
Peddler::API::TRANSIENT_STATUSES
Instance Attribute Summary
Attributes inherited from Peddler::API
#access_token, #base_url, #endpoint, #retries
Instance Method Summary collapse
-
#add_appointment_for_service_job_by_service_job_id(service_job_id, body, rate_limit: 5.0) ⇒ Peddler::Response
Adds an appointment to the service job indicated by the service job identifier specified.
-
#assign_appointment_resources(service_job_id, appointment_id, body, rate_limit: 1.0) ⇒ Peddler::Response
Assigns new resource(s) or overwrite/update the existing one(s) to a service job appointment.
-
#cancel_reservation(reservation_id, marketplace_ids, rate_limit: 5.0) ⇒ Peddler::Response
Cancel a reservation.
-
#cancel_service_job_by_service_job_id(service_job_id, cancellation_reason_code, rate_limit: 5.0) ⇒ Peddler::Response
Cancels the service job indicated by the service job identifier specified.
-
#complete_service_job_by_service_job_id(service_job_id, rate_limit: 5.0) ⇒ Peddler::Response
Completes the service job indicated by the service job identifier specified.
-
#create_reservation(body, marketplace_ids, rate_limit: 5.0) ⇒ Peddler::Response
Create a reservation.
-
#create_service_document_upload_destination(body, rate_limit: 5.0) ⇒ Peddler::Response
Creates an upload destination.
-
#get_appointment_slots(asin, store_id, marketplace_ids, start_time: nil, end_time: nil, rate_limit: 20.0) ⇒ Peddler::Response
Gets appointment slots as per the service context specified.
-
#get_appointmment_slots_by_job_id(service_job_id, marketplace_ids, start_time: nil, end_time: nil, rate_limit: 5.0) ⇒ Peddler::Response
Gets appointment slots for the service associated with the service job id specified.
-
#get_fixed_slot_capacity(resource_id, body, marketplace_ids, next_page_token: nil, rate_limit: 5.0) ⇒ Peddler::Response
Provides capacity in fixed-size slots.
-
#get_range_slot_capacity(resource_id, body, marketplace_ids, next_page_token: nil, rate_limit: 5.0) ⇒ Peddler::Response
Provides capacity slots in a format similar to availability records.
-
#get_service_job_by_service_job_id(service_job_id, rate_limit: 20.0) ⇒ Peddler::Response
Gets details of service job indicated by the provided
serviceJobID. -
#get_service_jobs(marketplace_ids, service_order_ids: nil, product_order_ids: nil, tracking_ids: nil, service_job_status: nil, page_token: nil, page_size: 20, sort_field: nil, sort_order: nil, created_after: nil, created_before: nil, last_updated_after: nil, last_updated_before: nil, schedule_start_date: nil, schedule_end_date: nil, asins: nil, required_skills: nil, store_ids: nil, rate_limit: 10.0) ⇒ Peddler::Response
Gets service job details for the specified filter query.
-
#reschedule_appointment_for_service_job_by_service_job_id(service_job_id, appointment_id, body, rate_limit: 5.0) ⇒ Peddler::Response
Reschedules an appointment for the service job indicated by the service job identifier specified.
-
#set_appointment_fulfillment_data(service_job_id, appointment_id, body, rate_limit: 5.0) ⇒ Peddler::Response
Updates the appointment fulfillment data related to a given
jobIDandappointmentID. -
#update_reservation(reservation_id, body, marketplace_ids, rate_limit: 5.0) ⇒ Peddler::Response
Update a reservation.
-
#update_schedule(resource_id, body, marketplace_ids, rate_limit: 5.0) ⇒ Peddler::Response
Update the schedule of the given resource.
Methods inherited from Peddler::API
#cannot_sandbox!, #delete, #endpoint_uri, #get, #host_header, #http, #initialize, #must_sandbox!, #parse_base_url, #patch, #percent_encode, #post, #put, #request, #sandbox, #sandbox?, #stringify_array, #timestamp, #user_agent
Constructor Details
This class inherits a constructor from Peddler::API
Instance Method Details
#add_appointment_for_service_job_by_service_job_id(service_job_id, body, rate_limit: 5.0) ⇒ Peddler::Response
This operation can make a static sandbox call.
Adds an appointment to the service job indicated by the service job identifier specified.
133 134 135 136 137 |
# File 'lib/peddler/apis/services_v1.rb', line 133 def add_appointment_for_service_job_by_service_job_id(service_job_id, body, rate_limit: 5.0) path = "/service/v1/serviceJobs/#{percent_encode(service_job_id)}/appointments" parser = -> { SetAppointmentResponse } post(path, body:, rate_limit:, parser:) end |
#assign_appointment_resources(service_job_id, appointment_id, body, rate_limit: 1.0) ⇒ Peddler::Response
This operation can make a static sandbox call.
Assigns new resource(s) or overwrite/update the existing one(s) to a service job appointment.
163 164 165 166 167 |
# File 'lib/peddler/apis/services_v1.rb', line 163 def assign_appointment_resources(service_job_id, appointment_id, body, rate_limit: 1.0) path = "/service/v1/serviceJobs/#{percent_encode(service_job_id)}/appointments/#{percent_encode(appointment_id)}/resources" parser = -> { AssignAppointmentResourcesResponse } put(path, body:, rate_limit:, parser:) end |
#cancel_reservation(reservation_id, marketplace_ids, rate_limit: 5.0) ⇒ Peddler::Response
This operation can make a static sandbox call.
Cancel a reservation.
278 279 280 281 282 283 284 285 |
# File 'lib/peddler/apis/services_v1.rb', line 278 def cancel_reservation(reservation_id, marketplace_ids, rate_limit: 5.0) path = "/service/v1/reservation/#{percent_encode(reservation_id)}" params = { "marketplaceIds" => stringify_array(marketplace_ids), }.compact parser = -> { CancelReservationResponse } delete(path, params:, rate_limit:, parser:) end |
#cancel_service_job_by_service_job_id(service_job_id, cancellation_reason_code, rate_limit: 5.0) ⇒ Peddler::Response
This operation can make a static sandbox call.
Cancels the service job indicated by the service job identifier specified.
34 35 36 37 38 39 40 41 |
# File 'lib/peddler/apis/services_v1.rb', line 34 def cancel_service_job_by_service_job_id(service_job_id, cancellation_reason_code, rate_limit: 5.0) path = "/service/v1/serviceJobs/#{percent_encode(service_job_id)}/cancellations" params = { "cancellationReasonCode" => cancellation_reason_code, }.compact parser = -> { CancelServiceJobByServiceJobIdResponse } put(path, params:, rate_limit:, parser:) end |
#complete_service_job_by_service_job_id(service_job_id, rate_limit: 5.0) ⇒ Peddler::Response
This operation can make a static sandbox call.
Completes the service job indicated by the service job identifier specified.
49 50 51 52 53 |
# File 'lib/peddler/apis/services_v1.rb', line 49 def complete_service_job_by_service_job_id(service_job_id, rate_limit: 5.0) path = "/service/v1/serviceJobs/#{percent_encode(service_job_id)}/completions" parser = -> { CompleteServiceJobByServiceJobIdResponse } put(path, rate_limit:, parser:) end |
#create_reservation(body, marketplace_ids, rate_limit: 5.0) ⇒ Peddler::Response
This operation can make a static sandbox call.
Create a reservation.
245 246 247 248 249 250 251 252 |
# File 'lib/peddler/apis/services_v1.rb', line 245 def create_reservation(body, marketplace_ids, rate_limit: 5.0) path = "/service/v1/reservation" params = { "marketplaceIds" => stringify_array(marketplace_ids), }.compact parser = -> { CreateReservationResponse } post(path, body:, params:, rate_limit:, parser:) end |
#create_service_document_upload_destination(body, rate_limit: 5.0) ⇒ Peddler::Response
This operation can make a static sandbox call.
Creates an upload destination.
345 346 347 348 349 |
# File 'lib/peddler/apis/services_v1.rb', line 345 def create_service_document_upload_destination(body, rate_limit: 5.0) path = "/service/v1/documents" parser = -> { CreateServiceDocumentUploadDestination } post(path, body:, rate_limit:, parser:) end |
#get_appointment_slots(asin, store_id, marketplace_ids, start_time: nil, end_time: nil, rate_limit: 20.0) ⇒ Peddler::Response
This operation can make a static sandbox call.
Gets appointment slots as per the service context specified.
326 327 328 329 330 331 332 333 334 335 336 337 |
# File 'lib/peddler/apis/services_v1.rb', line 326 def get_appointment_slots(asin, store_id, marketplace_ids, start_time: nil, end_time: nil, rate_limit: 20.0) path = "/service/v1/appointmentSlots" params = { "asin" => asin, "storeId" => store_id, "marketplaceIds" => stringify_array(marketplace_ids), "startTime" => start_time, "endTime" => end_time, }.compact parser = -> { GetAppointmentSlotsResponse } get(path, params:, rate_limit:, parser:) end |
#get_appointmment_slots_by_job_id(service_job_id, marketplace_ids, start_time: nil, end_time: nil, rate_limit: 5.0) ⇒ Peddler::Response
This operation can make a static sandbox call.
Gets appointment slots for the service associated with the service job id specified.
300 301 302 303 304 305 306 307 308 309 310 |
# File 'lib/peddler/apis/services_v1.rb', line 300 def get_appointmment_slots_by_job_id(service_job_id, marketplace_ids, start_time: nil, end_time: nil, rate_limit: 5.0) path = "/service/v1/serviceJobs/#{percent_encode(service_job_id)}/appointmentSlots" params = { "marketplaceIds" => stringify_array(marketplace_ids), "startTime" => start_time, "endTime" => end_time, }.compact parser = -> { GetAppointmentSlotsResponse } get(path, params:, rate_limit:, parser:) end |
#get_fixed_slot_capacity(resource_id, body, marketplace_ids, next_page_token: nil, rate_limit: 5.0) ⇒ Peddler::Response
This operation can make a static sandbox call.
Provides capacity in fixed-size slots.
211 212 213 214 215 216 217 218 219 |
# File 'lib/peddler/apis/services_v1.rb', line 211 def get_fixed_slot_capacity(resource_id, body, marketplace_ids, next_page_token: nil, rate_limit: 5.0) path = "/service/v1/serviceResources/#{percent_encode(resource_id)}/capacity/fixed" params = { "marketplaceIds" => stringify_array(marketplace_ids), "nextPageToken" => next_page_token, }.compact parser = -> { FixedSlotCapacity } post(path, body:, params:, rate_limit:, parser:) end |
#get_range_slot_capacity(resource_id, body, marketplace_ids, next_page_token: nil, rate_limit: 5.0) ⇒ Peddler::Response
This operation can make a static sandbox call.
Provides capacity slots in a format similar to availability records.
192 193 194 195 196 197 198 199 200 |
# File 'lib/peddler/apis/services_v1.rb', line 192 def get_range_slot_capacity(resource_id, body, marketplace_ids, next_page_token: nil, rate_limit: 5.0) path = "/service/v1/serviceResources/#{percent_encode(resource_id)}/capacity/range" params = { "marketplaceIds" => stringify_array(marketplace_ids), "nextPageToken" => next_page_token, }.compact parser = -> { RangeSlotCapacity } post(path, body:, params:, rate_limit:, parser:) end |
#get_service_job_by_service_job_id(service_job_id, rate_limit: 20.0) ⇒ Peddler::Response
This operation can make a static sandbox call.
Gets details of service job indicated by the provided serviceJobID.
20 21 22 23 24 |
# File 'lib/peddler/apis/services_v1.rb', line 20 def get_service_job_by_service_job_id(service_job_id, rate_limit: 20.0) path = "/service/v1/serviceJobs/#{percent_encode(service_job_id)}" parser = -> { GetServiceJobByServiceJobIdResponse } get(path, rate_limit:, parser:) end |
#get_service_jobs(marketplace_ids, service_order_ids: nil, product_order_ids: nil, tracking_ids: nil, service_job_status: nil, page_token: nil, page_size: 20, sort_field: nil, sort_order: nil, created_after: nil, created_before: nil, last_updated_after: nil, last_updated_before: nil, schedule_start_date: nil, schedule_end_date: nil, asins: nil, required_skills: nil, store_ids: nil, rate_limit: 10.0) ⇒ Peddler::Response
This operation can make a static sandbox call.
Gets service job details for the specified filter query.
97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 |
# File 'lib/peddler/apis/services_v1.rb', line 97 def get_service_jobs(marketplace_ids, service_order_ids: nil, product_order_ids: nil, tracking_ids: nil, service_job_status: nil, page_token: nil, page_size: 20, sort_field: nil, sort_order: nil, created_after: nil, created_before: nil, last_updated_after: nil, last_updated_before: nil, schedule_start_date: nil, schedule_end_date: nil, asins: nil, required_skills: nil, store_ids: nil, rate_limit: 10.0) path = "/service/v1/serviceJobs" params = { "serviceOrderIds" => stringify_array(service_order_ids), "productOrderIds" => stringify_array(product_order_ids), "trackingIds" => stringify_array(tracking_ids), "serviceJobStatus" => stringify_array(service_job_status), "pageToken" => page_token, "pageSize" => page_size, "sortField" => sort_field, "sortOrder" => sort_order, "createdAfter" => created_after, "createdBefore" => created_before, "lastUpdatedAfter" => last_updated_after, "lastUpdatedBefore" => last_updated_before, "scheduleStartDate" => schedule_start_date, "scheduleEndDate" => schedule_end_date, "marketplaceIds" => stringify_array(marketplace_ids), "asins" => stringify_array(asins), "requiredSkills" => stringify_array(required_skills), "storeIds" => stringify_array(store_ids), }.compact parser = -> { GetServiceJobsResponse } get(path, params:, rate_limit:, parser:) end |
#reschedule_appointment_for_service_job_by_service_job_id(service_job_id, appointment_id, body, rate_limit: 5.0) ⇒ Peddler::Response
This operation can make a static sandbox call.
Reschedules an appointment for the service job indicated by the service job identifier specified.
147 148 149 150 151 152 |
# File 'lib/peddler/apis/services_v1.rb', line 147 def reschedule_appointment_for_service_job_by_service_job_id(service_job_id, appointment_id, body, rate_limit: 5.0) path = "/service/v1/serviceJobs/#{percent_encode(service_job_id)}/appointments/#{percent_encode(appointment_id)}" parser = -> { SetAppointmentResponse } post(path, body:, rate_limit:, parser:) end |
#set_appointment_fulfillment_data(service_job_id, appointment_id, body, rate_limit: 5.0) ⇒ Peddler::Response
This operation can make a static sandbox call.
Updates the appointment fulfillment data related to a given jobID and appointmentID.
178 179 180 181 |
# File 'lib/peddler/apis/services_v1.rb', line 178 def set_appointment_fulfillment_data(service_job_id, appointment_id, body, rate_limit: 5.0) path = "/service/v1/serviceJobs/#{percent_encode(service_job_id)}/appointments/#{percent_encode(appointment_id)}/fulfillment" put(path, body:, rate_limit:) end |
#update_reservation(reservation_id, body, marketplace_ids, rate_limit: 5.0) ⇒ Peddler::Response
This operation can make a static sandbox call.
Update a reservation.
262 263 264 265 266 267 268 269 |
# File 'lib/peddler/apis/services_v1.rb', line 262 def update_reservation(reservation_id, body, marketplace_ids, rate_limit: 5.0) path = "/service/v1/reservation/#{percent_encode(reservation_id)}" params = { "marketplaceIds" => stringify_array(marketplace_ids), }.compact parser = -> { UpdateReservationResponse } put(path, body:, params:, rate_limit:, parser:) end |
#update_schedule(resource_id, body, marketplace_ids, rate_limit: 5.0) ⇒ Peddler::Response
This operation can make a static sandbox call.
Update the schedule of the given resource.
229 230 231 232 233 234 235 236 |
# File 'lib/peddler/apis/services_v1.rb', line 229 def update_schedule(resource_id, body, marketplace_ids, rate_limit: 5.0) path = "/service/v1/serviceResources/#{percent_encode(resource_id)}/schedules" params = { "marketplaceIds" => stringify_array(marketplace_ids), }.compact parser = -> { UpdateScheduleResponse } put(path, body:, params:, rate_limit:, parser:) end |