docs: add loyalty plugin routes to OAS (#12811)

* generated OAS

* remove unused schemas

* generated specs

* add cloud badge for routes

* add to loyalty plugin page

* allow clicking the tooltip
This commit is contained in:
Shahed Nasser
2025-06-24 19:17:55 +03:00
committed by GitHub
parent 3826bde591
commit 93cf79cb0f
164 changed files with 16001 additions and 88 deletions
@@ -0,0 +1,56 @@
/**
* @schema AdminCreateGiftCardParams
* type: object
* description: The details of the gift card to create.
* x-schemaName: AdminCreateGiftCardParams
* required:
* - code
* - value
* - currency_code
* - expires_at
* - reference_id
* - reference
* - line_item_id
* - customer_id
* - metadata
* properties:
* code:
* type: string
* title: code
* description: The gift card's code.
* value:
* type: number
* title: value
* description: The gift card's amount.
* example: 20
* currency_code:
* type: string
* title: currency_code
* description: The gift card's currency code.
* example: usd
* expires_at:
* type: string
* title: expires_at
* description: The date the gift card expires at.
* reference_id:
* type: string
* title: reference_id
* description: The gift card's reference ID.
* reference:
* type: string
* title: reference
* description: The gift card's reference.
* line_item_id:
* type: string
* title: line_item_id
* description: The ID of the line item associated with the gift card.
* customer_id:
* type: string
* title: customer_id
* description: The ID of the customer associated with the gift card.
* metadata:
* type: object
* description: The gift card's metadata, can hold custom key-value pairs.
*
*/
@@ -0,0 +1,24 @@
/**
* @schema AdminCreateStoreCreditAccount
* type: object
* description: The details of the store credit account to create.
* x-schemaName: AdminCreateStoreCreditAccount
* required:
* - currency_code
* - customer_id
* properties:
* currency_code:
* type: string
* title: currency_code
* description: The store credit account's currency code.
* example: usd
* customer_id:
* type: string
* title: customer_id
* description: The ID of the customer that the store credit account belongs to.
* metadata:
* type: object
* description: The store credit account's metadata, can hold custom key-value pairs.
*
*/
@@ -0,0 +1,84 @@
/**
* @schema AdminGiftCard
* type: object
* description: The gift card's details.
* x-schemaName: AdminGiftCard
* required:
* - line_item
* - customer
* - invitation
* - id
* - code
* - status
* - value
* - currency_code
* - customer_id
* - reference_id
* - note
* - reference
* - expires_at
* - created_at
* - updated_at
* properties:
* line_item:
* $ref: "#/components/schemas/AdminOrderLineItem"
* customer:
* $ref: "#/components/schemas/AdminCustomer"
* id:
* type: string
* title: id
* description: The gift card's ID.
* code:
* type: string
* title: code
* description: The gift card's code.
* status:
* type: string
* description: The gift card's status.
* enum:
* - pending
* - redeemed
* value:
* type: number
* title: value
* description: The gift card's amount.
* currency_code:
* type: string
* title: currency_code
* description: The gift card's currency code.
* example: usd
* customer_id:
* type: string
* title: customer_id
* description: The ID of the customer associated with the gift card.
* reference_id:
* type: string
* title: reference_id
* description: The gift card's reference ID.
* note:
* type: string
* title: note
* description: The gift card's note.
* reference:
* type: string
* title: reference
* description: The gift card's reference.
* expires_at:
* type: string
* title: expires_at
* description: The date the gift card expires at.
* invitation:
* $ref: "#/components/schemas/AdminGiftCardInvitation"
* created_at:
* type: string
* format: date-time
* title: created_at
* description: The date the gift card was created at.
* updated_at:
* type: string
* format: date-time
* title: updated_at
* description: The date the gift card was updated at.
*
*/
@@ -0,0 +1,42 @@
/**
* @schema AdminGiftCardInvitation
* type: object
* description: The gift card invitation details.
* required:
* - gift_card
* - id
* - code
* - status
* - expires_at
* - email
* properties:
* id:
* type: string
* title: id
* description: The invitation's ID.
* email:
* type: string
* title: email
* description: The invitation's email.
* format: email
* code:
* type: string
* title: code
* description: The invitation's code.
* status:
* type: string
* description: The invitation's status.
* enum:
* - pending
* - accepted
* - rejected
* expires_at:
* type: string
* title: expires_at
* description: The date the invitation expires at.
* gift_card:
* $ref: "#/components/schemas/AdminGiftCard"
* x-schemaName: AdminGiftCardInvitation
*
*/
@@ -0,0 +1,13 @@
/**
* @schema AdminGiftCardResponse
* type: object
* description: The gift card's details.
* x-schemaName: AdminGiftCardResponse
* required:
* - gift_card
* properties:
* gift_card:
* $ref: "#/components/schemas/AdminGiftCard"
*
*/
@@ -0,0 +1,31 @@
/**
* @schema AdminGiftCardsResponse
* type: object
* description: The paginated list of gift cards.
* x-schemaName: AdminGiftCardsResponse
* required:
* - limit
* - offset
* - count
* - gift_cards
* properties:
* limit:
* type: number
* title: limit
* description: The maximum number of gift cards to return.
* offset:
* type: number
* title: offset
* description: The number of gift cards to skip before retrieving the results.
* count:
* type: number
* title: count
* description: The total number of gift cards available.
* gift_cards:
* type: array
* description: The list of gift cards.
* items:
* $ref: "#/components/schemas/AdminGiftCard"
*
*/
@@ -0,0 +1,15 @@
/**
* @schema AdminRedeemGiftCard
* type: object
* description: The details of the gift card to redeem.
* x-schemaName: AdminRedeemGiftCard
* required:
* - customer_id
* properties:
* customer_id:
* type: string
* title: customer_id
* description: The ID of the customer that the gift card belongs to. The gift card's value will be added to the customer's store credit account.
*
*/
@@ -0,0 +1,66 @@
/**
* @schema AdminStoreCreditAccount
* type: object
* description: The store credit account's details.
* x-schemaName: AdminStoreCreditAccount
* required:
* - customer
* - transaction_groups
* - id
* - customer_id
* - currency_code
* - credits
* - debits
* - balance
* - metadata
* - created_at
* - updated_at
* properties:
* customer:
* $ref: "#/components/schemas/AdminCustomer"
* id:
* type: string
* title: id
* description: The store credit account's ID.
* customer_id:
* type: string
* title: customer_id
* description: The ID of the customer that the store credit account belongs to.
* currency_code:
* type: string
* title: currency_code
* description: The store credit account's currency code.
* example: usd
* credits:
* type: number
* title: credits
* description: The account's credits.
* debits:
* type: number
* title: debits
* description: The account's debits.
* balance:
* type: number
* title: balance
* description: The account's balance.
* transaction_groups:
* type: array
* description: The store credit account's transaction groups.
* items:
* $ref: "#/components/schemas/AdminTransactionGroup"
* metadata:
* type: object
* description: The store credit account's metadata, can hold custom key-value pairs.
* created_at:
* type: string
* format: date-time
* title: created_at
* description: The date the store credit account was created at.
* updated_at:
* type: string
* format: date-time
* title: updated_at
* description: The date the store credit account was updated at.
*
*/
@@ -0,0 +1,13 @@
/**
* @schema AdminStoreCreditAccountResponse
* type: object
* description: The store credit account's details.
* x-schemaName: AdminStoreCreditAccountResponse
* required:
* - store_credit_account
* properties:
* store_credit_account:
* $ref: "#/components/schemas/AdminStoreCreditAccount"
*
*/
@@ -0,0 +1,31 @@
/**
* @schema AdminStoreCreditAccountsResponse
* type: object
* description: The paginated list of store credit accounts.
* x-schemaName: AdminStoreCreditAccountsResponse
* required:
* - limit
* - offset
* - count
* - store_credit_accounts
* properties:
* limit:
* type: number
* title: limit
* description: The maximum number of store credit accounts to return.
* offset:
* type: number
* title: offset
* description: The number of store credit accounts to skip before retrieving the results.
* count:
* type: number
* title: count
* description: The total number of store credit accounts available.
* store_credit_accounts:
* type: array
* description: The list of store credit accounts.
* items:
* $ref: "#/components/schemas/AdminStoreCreditAccount"
*
*/
@@ -0,0 +1,68 @@
/**
* @schema AdminTransaction
* type: object
* description: The transaction's details.
* x-schemaName: AdminTransaction
* required:
* - account
* - id
* - account_id
* - transaction_group_id
* - type
* - amount
* - metadata
* - created_at
* - updated_at
* properties:
* id:
* type: string
* title: id
* description: The transaction's ID.
* account_id:
* type: string
* title: account_id
* description: The ID of the store credit account that the transaction belongs to.
* transaction_group_id:
* type: string
* title: transaction_group_id
* description: The ID of the transaction group that the transaction belongs to.
* type:
* type: string
* description: The transaction's type.
* enum:
* - credit
* - debit
* amount:
* type: number
* title: amount
* description: The transaction's amount.
* account:
* $ref: "#/components/schemas/AdminStoreCreditAccount"
* note:
* type: string
* title: note
* description: The transaction's note.
* reference:
* type: string
* title: reference
* description: The transaction's reference.
* reference_id:
* type: string
* title: reference_id
* description: The transaction's reference ID.
* metadata:
* type: object
* description: The transaction's metadata, can hold custom key-value pairs.
* created_at:
* type: string
* format: date-time
* title: created_at
* description: The date the transaction was created at.
* updated_at:
* type: string
* format: date-time
* title: updated_at
* description: The date the transaction was updated at.
*
*/
@@ -0,0 +1,42 @@
/**
* @schema AdminTransactionGroup
* type: object
* description: The transaction group's details.
* x-schemaName: AdminTransactionGroup
* required:
* - account
* - id
* - code
* - credits
* - debits
* - balance
* - metadata
* properties:
* id:
* type: string
* title: id
* description: The transaction group's ID.
* code:
* type: string
* title: code
* description: The transaction group's code.
* credits:
* type: number
* title: credits
* description: The transaction group's credits.
* debits:
* type: number
* title: debits
* description: The transaction group's debits.
* balance:
* type: number
* title: balance
* description: The transaction group's balance.
* account:
* $ref: "#/components/schemas/AdminStoreCreditAccount"
* metadata:
* type: object
* description: The transaction group's metadata, can hold custom key-value pairs.
*
*/
@@ -0,0 +1,31 @@
/**
* @schema AdminTransactionGroupsResponse
* type: object
* description: The paginated list of transaction groups.
* x-schemaName: AdminTransactionGroupsResponse
* required:
* - limit
* - offset
* - count
* - transaction_groups
* properties:
* limit:
* type: number
* title: limit
* description: The maximum number of transaction groups to return.
* offset:
* type: number
* title: offset
* description: The number of transaction groups to skip before retrieving the results.
* count:
* type: number
* title: count
* description: The total number of transaction groups available.
* transaction_groups:
* type: array
* description: The list of transaction groups.
* items:
* $ref: "#/components/schemas/AdminTransactionGroup"
*
*/
@@ -0,0 +1,31 @@
/**
* @schema AdminTransactionsResponse
* type: object
* description: The paginated list of transactions.
* x-schemaName: AdminTransactionsResponse
* required:
* - limit
* - offset
* - count
* - transactions
* properties:
* limit:
* type: number
* title: limit
* description: The maximum number of transactions to return.
* offset:
* type: number
* title: offset
* description: The number of transactions to skip before retrieving the results.
* count:
* type: number
* title: count
* description: The total number of transactions available.
* transactions:
* type: array
* description: The list of transactions.
* items:
* $ref: "#/components/schemas/AdminTransaction"
*
*/
@@ -0,0 +1,15 @@
/**
* @schema AdminTransferGiftCard
* type: object
* description: The details of the gift card transfer request.
* x-schemaName: AdminTransferGiftCard
* required:
* - customer_id
* properties:
* customer_id:
* type: string
* title: customer_id
* description: The ID of the customer to transfer the gift card to.
*
*/
@@ -0,0 +1,39 @@
/**
* @schema AdminUpdateGiftCardParams
* type: object
* description: The details to update in the gift card.
* x-schemaName: AdminUpdateGiftCardParams
* properties:
* status:
* type: string
* description: The gift card's status.
* enum:
* - pending
* - redeemed
* value:
* type: number
* title: value
* description: The gift card's amount.
* customer_id:
* type: string
* title: customer_id
* description: The ID of the customer that the gift card belongs to.
* currency_code:
* type: string
* title: currency_code
* description: The gift card's currency code.
* example: usd
* note:
* type: string
* title: note
* description: The gift card's note.
* expires_at:
* type: string
* title: expires_at
* description: The date the gift card expires at.
* metadata:
* type: object
* description: The gift card's metadata.
*
*/
@@ -0,0 +1,15 @@
/**
* @schema StoreAddGiftCardToCart
* type: object
* description: The details to add a gift card to the cart.
* x-schemaName: StoreAddGiftCardToCart
* required:
* - code
* properties:
* code:
* type: string
* title: code
* description: The gift card's code.
*
*/
@@ -0,0 +1,15 @@
/**
* @schema StoreAddStoreCreditsToCart
* type: object
* description: The details to add store credits to the cart.
* x-schemaName: StoreAddStoreCreditsToCart
* required:
* - amount
* properties:
* amount:
* type: number
* title: amount
* description: The amount of store credits to add to the cart.
*
*/
@@ -0,0 +1,21 @@
/**
* @schema StoreCreateGiftCardInvitation
* type: object
* description: The details to create a gift card invitation.
* x-schemaName: StoreCreateGiftCardInvitation
* required:
* - email
* properties:
* email:
* type: string
* title: email
* description: The email address to send the gift card invitation to.
* format: email
* expires_at:
* type: string
* title: expires_at
* description: The date the gift card invitation expires.
* format: date-time
*
*/
@@ -0,0 +1,84 @@
/**
* @schema StoreGiftCard
* type: object
* description: The gift card's details.
* x-schemaName: StoreGiftCard
* required:
* - customer
* - line_item
* - invitation
* - id
* - code
* - status
* - value
* - currency_code
* - customer_id
* - reference_id
* - note
* - reference
* - expires_at
* - created_at
* - updated_at
* properties:
* customer:
* $ref: "#/components/schemas/StoreCustomer"
* code:
* type: string
* title: code
* description: The gift card's code.
* status:
* type: string
* description: The gift card's status.
* enum:
* - pending
* - redeemed
* value:
* type: number
* title: value
* description: The gift card's amount.
* customer_id:
* type: string
* title: customer_id
* description: The ID of the customer that the gift card belongs to.
* id:
* type: string
* title: id
* description: The gift card's ID.
* reference_id:
* type: string
* title: reference_id
* description: The gift card's reference ID.
* reference:
* type: string
* title: reference
* description: The gift card's reference.
* created_at:
* type: string
* format: date-time
* title: created_at
* description: The date the gift card was created.
* updated_at:
* type: string
* format: date-time
* title: updated_at
* description: The date the gift card was updated.
* currency_code:
* type: string
* title: currency_code
* description: The gift card's currency code.
* example: usd
* note:
* type: string
* title: note
* description: The gift card's note.
* expires_at:
* type: string
* title: expires_at
* description: The date the gift card expires.
* invitation:
* $ref: "#/components/schemas/StoreGiftCardInvitation"
* line_item:
* $ref: "#/components/schemas/StoreOrderLineItem"
*
*/
@@ -0,0 +1,29 @@
/**
* @schema StoreGiftCardInvitation
* type: object
* description: The gift card invitation's details.
* x-schemaName: StoreGiftCardInvitation
* required:
* - id
* - email
* - status
* - gift_card
* properties:
* id:
* type: string
* title: id
* description: The gift card invitation's ID.
* email:
* type: string
* title: email
* description: The gift card invitation's email.
* format: email
* status:
* type: string
* title: status
* description: The gift card invitation's status.
* gift_card:
* $ref: "#/components/schemas/StoreGiftCard"
*
*/
@@ -0,0 +1,13 @@
/**
* @schema StoreGiftCardInvitationResponse
* type: object
* description: The gift card invitation's details.
* x-schemaName: StoreGiftCardInvitationResponse
* required:
* - gift_card_invitation
* properties:
* gift_card_invitation:
* $ref: "#/components/schemas/StoreGiftCardInvitation"
*
*/
@@ -0,0 +1,13 @@
/**
* @schema StoreGiftCardResponse
* type: object
* description: The gift card's details.
* x-schemaName: StoreGiftCardResponse
* required:
* - gift_card
* properties:
* gift_card:
* $ref: "#/components/schemas/StoreGiftCard"
*
*/
@@ -0,0 +1,15 @@
/**
* @schema StoreRemoveGiftCardFromCart
* type: object
* description: The details to remove a gift card from the cart.
* x-schemaName: StoreRemoveGiftCardFromCart
* required:
* - code
* properties:
* code:
* type: string
* title: code
* description: The gift card code to remove from the cart.
*
*/
@@ -0,0 +1,66 @@
/**
* @schema StoreStoreCreditAccount
* type: object
* description: The store credit account's details.
* x-schemaName: StoreStoreCreditAccount
* required:
* - customer
* - transaction_groups
* - id
* - customer_id
* - currency_code
* - credits
* - debits
* - balance
* - metadata
* - created_at
* - updated_at
* properties:
* customer:
* $ref: "#/components/schemas/StoreCustomer"
* id:
* type: string
* title: id
* description: The store credit account's ID.
* customer_id:
* type: string
* title: customer_id
* description: The ID of the customer that the store credit account belongs to.
* currency_code:
* type: string
* title: currency_code
* description: The store credit account's currency code.
* example: usd
* credits:
* type: number
* title: credits
* description: The account's credits.
* debits:
* type: number
* title: debits
* description: The account's debits.
* balance:
* type: number
* title: balance
* description: The store credit account's balance.
* transaction_groups:
* type: array
* description: The store credit account's transaction groups.
* items:
* $ref: "#/components/schemas/StoreTransactionGroup"
* metadata:
* type: object
* description: The store credit account's metadata, can hold custom key-value pairs.
* created_at:
* type: string
* format: date-time
* title: created_at
* description: The date the store credit account was created.
* updated_at:
* type: string
* format: date-time
* title: updated_at
* description: The date the store credit account was updated.
*
*/
@@ -0,0 +1,13 @@
/**
* @schema StoreStoreCreditAccountResponse
* type: object
* description: The store credit account's details.
* x-schemaName: StoreStoreCreditAccountResponse
* required:
* - store_credit_account
* properties:
* store_credit_account:
* $ref: "#/components/schemas/StoreStoreCreditAccount"
*
*/
@@ -0,0 +1,31 @@
/**
* @schema StoreStoreCreditAccountsResponse
* type: object
* description: The paginated list of store credit accounts.
* x-schemaName: StoreStoreCreditAccountsResponse
* required:
* - limit
* - offset
* - count
* - store_credit_accounts
* properties:
* limit:
* type: number
* title: limit
* description: The maximum number of store credit accounts to return.
* offset:
* type: number
* title: offset
* description: The number of store credit accounts to skip before retrieving the results.
* count:
* type: number
* title: count
* description: The total number of store credit accounts available.
* store_credit_accounts:
* type: array
* description: The list of store credit accounts.
* items:
* $ref: "#/components/schemas/StoreStoreCreditAccount"
*
*/
@@ -0,0 +1,42 @@
/**
* @schema StoreTransactionGroup
* type: object
* description: The transaction group's details.
* required:
* - account
* - id
* - code
* - credits
* - debits
* - balance
* - metadata
* properties:
* id:
* type: string
* title: id
* description: The transaction group's ID.
* code:
* type: string
* title: code
* description: The transaction group's code.
* credits:
* type: number
* title: credits
* description: The transaction group's credits.
* debits:
* type: number
* title: debits
* description: The transaction group's debits.
* balance:
* type: number
* title: balance
* description: The transaction group's balance.
* account:
* $ref: "#/components/schemas/StoreStoreCreditAccount"
* metadata:
* type: object
* description: The transaction group's metadata, can hold custom key-value pairs.
* x-schemaName: StoreTransactionGroup
*
*/