services-api-v1

With the Services API, you can build applications that help service providers get and modify their service orders and manage their resources.

npm version XO code style

Learn more about this Selling Partner API by visiting the official documentation.

Also, see the generated documentation for this API client.

npm install @sp-api-sdk/services-api-v1
import {SellingPartnerApiAuth} from '@sp-api-sdk/auth'
import {ServicesApiClient} from '@sp-api-sdk/services-api-v1'

const auth = new SellingPartnerApiAuth({
clientId: process.env.LWA_CLIENT_ID,
clientSecret: process.env.LWA_CLIENT_SECRET,
refreshToken: 'Atzr|…',
})

const client = new ServicesApiClient({
auth,
region: 'eu',
})

In order to retry rate limited requests (HTTP 429), you can configure the API client as such:

const client = new ServicesApiClient({
auth,
region: 'eu',
rateLimiting: {
retry: true,
// Optionally specify a callback that will be called on every retry.
onRetry: (retryInfo) => {
console.log(retryInfo)
},
},
})

The rate limits used for each route are specified in the API documentation.

You can enable logging for both SP-API requests and responses by configuring the logging.request and logging.response properties.

const client = new ServicesApiClient({
auth,
region: 'eu',
logging: {
request: {
logger: console.debug
},
response: {
logger: console.debug
},
error: true,
},
})

Specifying true will use the default options, specifying an object will allow you to override the default options.
This uses axios-logger under the hood.
By default, if enabled, the request and response loggers will use console.info and the error logger will use console.error.

MIT

    ╚⊙ ⊙╝
╚═(███)═╝
╚═(███)═╝
╚═(███)═╝
╚═(███)═╝
╚═(███)═╝
╚═(███)═╝

Enumerations

CapacityType
DayOfWeek

Classes

ServiceApi
ServicesApiClient

Interfaces

AddAppointmentRequest
Address
Appointment
AppointmentResource
AppointmentSlot
AppointmentSlotReport
AppointmentTime
AppointmentTimeInput
AssignAppointmentResourcesRequest
AssignAppointmentResourcesResponse
AssignAppointmentResourcesResponsePayload
AssociatedItem
AvailabilityRecord
Buyer
CancelReservationResponse
CancelServiceJobByServiceJobIdResponse
CompleteServiceJobByServiceJobIdResponse
CreateReservationRecord
CreateReservationRequest
CreateReservationResponse
CreateServiceDocumentUploadDestination
EncryptionDetails
FixedSlot
FixedSlotCapacity
FixedSlotCapacityErrors
FixedSlotCapacityQuery
FulfillmentDocument
FulfillmentTime
GetAppointmentSlotsResponse
GetServiceJobByServiceJobIdResponse
GetServiceJobsResponse
ItemDelivery
ItemDeliveryPromise
JobListing
ModelError
Poa
RangeCapacity
RangeSlot
RangeSlotCapacity
RangeSlotCapacityErrors
RangeSlotCapacityQuery
Recurrence
RescheduleAppointmentRequest
Reservation
ScopeOfWork
Seller
ServiceApiAddAppointmentForServiceJobByServiceJobIdRequest
ServiceApiAssignAppointmentResourcesRequest
ServiceApiCancelReservationRequest
ServiceApiCancelServiceJobByServiceJobIdRequest
ServiceApiCompleteServiceJobByServiceJobIdRequest
ServiceApiCreateReservationRequest
ServiceApiCreateServiceDocumentUploadDestinationRequest
ServiceApiGetAppointmentSlotsRequest
ServiceApiGetAppointmmentSlotsByJobIdRequest
ServiceApiGetFixedSlotCapacityRequest
ServiceApiGetRangeSlotCapacityRequest
ServiceApiGetServiceJobByServiceJobIdRequest
ServiceApiGetServiceJobsRequest
ServiceApiRescheduleAppointmentForServiceJobByServiceJobIdRequest
ServiceApiSetAppointmentFulfillmentDataRequest
ServiceApiUpdateReservationRequest
ServiceApiUpdateScheduleRequest
ServiceDocumentUploadDestination
ServiceJob
ServiceJobProvider
ServiceLocation
ServiceUploadDocument
SetAppointmentFulfillmentDataRequest
SetAppointmentResponse
Technician
UpdateReservationRecord
UpdateReservationRequest
UpdateReservationResponse
UpdateScheduleRecord
UpdateScheduleRequest
UpdateScheduleResponse
Warning

Type Aliases

AppointmentAppointmentStatusEnum
AppointmentSlotReportSchedulingTypeEnum
AssociatedItemItemStatusEnum
EncryptionDetailsStandardEnum
GetServiceJobsServiceJobStatusEnum
GetServiceJobsSortFieldEnum
GetServiceJobsSortOrderEnum
ModelErrorErrorLevelEnum
PoaPoaTypeEnum
ReservationTypeEnum
ServiceJobServiceJobStatusEnum
ServiceLocationServiceLocationTypeEnum
ServiceUploadDocumentContentTypeEnum

Variables

AppointmentAppointmentStatusEnum
AppointmentSlotReportSchedulingTypeEnum
AssociatedItemItemStatusEnum
clientRateLimits
EncryptionDetailsStandardEnum
GetServiceJobsServiceJobStatusEnum
GetServiceJobsSortFieldEnum
GetServiceJobsSortOrderEnum
ModelErrorErrorLevelEnum
PoaPoaTypeEnum
ReservationTypeEnum
ServiceJobServiceJobStatusEnum
ServiceLocationServiceLocationTypeEnum
ServiceUploadDocumentContentTypeEnum

Functions

ServiceApiAxiosParamCreator
ServiceApiFactory
ServiceApiFp