Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

🌿 Fern Regeneration -- July 24, 2024 #5

Closed
wants to merge 1 commit into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
1,136 changes: 1,087 additions & 49 deletions .mock/definition/__package__.yml

Large diffs are not rendered by default.

76 changes: 76 additions & 0 deletions .mock/definition/actions.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
types:
GetActionStatusResponseDataCollection:
properties:
id: optional<string>
contractAddress: optional<string>
GetActionStatusResponseDataRecipient:
properties:
walletAddress: optional<string>
GetActionStatusResponseDataToken:
properties:
id: optional<string>
GetActionStatusResponseData:
properties:
collection: optional<GetActionStatusResponseDataCollection>
recipient: optional<GetActionStatusResponseDataRecipient>
token: optional<GetActionStatusResponseDataToken>
GetActionStatusResponse:
properties:
actionId:
type: optional<string>
validation:
format: uuid
action: optional<string>
status: optional<string>
data: optional<GetActionStatusResponseData>
startedAt: optional<datetime>
resource:
type: optional<string>
validation:
format: uri
imports:
root: __package__.yml
service:
auth: false
base-path: ''
endpoints:
get-action-status:
path: /2022-06-09/actions/{actionId}
method: GET
auth: true
docs: >
Use this API to poll for the status of asynchonous actions such as NFT
mints, transfers, etc.


**API scope required**: `nfts.create`
path-parameters:
actionId:
type: string
docs: The actionId.
display-name: Get Action Status
response:
docs: Success
type: GetActionStatusResponse
errors:
- root.ForbiddenError
- root.NotFoundError
examples:
- path-parameters:
actionId: actionId
response:
body:
actionId: 66881a4d-eff9-467a-b19d-a2ff76eef5c2
action: nfts.create
status: pending
data:
collection:
id: someCollection
contractAddress: '0x0B7c736cD6D517b6AFfB3F6151eC662B0000018B'
recipient:
walletAddress: '0x6Def4FF2Efe3731EB2Ca09c625d21bfd6da00000'
token:
id: 66881a4d-eff9-467a-b19d-a2ff76eef5c2
startedAt: '2023-10-02T22:10:41Z'
resource: >-
https://staging.crossmint.com/api/2022-06-09/actions/66881a4d-eff9-467a-b19d-a2ff76eef5c2
14 changes: 10 additions & 4 deletions .mock/definition/api.yml
Original file line number Diff line number Diff line change
@@ -1,14 +1,20 @@
name: api
error-discrimination:
strategy: status-code
display-name: Headless Checkout
default-environment: Staging
display-name: Admin API
environments:
Staging: https://staging.crossmint.com/api
Production: https://www.crossmint.com/api
Default: https://staging.crossmint.com/api
default-environment: Default
auth-schemes:
apiKey:
header: X-API-KEY
name: apiKey
type: string
auth: apiKey
headers:
Authorization:
type: string
name: authorization
X-CLIENT-ID:
type: string
name: clientId
222 changes: 55 additions & 167 deletions .mock/definition/checkout.yml
Original file line number Diff line number Diff line change
@@ -1,186 +1,74 @@
types:
CheckoutMintRequestCollection:
properties:
title:
type: string
docs: Collection title
description:
type: string
docs: Collection description
photo:
type: string
docs: Photo url
CheckoutMintRequestRedirect:
properties:
continue: optional<string>
cancel: optional<string>
CheckoutMintRequestMintConfig:
properties:
totalPrice: optional<string>
imports:
root: __package__.yml
service:
auth: false
base-path: ''
endpoints:
create-order:
path: /2022-06-09/orders
mint:
path: /v1-alpha1/checkout/mint
method: POST
auth: true
docs: Creates a new order that can be used to complete a headless checkout.
display-name: Create Order
request:
name: CheckoutCreateOrderRequest
body:
properties:
recipient: optional<root.Recipient>
locale: optional<root.Locale>
payment: root.Payment
lineItems: root.LineItems
response:
docs: Order successfully created.
type: root.CreateOrderResponse
errors:
- root.BadRequestError
- root.ForbiddenError
- root.NotFoundError
- root.ServiceUnavailableError
examples:
- request:
payment:
method: arbitrum-sepolia
currency: eth
lineItems:
collectionLocator: crossmint:<collectionId>
response:
body:
clientSecret: _removed_
order:
orderId: b2959ca5-65e4-466a-bd26-1bd05cb4f837
phase: payment
locale: en-US
lineItems:
- chain: polygon-amoy
quantity: 1
quote:
status: valid
quotedAt: '2024-06-07T16:55:44.653Z'
expiresAt: '2024-06-07T17:55:44.653Z'
totalPrice:
amount: '0.0001375741'
currency: eth
payment:
status: awaiting-payment
method: base-sepolia
currency: eth
preparation:
chain: base-sepolia
payerAddress: 0x1234abcd...
serializedTransaction: 0x02f90.....
get-order:
path: /2022-06-09/orders/{orderId}
method: GET
auth: true
docs: Get specific order by ID
path-parameters:
orderId:
type: string
docs: |
This is the identifier for the order with UUID format.

