api-ref: custom API reference (#4770)

* initialized next.js project

* finished markdown sections

* added operation schema component

* change page metadata

* eslint fixes

* fixes related to deployment

* added response schema

* resolve max stack issue

* support for different property types

* added support for property types

* added loading for components

* added more loading

* type fixes

* added oneOf type

* removed console

* fix replace with push

* refactored everything

* use static content for description

* fixes and improvements

* added code examples section

* fix path name

* optimizations

* fixed tag navigation

* add support for admin and store references

* general enhancements

* optimizations and fixes

* fixes and enhancements

* added search bar

* loading enhancements

* added loading

* added code blocks

* added margin top

* add empty response text

* fixed oneOf parameters

* added path and query parameters

* general fixes

* added base path env variable

* small fix for arrays

* enhancements

* design enhancements

* general enhancements

* fix isRequired

* added enum values

* enhancements

* general fixes

* general fixes

* changed oas generation script

* additions to the introduction section

* added copy button for code + other enhancements

* fix response code block

* fix metadata

* formatted store introduction

* move sidebar logic to Tags component

* added test env variables

* fix code block bug

* added loading animation

* added expand param + loading

* enhance operation loading

* made responsive + improvements

* added loading provider

* fixed loading

* adjustments for small devices

* added sidebar label for endpoints

* added feedback component

* fixed analytics

* general fixes

* listen to scroll for other headings

* added sample env file

* update api ref files + support new fields

* fix for external docs link

* added new sections

* fix last item in sidebar not showing

* move docs content to www/docs

* change redirect url

* revert change

* resolve build errors

* configure rewrites

* changed to environment variable url

* revert changing environment variable name

* add environment variable for API path

* fix links

* fix tailwind settings

* remove vercel file

* reconfigured api route

* move api page under api

* fix page metadata

* fix external link in navigation bar

* update api spec

* updated api specs

* fixed google lint error

* add max-height on request samples

* add padding before loading

* fix for one of name

* fix undefined types

* general fixes

* remove response schema example

* redesigned navigation bar

* redesigned sidebar

* fixed up paddings

* added feedback component + report issue

* fixed up typography, padding, and general styling

* redesigned code blocks

* optimization

* added error timeout

* fixes

* added indexing with algolia + fixes

* fix errors with algolia script

* redesign operation sections

* fix heading scroll

* design fixes

* fix padding

* fix padding + scroll issues

* fix scroll issues

* improve scroll performance

* fixes for safari

* optimization and fixes

* fixes to docs + details animation

* padding fixes for code block

* added tab animation

* fixed incorrect link

* added selection styling

* fix lint errors

* redesigned details component

* added detailed feedback form

* api reference fixes

* fix tabs

* upgrade + fixes

* updated documentation links

* optimizations to sidebar items

* fix spacing in sidebar item

* optimizations and fixes

* fix endpoint path styling

* remove margin

* final fixes

* change margin on small devices

* generated OAS

* fixes for mobile

* added feedback modal

* optimize dark mode button

* fixed color mode useeffect

* minimize dom size

* use new style system

* radius and spacing design system

* design fixes

* fix eslint errors

* added meta files

* change cron schedule

* fix docusaurus configurations

* added operating system to feedback data

* change content directory name

* fixes to contribution guidelines

* revert renaming content

* added api-reference to documentation workflow

* fixes for search

* added dark mode + fixes

* oas fixes

* handle bugs

* added code examples for clients

* changed tooltip text

* change authentication to card

* change page title based on selected section

* redesigned mobile navbar

* fix icon colors

* fix key colors

* fix medusa-js installation command

* change external regex in algolia

* change changeset

* fix padding on mobile

* fix hydration error

* update depedencies
This commit is contained in:
Shahed Nasser
2023-08-15 18:07:54 +03:00
committed by GitHub
parent 16249ec280
commit 914d773d3a
3270 changed files with 22075 additions and 192064 deletions
@@ -0,0 +1,12 @@
{
"position": 13,
"collapsed": false,
"link": null,
"label": "Settings",
"customProps": {
"sidebar_is_group_headline": true,
"customProps": {
"sidebar_is_group_headline": true
}
}
}
@@ -0,0 +1,61 @@
---
sidebar_position: 2
description: 'This user guide explains how to manage currencies on the Medusa admin. Learn how to add currencies and set default currency.'
addHowToData: true
---
# Manage Currencies
In this document, youll learn how to set the default currency in your store and how to support more currencies.
## Overview
Medusa supports using more than one currency in your store. When you add currencies, you can set prices for products for each of those currencies.
To make a currency available for your customers, you have to use the currency in a region. Then, your customers will be able to choose the region with the currency that fits them.
:::tip
Before you can use a currency in a region, make sure to [add it to your store](#add-a-currency).
:::
---
## Add a Currency
To make a currency available in your store:
1. Go to Settings → Currencies.
2. Click on the “Edit currencies” button in the Store Currencies section.
3. In the new window that opens:
1. Click on the Add Currencies button.
2. Select all the currencies you want to add.
4. Click on the “Save and close” button.
---
## Set Default Currency
:::tip
Before you can make a currency the default currency, make sure to [add it to your store](#add-a-currency).
:::
To set the default currency of your store:
1. Go to Settings → Currencies.
2. In the "Default store currency” section, choose from the dropdown the currency you want to make the default.
---
## Remove Currencies
To remove a currency from your store:
1. Go to Settings → Currencies.
2. Click on the “Edit currencies” button in the Store Currencies section.
3. In the new window that opens:
1. Select all the currencies you want to remove.
2. Click on the Remove button.
@@ -0,0 +1,118 @@
---
sidebar_position: 4
description: 'This user guide explains how to manage publishable API keys on the Medusa admin. Learn how to create, edit, copy, and revoke publishable API keys.'
addHowToData: true
---
import UiIcon from '@site/src/components/UiIcon';
# Manage Publishable API Keys
In this document, youll learn how to manage publishable API keys in Medusa Admin.
## Overview
Publishable API keys are used by developers or technical teams. They are used to define the resources that an API key is associated with and can access.
Then, this publishable API key is used in storefront development to retrieve or process data based on the scope of the publishable API key.
Currently, publishable API keys can only be used with sales channels.
---
## Create Publishable API Key
To create a publishable API key:
1. Go to Settings → API key management.
2. Click on the “Create API key” button at the top right.
3. In the new form that opens:
1. Enter a name for the API key in the Title field.
2. You can optionally add sales channels. To do that:
1. Click on the “Add sales channels” button.
2. Click on the checkbox next to the sales channels you want to add.
3. Click on the “Save and close” button.
4. Once youre done, click on the “Publish API key” button.
---
## Copy Token of API Key
To copy the token of an API key:
1. Go to Settings → API key management.
2. Click on the <UiIcon lightIcon="https://res.cloudinary.com/dza7lstvk/image/upload/v1667999308/Medusa%20Docs/UI%20Icons/1ordBC6_ssysel.png" darkIcon="https://res.cloudinary.com/dza7lstvk/image/upload/v1667999326/Medusa%20Docs/UI%20Icons/dSwWYBH_stzgoi.png" alt="three dots" /> icon next to the API key you want to copy.
3. Click on “Copy token” from the dropdown.
---
## Edit API Key Details
To edit the details of an API key:
1. Go to Settings → API key management.
2. Click on the <UiIcon lightIcon="https://res.cloudinary.com/dza7lstvk/image/upload/v1667999308/Medusa%20Docs/UI%20Icons/1ordBC6_ssysel.png" darkIcon="https://res.cloudinary.com/dza7lstvk/image/upload/v1667999326/Medusa%20Docs/UI%20Icons/dSwWYBH_stzgoi.png" alt="three dots" /> icon next to the API key you want to edit.
3. Click on “Edit API key details” from the dropdown.
4. Change the title of the API Key in the side window that opens.
5. Click on the “Save and close” button.
---
## Manage Sales Channels of a Publishable API Key
:::info
Making any changes in the sales channels here does not affect the sales channel itself or any of its data. This only impacts the relation between sales channels and publishable API keys.
:::
You can add or delete sales channels from a publishable API key. Adding a sales channel makes it accessible using the publishable API key. Removing a sales channel from a publishable API key removes the API keys access to the sales channel.
To manage sales channels of a publishable API key:
1. Go to Settings → API key management.
2. Click on the <UiIcon lightIcon="https://res.cloudinary.com/dza7lstvk/image/upload/v1667999308/Medusa%20Docs/UI%20Icons/1ordBC6_ssysel.png" darkIcon="https://res.cloudinary.com/dza7lstvk/image/upload/v1667999326/Medusa%20Docs/UI%20Icons/dSwWYBH_stzgoi.png" alt="three dots" /> icon next to the API key you want to manage its sales channels.
3. Click on “Edit sales channels” from the dropdown.
4. In the side window that opens:
1. To add a sales channel to the publishable API key:
1. Click on the “Add channels” button.
2. Click on the checkbox next to the sales channels you want to add.
3. Once done, click on the “Add and go back” button to add the sales channels and continue editing, or click on the “Add and close” to add the sales channels and close the side menu.
2. To delete a sales channel from the publishable API key:
1. Click on the checkbox next to the sales channels you want to delete.
2. Click on the “Remove” button.
5. Once youre done editing, click on the Close button.
---
## Revoke Publishable API Key
:::warning
Revoking a publishable API key does not remove it, but the API key cant be used in development anymore. It can't be undone.
:::
To revoke a publishable API key:
1. Go to Settings → API key management.
2. Click on the <UiIcon lightIcon="https://res.cloudinary.com/dza7lstvk/image/upload/v1667999308/Medusa%20Docs/UI%20Icons/1ordBC6_ssysel.png" darkIcon="https://res.cloudinary.com/dza7lstvk/image/upload/v1667999326/Medusa%20Docs/UI%20Icons/dSwWYBH_stzgoi.png" alt="three dots" /> icon next to the API key you want to revoke.
3. Click on “Revoke token” from the dropdown.
4. Confirm revoking the publishable API key by clicking the “Yes, revoke” button in the pop-up.
---
## Delete Publishable API Key
:::warning
Deleting a publishable API key completely removes it and the API key cant be used in development anymore. It can't be undone.
:::
To delete a publishable API key:
1. Go to Settings → API key management.
2. Click on the <UiIcon lightIcon="https://res.cloudinary.com/dza7lstvk/image/upload/v1667999308/Medusa%20Docs/UI%20Icons/1ordBC6_ssysel.png" darkIcon="https://res.cloudinary.com/dza7lstvk/image/upload/v1667999326/Medusa%20Docs/UI%20Icons/dSwWYBH_stzgoi.png" alt="three dots" /> icon next to the API key you want to delete.
3. Click on “Delete API key” from the dropdown.
4. Confirm deleting the publishable API key by clicking the “Yes, delete” button in the pop-up.
@@ -0,0 +1,66 @@
---
sidebar_position: 3
description: 'This user guide explains how to manage return reasons on the Medusa admin. Learn how to add, edit, and remove return reasons.'
addHowToData: true
---
import UiIcon from '@site/src/components/UiIcon';
# Manage Return Reasons
In this document, youll learn how to add, edit, and remove return reasons.
## Overview
Return reasons are used when issuing returns or exchanges of orders. When you want to request an exchange or return of an item in an order, you must specify the reason for that return.
Return reasons are custom and are created by merchants. For example, you can create the return reason “damaged”, then use it when you want to request a return for an item in an order because it has been damaged.
:::note
Creating at least one return reason is required before you can work with order returns and exchanges.
:::
---
## Add Return Reason
To add a return reason:
1. Go to Settings → Return Reasons.
2. Click on the “Add reason” button in the Return Reasons section.
3. In the new window:
1. You are required to enter a value and a label for the return reason. The value is for internal use and must not include spaces. The label is what the customer will see in their order returns or exchanges.
2. You can optionally enter a description for the return reason.
4. Once done, click on the Create button.
---
## Duplicate a Return Reason
To duplicate a return reason:
1. Go to Settings → Return Reasons.
2. Choose the return reason you want to duplicate from the left section.
3. Click on the <UiIcon lightIcon="https://res.cloudinary.com/dza7lstvk/image/upload/v1667999308/Medusa%20Docs/UI%20Icons/1ordBC6_ssysel.png" darkIcon="https://res.cloudinary.com/dza7lstvk/image/upload/v1667999326/Medusa%20Docs/UI%20Icons/dSwWYBH_stzgoi.png" alt="three dots" /> icon at the top right of the Details section.
4. Click on “Duplicate reason” from the dropdown.
5. In the new window that opens, make changes as necessary for the new return reason.
6. Once done, click on the Create button.
---
## Edit a Return Reason
:::info
A return reasons value cant be edited.
:::
To edit a return reason:
1. Go to Settings → Return Reasons.
2. Choose the return reason you want to edit from the left section.
3. In the Details section, make changes to the label or description of the return reason.
4. Once done, click on the Save button.
@@ -0,0 +1,21 @@
---
sidebar_position: 1
description: 'This user guide explains how to manage the store details on the Medusa admin.'
---
# Manage Store Details
In this document, youll learn how to edit the stores details.
## Edit Store Details
To edit the stores details:
1. Go to Settings → Store Details
2. In the Store Details form:
1. You can change the stores name.
2. You can set the template link for swaps, draft orders, and invites. When making a change to the link template, make sure to use the following placeholders within the link:
1. **Swaps**: Use the `{swap_id}` placeholder to indicate where the ID of the swap should be in the link.
2. **Draft Order**: Use the `{payment_id}` placeholder to indicate where the ID of the payment should be in the link.
3. **Invites:** Use the `{invite_token}` placeholder to indicate where the invite token should be in the link.
3. Once done, click on the Save button.