Getting Started
Interface Basics
Printers and Scales
Shipping
Order Processing
Order Allocation
Order Processing Loop
Packing Solutions
Backorders
Ready to Ship
"Unable to Process" Order status
Address Validation and Classification
Packaging Features
Orders
Custom Fields for Orders
Reference Numbers
Other Shipping Options
Packing Instructions
Shipping Accounts
External Shipping Methods
Third Party Billing
Manifest Couriers
Packing Slip Design
Service Levels and Target Ship Dates
Outbound SSCC Barcodes
International Shipping
Tracking Numbers for Offline Shipments
Serial Number Tracking
Receiving
Deliveries (ASNs, RMAs, etc.)
Double-Scan to Begin Count
Auto-Advance to Put-Away After Processing ASN
Actionable Reports
Catalog
Bill of Materials/Work Orders
Bill of Materials
Bill of Materials - Quantity-types
Work Orders
Import Bill of Materials
Virtual Inventory
Regulations
Products
Product Attributes
Lots/Expirations Tracking
Product Velocity
Import Products
Operations
Warehouse
Picking Classes
Picking Batches
Bulk Fulfill Orders
Manifests (Loading)
License Plates
Time Tracking for Administrators
Time Tracking for Staff
Relocations
Import Locations, Lots and Inventory
Rating
Rate Shopping
Rating Maps
Rate Groups and Plans
Fee Schedules and Adjustments
Virtual Shipping Methods
System
Configuration
Merchants and Brands
Warehouses
User Management
User Roles
User Groups
Login via Badge
Protected Customer Data
Enumerations
Technical Contact
Integrations
Shopify
Integrations Overview
Amazon Merchant Fulfillment
Amazon Selling Partner
CartRover
EasyPost
eHub
External Shipping Method API
Freight Club
Magento 1 / OpenMage
Merchant API Users and Roles
SPS Commerce
ShipStream Plugin Fostering Program
Webhooks
WooCommerce
UPS
Scripting
Scripting Basics
Before Create Order Scripts
Preprocess Packing Solution Scripts
Ready to Ship Time Scripts
Picking Class Shipment Matching Scripts
FAQ
How-To: FedEx Production Key Certification
How-To: Brand-Specific Shipping Account
Pattern and Replacement RegEx
ShipStream's Subprocessors
ISO Alpha-2 Country Codes
Printer Troubleshooting
ShipStream Flow
Release Notes
ShipStream Releases
Version 2024.5
Version 2024.4
Version 2024.3
Version 2024.2
Version 2024.1
Version 2024.0
Version 2023.2
Version 2023.1
Version 2023.0
Package Tracking API Migration Guide (2023.0)
Version 2022.2
Version 2022.1
Version 2022.0
Version 2021.6
Version 2021.5
Version 2021.4
Version 2021.3
Version 2021.2
Version 2021.1
Version 2021.0
Version 2020.2
Version 2020.1
Version 2020.0
Version 2019.9
Version 2019.8.1
Version 2019.8
Version 2019.7
Version 2019.6
Version 2019.5
Device Hub Client Updates
- All Categories
- Integrations
- Merchant API Users and Roles
Merchant API Users and Roles
Updated by Cory M.
The Merchant API allows a system to connect to ShipStream with the scope of data exposed being limited to that of a single Merchant. This is effectively an API that has functionality in parity with the Client UI. For example, it is ideal for integrating a shopping cart as it can be used to create orders, fetch inventory levels, fetch tracking information and update product info among others. It is not allowed to perform functions that pertain to warehouse operations such as picking or inventory adjustments.
To manage Merchant API Users go to System > Integrations > Merchant API Users. Admin users may create Merchant API Users for any merchant, while Client users may only create Merchant API Users for their own merchant account. Each Merchant API User can be assigned to one or more roles to determine the fine-grained access level.
Developers implementing applications using the Merchant API should consult the ShipStream Merchant API Docs.
Create a Merchant API User
- Navigate to System > Integrations > Merchant API Users
- Click Add New User
- Select an existing User or create a new one by clicking Add New User
- Select a Merchant to associate with this API user (this step is skipped for Client Users)
- Choose a User Name that will be used to connect with the API from the external system
- Fill out the First and Last Name and Email in case ShipStream needs to contact your developers regarding the usage of the API
- Choose an API Key to act as a password for access to your ShipStream data. It is recommended that this should be at least 32 characters of random characters.
- Click on the left side menu item User Role, and choose the role with the correct permissions for this user.
- Click Save User.
Create a Merchant API Role
A Merchant API Role provides a Merchant API User assigned to a given role with access to the designated resources/permissions.
- Navigate to System > Integrations > Merchant API Users
- Click API Roles at the top right of the screen
- Click Add New Role
- Assign the role a Name, and define which permissions to grant the role under Role Resources
- The options in Resource Access are "All" or "Custom". Choosing All will grant all permissions to the role, and choosing Custom will allow users to pick the permissions from a tree view that mirrors the main navigation menu options.
- For example, if admin users wish to grant API access for the role to Retrieve Orders Info, but not actually create or modify the orders in anyway, they should select Custom and only check the box next to "Retrieve orders info" under the Sales > Order tree item.
- Once the API Role is defined click Save Role, admin users can create a new API User to have these permissions