**Example:** `9c82ef99-617f-497d-9abb-fd355291681b`
display-name: Get Order
response:
docs: Order successfully created.
type: root.OrderObject
errors:
- root.BadRequestError
- root.ForbiddenError
- root.NotFoundError
- root.ServiceUnavailableError
examples:
- path-parameters:
orderId: orderId
response:
body:
orderId: b2959ca5-65e4-466a-bd26-1bd05cb4f837
phase: payment
locale: en-US
lineItems:
- chain: polygon-amoy
quantity: 1
callData:
quantity: 1
ADDITIONAL_PROPERTIES: Your other mint function arguments
metadata:
name: Headless Checkout Demo
description: NFT Description
imageUrl: https://cdn.io/image.png
quote:
status: valid
delivery:
status: awaiting-payment
quote:
status: valid
quotedAt: '2024-06-07T16:55:44.653Z'
expiresAt: '2024-06-07T17:55:44.653Z'
totalPrice:
amount: '0.0001375741'
currency: eth
payment:
status: awaiting-payment
method: base-sepolia
currency: eth
preparation:
chain: base-sepolia
payerAddress: 0x1234abcd...
serializedTransaction: 0x02f90.....
edit-order:
path: /2022-06-09/orders/{orderId}
method: PATCH
auth: true
docs: >-
Edit an existing order. You can update the recipient, the payment
method, and/or the locale.
path-parameters:
orderId:
type: string
docs: |
This is the identifier for the order with UUID format.
**API scope required**: `nfts.checkout` Begin the checkout process for a
mint

**Example:** `9c82ef99-617f-497d-9abb-fd355291681b`
display-name: Edit Order
**This API is subject to change as it is currently in its alpha form.**
display-name: Generate Checkout Link
request:
name: OrderDto
name: CheckoutMintRequest
body:
properties:
recipient: optional<root.Recipient>
locale: optional<root.Locale>
payment: optional<root.Payment>
clientId:
type: string
docs: The clientId of a previously created collection
userId:
type: string
docs: The userId of a previously created wallet
emailTo:
type: optional<string>
docs: Target email
mintTo:
type: optional<string>
docs: Crypto address to mint the NFT to
paymentMethod:
type: optional<string>
docs: Payment method
listingId: optional<string>
collection: optional<CheckoutMintRequestCollection>
redirect: optional<CheckoutMintRequestRedirect>
mintConfig: optional<CheckoutMintRequestMintConfig>
whPassThroughArgs:
type: optional<string>
docs: Any arguments to included in the webhook status updates
response:
docs: Order successfully created.
type: root.OrderObject
docs: Checkout url generated
type: root.CheckoutMintSuccess
errors:
- root.BadRequestError
- root.ForbiddenError
- root.NotFoundError
- root.ServiceUnavailableError
- root.UnauthorizedError
examples:
- path-parameters:
orderId: orderId
request: {}
- request:
clientId: clientId
userId: userId
response:
body:
orderId: b2959ca5-65e4-466a-bd26-1bd05cb4f837
phase: payment
locale: en-US
lineItems:
- chain: polygon-amoy
quantity: 1
callData:
quantity: 1
ADDITIONAL_PROPERTIES: Your other mint function arguments
metadata:
name: Headless Checkout Demo
description: NFT Description
imageUrl: https://cdn.io/image.png
quote:
status: valid
delivery:
status: awaiting-payment
quote:
status: valid
quotedAt: '2024-06-07T16:55:44.653Z'
expiresAt: '2024-06-07T17:55:44.653Z'
totalPrice:
amount: '0.0001375741'
currency: eth
payment:
status: awaiting-payment
method: base-sepolia
currency: eth
preparation:
chain: base-sepolia
payerAddress: 0x1234abcd...
serializedTransaction: 0x02f90.....
checkoutURL: checkoutURL
Loading
Loading