Medusa API
  1. Getting Started
Medusa API
  • Store API
    • Getting Started
      • Introduction
      • Authentication
      • HTTP Compression
      • Publishable API Key
      • Expanding Fields
      • Selecting Fields
      • Query Parameter Types
      • Pagination
    • Auth
      • Check if Email Exists
      • Customer Login (JWT)
      • Customer Login (JWT)
      • Customer Log out
      • Get Current Customer
      • Customer Login
    • Carts
      • Create Payment Sessions
      • Update a Payment Session
      • Delete a Payment Session
      • Create a Cart
      • Get a Cart
      • Update a Cart
      • Remove Discount
      • Add a Line Item
      • Update a Line Item
      • Delete a Line Item
      • Select a Payment Session
      • Refresh a Payment Session
      • Add Shipping Method
      • Calculate Cart Taxes
      • Complete a Cart
    • Customers
      • Get Saved Payment Methods
      • Request Password Reset
      • Update a Shipping Address
      • Delete an Address
      • Create a Customer
      • Get a Customer
      • Update Customer
      • Add a Shipping Address
      • Reset Password
      • List Orders
    • Gift Cards
      • Get Gift Card by Code
    • Orders
      • Claim Order
      • Verify Order Claim
      • Look Up an Order
      • Get by Cart ID
      • Get an Order
    • Order Edits
      • Retrieve an Order Edit
      • Decline an Order Edit
      • Complete an Order Edit
    • Payment Collections
      • Refresh a Payment Session
      • Authorize Payment Session
      • Get a PaymentCollection
      • Create a Payment Session
      • Manage Payment Sessions
      • Authorize Payment Sessions
    • Products
      • Search Products
      • Get a Product
      • List Products
    • Product Variants
      • Get Product Variants
      • Get a Product Variant
    • Product Tags
      • List Product Tags
    • Product Categories
      • Get a Product Category
      • List Product Categories
    • Product Collections
      • List Collections
      • Get a Collection
    • Product Types
      • List Product Types
    • Regions
      • Get a Region
      • List Regions
    • Returns
      • Create Return
    • Return Reasons
      • List Return Reasons
      • Get a Return Reason
    • Shipping Options
      • List for Cart
      • Get Shipping Options
    • Swaps
      • Create a Swap
      • Get by Cart ID
  • Admin API
    • Auth
      • Get Current User
      • User Logout
      • User Login
      • User Login (JWT)
    • Apps Oauth
      • Generate Token for App
      • List Applications
    • Batch Jobs
      • Cancel a Batch Job
      • Get a Batch Job
      • Confirm a Batch Job
      • List Batch Jobs
      • Create a Batch Job
    • Currencies
      • List Currency
      • Update a Currency
    • Customers
      • Create a Customer
      • List Customers
      • Update a Customer
      • Get a Customer
    • Customer Groups
      • Remove Customers from Group
      • Add Customers to Group
      • List Customers
      • Create a Customer Group
      • List Customer Groups
      • Get a Customer Group
      • Delete a Customer Group
      • Update a Customer Group
    • Discounts
      • Create a Condition
      • Create a Discount
      • List Discounts
      • Get a Condition
      • Update a Condition
      • Delete a Condition
      • Create a Dynamic Code
      • Remove Batch Resources
      • Add Batch Resources
      • Get Discount by Code
      • Delete a Dynamic Code
      • Add Region to Discount
      • Remove Region
      • Delete a Discount
      • Update a Discount
      • Get a Discount
    • Draft Orders
      • Create a Line Item
      • Delete a Line Item
      • Update a Line Item
      • Update a Draft Order
      • Delete a Draft Order
      • Get a Draft Order
      • Create a Draft Order
      • List Draft Orders
      • Mark Paid
    • Gift Cards
      • Create a Gift Card
      • List Gift Cards
      • Delete a Gift Card
      • Get a Gift Card
      • Update a Gift Card
    • Inventory Items
      • Create an Inventory Item
      • List Inventory Items
      • List Inventory Level
      • Create an Location Level
      • Update an Inventory Item
      • Get an Inventory Item
      • Delete an Inventory Item
      • Update a Location Level
      • Delete a Location Level
    • Invites
      • Lists Invites
      • Create an Invite
      • Delete an Invite
      • Accept an Invite
      • Resend an Invite
    • Notes
      • List Notes
      • Create a Note
      • Get a Note
      • Delete a Note
      • Update a Note
    • Notifications
      • Resend Notification
      • List Notifications
    • Orders
      • Create a Reservation
      • Cancel Claim's Fulfillment
      • Ship a Claim's Fulfillment
      • Cancel Swap's Fulfilmment
      • Get Order Reservations
      • Add a Shipping Method
      • Create a Refund
      • Get an Order
      • Update an Order
      • Create a Fulfillment
      • Cancel a Swap
      • List Orders
      • Create a Swap
      • Complete an Order
      • Create a Swap Fulfillment
      • Cancel a Claim
      • Process a Swap Payment
      • Ship a Fulfillment
      • Capture an Order's Payments
      • Archive Order
      • Update a Claim
      • Request a Return
      • Create a Claim Fulfillment
      • Ship a Swap's Fulfillment
      • Cancel a Fulfilmment
      • Create a Claim
      • Cancel an Order
    • Order Edits
      • Delete a Line Item Change
      • Add a Line Item
      • Upsert Line Item Change
      • Delete Line Item
      • Cancel an Order Edit
      • Delete an Order Edit
      • Get an Order Edit
      • Update an Order Edit
      • Request Confirmation
      • Create an OrderEdit
      • List Order Edits
      • Confirm an OrderEdit
    • Payments
      • Capture a Payment
      • Get Payment details
      • Refund Payment
    • Payment Collections
      • Delete a Payment Collection
      • Get a Payment Collection
      • Update Payment Collection
      • Mark Authorized
    • Product Collections
      • Add Products to Collection
      • Remove Products from Collection
      • Get a Collection
      • Update a Collection
      • Delete a Collection
      • List Collections
      • Create a Collection
    • Product Tags
      • List Product Tags
    • Product Types
      • List Product Types
    • Product Variants
      • Get Variant's Inventory
      • List Product Variants
      • Get a Product variant
    • Price Lists
      • Delete a Product's Prices
      • List Products
      • Delete a Variant's Prices
      • Get a Price List
      • Update a Price List
      • Delete a Price List
      • Add or Update Prices
      • Delete Prices
      • Create a Price List
      • List Price Lists
    • Products
      • List Product Types
      • List Tags Usage Number
      • List a Product's Variants
      • Create a Product Variant
      • Update a Product Variant
      • Delete a Product Variant
      • Add a Product Option
      • Set Metadata
      • Delete a Product Option
      • Update a Product Option
      • List Products
      • Create a Product
      • Delete a Product
      • Update a Product
      • Get a Product
    • Product Categories
      • Create a Product Category
      • List Product Categories
      • Update a Product Category
      • Delete a Product Category
      • Get a Product Category
      • Add Products to a Category
      • Remove Products from Category
    • Publishable Api Keys
      • List Sales Channels
      • Delete Publishable API Key
      • Get a Publishable API Key
      • Revoke a Publishable API Key
      • Remove Sales Channels
      • Add Sales Channels
      • Update Publishable API Key
      • List Publishable API keys
      • Create Publishable API Key
    • Reservations
      • Delete a Reservation
      • Update a Reservation
      • Get a Reservation
      • Create a Reservation
      • List Reservations
    • Regions
      • List Fulfillment Options
      • Add Country
      • Remove Fulfillment Provider
      • Remove Payment Provider
      • Add Payment Provider
      • Delete a Region
      • Update a Region
      • Get a Region
      • List Regions
      • Create a Region
      • Add Fulfillment Provider
      • Remove Country
    • Return Reasons
      • Get a Return Reason
      • Delete a Return Reason
      • Update a Return Reason
      • List Return Reasons
      • Create a Return Reason
    • Returns
      • Receive a Return
      • List Returns
      • Cancel a Return
    • Sales Channels
      • Remove Stock Location from Sales Channels.
      • Associate a Stock Location
      • Get a Sales Channel
      • Delete a Sales Channel
      • Update a Sales Channel
      • Remove Products from Sales Channel
      • Add Products to Sales Channel
      • Create a Sales Channel
      • List Sales Channels
    • Shipping Options
      • Update Shipping Option
      • Get a Shipping Option
      • Delete Shipping Option
      • List Shipping Options
      • Create Shipping Option
    • Shipping Profiles
      • List Shipping Profiles
      • Create a Shipping Profile
      • Delete a Shipping Profile
      • Update a Shipping Profile
      • Get a Shipping Profile
    • Stock Locations
      • List Stock Locations
      • Create a Stock Location
      • Get a Stock Location
      • Update a Stock Location
      • Delete a Stock Location
    • Store
      • List Payment Providers
      • Add a Currency Code
      • Remove a Currency
      • List Tax Providers
      • Update Store Details
      • Get Store details
    • Swaps
      • Get a Swap
      • List Swaps
    • Uploads
      • Upload Files
      • Delete an Uploaded File
      • Get a File's Download URL
      • Protected File Upload
    • Tax Rates
      • Add to Shipping Options
      • Remove Shipping Options from Rate
      • Create a Tax Rate
      • List Tax Rates
      • Add to Products
      • Remove Products from Rate
      • Delete a Tax Rate
      • Get a Tax Rate
      • Update a Tax Rate
      • Add to Product Types
      • Remove Product Types from Rate
    • Users
      • Reset Password
      • Request Password Reset
      • Get a User
      • Delete a User
      • Update a User
      • Create a User
      • List Users
  1. Getting Started

