with Selling Partner API (SP-API) and ServiceNow?
Emit new event when a new inbound shipment to FBA is created. See the documentation
Emit new event when a new order is created in Amazon Seller Central. See the documentation
Retrieves inventory summaries from Amazon fulfillment centers to monitor stock availability. See the documentation
Retrieves a list of orders based on a specified date range, buyer email, or order ID. See the documentation
Creates a new incident record in ServiceNow. See the docs here
Requests reports on sales, inventory, and fulfillment performance. See the documentation
import { axios } from "@pipedream/platform"
export default defineComponent({
props: {
amazon_selling_partner: {
type: "app",
app: "amazon_selling_partner",
}
},
async run({steps, $}) {
// Define the mapping between Seller Central URLs (from your App Config) and SP-API Endpoints
const getEndpoint = (sellerCentralUrl) => {
const na = "https://sellingpartnerapi-na.amazon.com";
const eu = "https://sellingpartnerapi-eu.amazon.com";
const fe = "https://sellingpartnerapi-fe.amazon.com";
const map = {
// North America
"https://sellercentral.amazon.com": na,
"https://sellercentral.amazon.ca": na,
"https://sellercentral.amazon.com.mx": na,
"https://sellercentral.amazon.com.br": na,
// Europe (The Big 5 often share one URL, but newer ones have specific URLs)
"https://sellercentral-europe.amazon.com": eu,
"https://sellercentral.amazon.com.be": eu,
"https://sellercentral.amazon.nl": eu,
"https://sellercentral.amazon.pl": eu,
"https://sellercentral.amazon.se": eu,
"https://sellercentral.amazon.com.tr": eu,
// India (Uses EU endpoint)
"https://sellercentral.amazon.in": eu,
// Far East
"https://sellercentral.amazon.sg": fe,
"https://sellercentral.amazon.com.au": fe,
"https://sellercentral.amazon.co.jp": fe,
};
return map[sellerCentralUrl];
};
// 1. Get the Marketplace URL selected by the user in the App Connection
const marketplaceUrl = this.amazon_selling_partner.$auth.marketplace;
// 2. Resolve the correct SP-API Endpoint
const apiEndpoint = getEndpoint(marketplaceUrl);
if (!apiEndpoint) {
throw new Error(`Could not map Seller Central URL (${marketplaceUrl}) to an SP-API Endpoint.`);
}
// 3. Make the request
return await axios($, {
url: `${apiEndpoint}/inbound/fba/2024-03-20/inboundPlans`,
headers: {
"x-amz-access-token": `${this.amazon_selling_partner.$auth.oauth_access_token}`,
},
});
},
})
The ServiceNow API lets developers access and manipulate records, manage workflows, and integrate with other services on its IT service management platform. These capabilities support automating tasks, syncing data across platforms, and boosting operational efficiencies.
import { axios } from "@pipedream/platform"
export default defineComponent({
props: {
servicenow: {
type: "app",
app: "servicenow",
}
},
async run({steps, $}) {
return await axios($, {
url: `https://${this.servicenow.$auth.instance_name}.service-now.com/api/now/table/incident`,
headers: {
Authorization: `Bearer ${this.servicenow.$auth.oauth_access_token}`,
},
})
},
})