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

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

Index

Modules

Enumerations

Classes

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

Variables

Functions