Authentication

There are two ways to send authenticated requests to the Medusa server: Using a JWT token or using a Cookie Session ID.

JWT Token#

Use a JWT token to send authenticated requests. Authentication state is managed by the client, which is ideal for Jamstack applications and mobile applications.

How to Obtain the JWT Token#

JWT tokens are obtained by sending a request to the Customer Login (JWT) endpoint passing it the customer's email and password in the request body. For example:
If authenticated successfully, an object is returned in the response with the property access_token being the JWT token.

How to Use the JWT Token#

The JWT token can be used for Bearer Authentication. It's passed in the
Authorization header as the following:

Cookie Session ID#

Use a cookie session to send authenticated requests.

How to Obtain the Cookie Session#

If you're sending requests through a browser, using Medusa's JS and Medusa React clients, or using
tools like Postman, the cookie session should be automatically set when
the customer is logged in.
If you're sending requests using cURL, you must set the Session ID in the cookie manually.
To do that, send a request to authenticate the customer and pass the cURL option -v:
The headers will be logged in the terminal as well as the response. You should find in the headers a Cookie header similar to this:
Copy the value after connect.sid (without the ; at the end) and pass it as a cookie in subsequent requests as the following:
Where {sid} is the value of connect.sid that you copied.
If you're sending requests using JavaScript's Fetch API, you must pass the credentials option with the value include to all the requests you're sending. For example:
Modified at 2025-07-23 05:41:29
Previous
Introduction
Next
HTTP Compression
Built with