Card Minting

This page explains how to sign in to Klip Partners to mint, retrieve, send, and delete Cards using Card Minting API.

Account Management

Account Management consists of Signing In, Changing Password, and Changing PIN.

Sign In

Sign In

POST https://api.klipwallet.com/v2/partner/auth

After receiving membership approval, signs in to Klip Partners using the email address and password that were used to sign up.

Headers

NameTypeDescription

Content-Type*

string

application/json

Request Body

NameTypeDescription

email*

string

The email address used to sign up. This will be your account used for signing in.

password*

string

The password used for signing in. It will be sent as a SHA256 of the password used up sign up.

{
  "email": "terri.kwak@groundx.xyz",
  "klaytn_address":0xdc6AE5861a73d852bd3cdD84a4BA7f598A5160F3,
  "contract_address": "0xc94770007dda54cF92009BFF0dE90c06F603a09f",
  "name": "Terri Kwak",
  "phone": "01012345678",
  "service_name": "Puppy World Revolution"
  "access_token" : "eyJ0eXAiOiJKV1QiLCJhbGciOiJI...",
  "status" : 1
  "mint_limit": 1000
  "mint_count": 1
}

Klip Partners is currently accessible only by authorized entities. If your business is considering using the service, please submit via email (1) an introduction of your business, (2) purpose of using Cards, and (3) Card application ideas to klip-partners@groundx.xyz.

Request Example

curl -X POST "https://api.klipwallet.com/v2/partner/auth" \
-d '{"email":"terri.kwak@groundx.xyz", "password":"C01069C9ABB6EA7DA49AE418A24BBEF3AD67170DDCD20AC7C76084A5A85E4057"}' \
-H "Content-Type: application/json"

Response Details

ItemTypeDescription

email

string

The email address of the Partner that will be used for signing in.

klaytn_address

string

The address of the Partner's Klaytn EOA.

contract_address

string

The address of the SCA that mints Cards.

name

string

Legal or registered business name of the Partner.

phone

string

The phone number of the Partner.

service_name

string

The name of the BApp provided by the Partner.

access_token

string

A JWT authentication token issued to enable API requests.

status

number

Account status code.

mint_limit

number

The maximum number of Cards that can be issued by the account.

mint_count

number

The number of Cards actually issued by the account in one month.

status will read 20 before the signup approval, and 1 after the approval. access_token will expire after 24 hours. mint_count and mint_limit will be renewed on the 1st day of each month.

For more details, please refer to our Tuturial. If you need help with this document or with Klip in general, please visit our Developer Forum.

Change Password

Change Password

PUT https://api.klipwallet.com/v2/partner/?opt=password

Changes the password that was used to sign up.

Headers

NameTypeDescription

Authorization*

string

A JWT authentication token.

Content-Type*

string

application/json

Request Body

NameTypeDescription

old_password*

string

Your old password.

new_password*

string

Your new password.

{}

Request Example

curl -X PUT "https://api.klipwallet.com/v2/partner/?opt=password" \
-d '{"old_password":"HASHED_OLD_PASSWORD", "new_password":"HASHED_NEW_PASSWORD"}' \
-H "Authorization: ACCESS_TOKEN" -H "Content-Type: application/json"

For more details, please refer to our Card Minting Tutorial. If you need help with this document or with Klip in general, please visit our Developer Forum.

Change PIN

Change PIN

PUT https://api.klipwallet.com/v2/partner/pin

Changes the PIN Code.

Headers

NameTypeDescription

Authorization*

string

A JWT authentication token.

Content-Type*

string

application/json

Request Body

NameTypeDescription

old_pin*

string

Your old PIN Code.

new_pin*

string

Your new PIN Code.

{}

Request Example

curl -X PUT "https://api.klipwallet.com/v2/partner/pin" \
-d '{"old_pin":"HASHED_OLD_PIN_NUMBER", "new_pin":"HASHED_NEW_PIN_NUMBER"}' \
-H "Authorization: ACCESS_TOKEN" -H "Content-Type: application/json"

For more details, please refer to our Card Minting Tutorial. If you need help with this document or with Klip in general, please visit our Developer Forum.

Card Management

Card Management consists of Uploading Image, Minting Card To Users, Minting Card To Klip Members, Sending Card To Users, Sending Cards To Klip Member, Getting Card Information By Bapp, Getting Card Information, and Deleting Cards.

Upload Image

Upload Image

POST https://api.klipwallet.com/v2/wallet/image

Uploads an image to be used for the Card.

Headers

NameTypeDescription

Authorization*

string

A JWT authentication token.

Content-Type*

string

multipart/form-data

Request Body

NameTypeDescription

upload*

string

The file name of the image to be uploaded. Must include file path.

{"image": "https://url_path_to_img_file/image.png"}

Request Example

curl -X POST "https://api.klipwallet.com/v2/wallet/image" \
-F upload=@./imagefile.png \
-H "Authorization: ACCESS_TOKEN" -H "Content-Type: multipart/form-data"

For more details, please refer to our Card Minting Tutorial. If you need help with this document or with Klip in general, please visit our Developer Forum.

Upload NFT Resource

Upload NFT resource

POST https://api.klipwallet.com/v2/wallet/nftResource

Uploads a resource that will be used for the Cards. A video file for the animation_url field is limited to 10MiB.

Headers

NameTypeDescription

Authorization*

string

A JWT authentication token.

Content-Type*

string

multipart/form-data

Request Body

NameTypeDescription

upload*

string

The file name of the image to be uploaded. Must include file path.

{"url": "https://url_path_to_file/file.mp4"}

Request Example

curl -X POST "https://api.klipwallet.com/v2/wallet/nftResource" \
-F upload=@./file.mp4 \
-H "Authorization: ACCESS_TOKEN" -H "Content-Type: multipart/form-data"

For more details, please refer to our Card Minting Tutorial. If you need help with this document or with Klip in general, please visit our Developer Forum.

Mint Card to User

Mint Card To User

POST https://api.klipwallet.com/v2/wallet/mint

Sends user information to Klip Partners and mints Cards. Cards will be minted to EOAs.

Headers

NameTypeDescription

Authorization*

string

A JWT authentication token.

Content-Type*

string

application/json

Request Body

NameTypeDescription

pin*

string

The PIN Code that will be used for signing transactions.

to_address*

array

An array of strings containing the EOA addresses where the Cards will be minted.

contract_address*

string

The address of the SCA that will mint the Card.

name*

string

The name of the Cards.

description*

string

Description of the Cards.

image*

string

The URL of the image to be used for the Cards.

animation_url

string

The URL of the video that will be used for the Cards. Supported file extension is .mp4. The video won't play if it doesn't have H.264 codec or if the resolution is over 3840x2160.

background_color

string

The RGB color code to be used as the Card's background.

sendable

boolean

If TRUE, the Cards can be sent from Klip to another account.

send_friend_only

boolean

If TRUE, the Cards can be sent from Klip only to your friend on KakaoTalk.

group_name

string

The name of the Card group.

group_icon

string

The URL of the image to be used as the Card group icon.

hashtags

array

An array of strings containing hashtags. Hashtags make your Cards searchable by certain keywords.

layout

string

Determines how the Cards will be displayed. Square is general, wide rectangle is horizontal, and long rectangle is vertical. The default value is general.

external_link

string

The URL address outside of Klip to which users are redirected. (Max. 255 characters)

qr_code

string

The image URL with QR Code. (Max. 255 characters)

bar_code

string

The image URL with Bar Code. (Max. 255 characters)

attributes

array

An array of objects containing the Cards' attributes. (Max. 10 elements)

secure

object

An object containing information only visible to the holder. You can select from the fields bar_code, qr_code and attributes.

status_url

string

An external URL with the Card's status. This URL must return a JSON object. You can set the required boolean type field valid and the optional array type field attributes.

{
  "hash": "0x2d26f602cfbb4c662931592bf2c4ee18d29f09683be5b9e8d589ff935fca0b97"
}
//attributes example
attributes:[
    {
      "trait_type": "Sword", 
      "value": "Iron Short Sword"
    }, 
    {
      "trait_type": "Magic Type", 
      "value": "Fire"
    }, 
    {
      "trait_type": "Sword Level", 
      "value": "5"
    }, 
    {
      "trait_type": "Magic Level", 
      "value": "2"
    }
]
//secure example (Normally you select one of either bar_code or qr_code)
secure: {
    bar_code: "1234 ABCD 5678 EFGH 90IJ",
    qr_code: "https://your-domain.com?key=1234",
    attributes:[
        {
            "trait_type": "Sword",
            "value": "Iron Short Sword"
        },
        {
            "trait_type": "Magic Type",
            "value": "Fire"
        },
        {
            "trait_type": "Sword Level",
            "value": "5"
        },
        {
            "trait_type": "Magic Level",
            "value": "2"
        }
    ]
}
//status_url example
status_url: "https://your-domain.com?key=1234"

//Response sample of a status_url request
{
    valid: true,
    attributes:[
        {
            "trait_type": "Sword",
            "value": "Iron Short Sword"
        },
        {
            "trait_type": "Magic Type",
            "value": "Fire"
        },
        {
            "trait_type": "Sword Level",
            "value": "5"
        },
        {
            "trait_type": "Magic Level",
            "value": "2"
        }
    ]
}

Request Example

curl -X POST "https://api.klipwallet.com/v2/wallet/mint" \
-d @./mint_info.json \
-H "Authorization: ACCESS_TOKEN" -H "Content-Type: application/json"

Request Details for secure

ItemTypeDescription

bar_code

string

The string to be displayed as barcode. It follows the CODE 128 standard. This field is optional. (Max. 20 characters excluding ' '(empty space) or '-')

qr_code

string

The string to be displayed as QR code. This field is optional. (Max. 255 characters)

attributes

array

An array of objects containing the Cards' attributes.

For more details, please refer to our Card Minting Tutorial. If you need help with this document or with Klip in general, please visit our Developer Forum.

Mint Card to Klip Member

Mint Card To Klip Member

POST https://api.klipwallet.com/v2/wallet/mint/person

Sends Klip user information to Klip Partners and mints Card. Card will be minted to the EOA of Klip Member based on the name and phone number provided in to_person.

Headers

NameTypeDescription

Authorization*

string

A JWT authentication token.

Content-Type*

string

application/json

Request Body

NameTypeDescription

pin*

string

The PIN Code that is used to sign the transaction.

to_person*

array

A two-dimensional array containing the name and phone number of the recipient.

contract_address*

string

SCA address from which the Cards will be minted.

name*

string

The name of the Cards.

description*

string

The description of the Cards.

image*

string

The URL of the image to be used for the Cards.

animation_url

string

The URL address of the video that will be used for the Cards. Supported file extension is .mp4. The video won't play if it doesn't have H.264 codec or if the resolution is over 3840x2160

background_color

string

The RGB color code to be used as the Card's background.

sendable

boolean

If TRUE, the Cards can be sent from Klip to another account.

send_friend_only

boolean

If TRUE, the Cards can be sent from Klip only to your friend on KakaoTalk.

group_name

string

The name of the Card group.

group_icon

string

The URL of the image to be used as the Card group icon.

hashtags

array

An array of strings containing hashtags. Hashtags make your Cards searchable by certain keywords.

layout

string

Determines how the Cards will be displayed. Square is general, wide rectangle is horizontal, and long rectangle is vertical. The default value is general.

external_link

string

The URL address outside of Klip to which users are redirected. (Max. 255 characters)

qr_code

string

The image URL with QR Code. (Max. 255 characters)

bar_code

string

The image URL with Bar Code. (Max. 255 characters)

attributes

array

An array of objects containing the the Cards' attributes. (Max. 10 elements)

secure

object

An object containing information only visible to the holder. You can select from the fields bar_code, qr_code amnd attributes.

status_url

string

An external URL containing the Card status. This URL must return a JSON object. You can set the required boolean type field valid and the optional array type field attributes.

{
  "hash": "0x2d26f602cfbb4c662931592bf2c4ee18d29f09683be5b9e8d589ff935fca0b97",
  "result": [["Bruce", "010-1111-2222", "success", ""], ["Janet", "010-3333-4444", "fail", "phone number does not exist"], ...]
}
//attributes example
attributes:[
    {
      "trait_type": "Sword", 
      "value": "Iron Short Sword"
    }, 
    {
      "trait_type": "Magic Type", 
      "value": "Fire"
    }, 
    {
      "trait_type": "Sword Level", 
      "value": "5"
    }, 
    {
      "trait_type": "Magic Level", 
      "value": "2"
    }
]
//secure example (Normally you select one of either bar_code or qr_code)
secure: {
    bar_code: "1234 ABCD 5678 EFGH 90IJ",
    qr_code: "https://your-domain.com?key=1234",
    attributes:[
        {
            "trait_type": "Sword",
            "value": "Iron Short Sword"
        },
        {
            "trait_type": "Magic Type",
            "value": "Fire"
        },
        {
            "trait_type": "Sword Level",
            "value": "5"
        },
        {
            "trait_type": "Magic Level",
            "value": "2"
        }
    ]
}
//status_url 예시
status_url: "https://your-domain.com?key=1234"

//Response example for a status_url request
{
    valid: true,
    attributes:[
        {
            "trait_type": "Sword",
            "value": "Iron Short Sword"
        },
        {
            "trait_type": "Magic Type",
            "value": "Fire"
        },
        {
            "trait_type": "Sword Level",
            "value": "5"
        },
        {
            "trait_type": "Magic Level",
            "value": "2"
        }
    ]
}

Request Example

curl -X POST "https://api.klipwallet.com/v2/wallet/mint/person" \
-d @./mint_person_info.json \
-H "Authorization: ACCESS_TOKEN" -H "Content-Type: application/json"

Request Details for secure

ItemTypeDescription

bar_code

string

The string to be displayed as barcode. It follows the CODE 128 standard. This field is optional. (Max. 20 characters excluding ' '(empty space) or '-')

qr_code

string

The string to be displayed as QR code. This field is optional. (Max. 255 characters)

attributes

array

An array of objects containing the Cards' attributes. This field is optional.

For more details, please refer to our Card Minting Tutorial. If you need help with this document or with Klip in general, please visit our Developer Forum.

Get Mint Count

Get Mint Count

GET https://api.klipwallet.com/v2/wallet/mint/count

Returns the total number of Cards minted using the Partner account. The count is renewed on the 1st day of each month.

Headers

NameTypeDescription

Authorization*

string

A JWT authentication token.

Content-Type*

string

application/json

{
  "mint_count": 10
}

Request Example

curl -X GET "https://api.klipwallet.com/v2/wallet/mint/count" \
-H "Authorization: ACCESS_TOKEN" -H "Content-Type: application/json"

Response Details

ItemTypeDescription

mint_count

number

The number of Cards minted during the month.

For more details, please refer to our Card Minting Tutorial. If you need help with this document or with Klip in general, please visit our Developer Forum.

Send Card to User

Send Card To User

POST https://api.klipwallet.com/v2/wallet/nft/:nft_id/:card_id/send

Sends Card to other users' EOAs.

Path Parameters

NameTypeDescription

nft_id*

string

The ID of the smart contract that minted the Card in the BApp.

card_id*

string

The ID of the Card in the BApp.

Headers

NameTypeDescription

Authorization*

string

A JWT authentication token.

Content-Type*

string

application/json

Request Body

NameTypeDescription

pin*

string

The PIN Code that will be used to sign the transaction.

to_address*

string

The EOA address of the recipient of the Cards.

card_name*

string

The name of the Card to send.

// Successful response example
{ to_address: "0xb1764B96da889..." , fail_count: 0, tx_hash: "0x7cf09602cebb..."}
// One failed PIN Code attempt
{fail_count: 1}
// Two failed PIN Code attempts
{fail_count: 2}
// The PIN Code attempt limit is 5.
// Even if you get it right on the 6th attempt, it will return this response:
{fail_count: 6}
// The maximum value for fail_count is currently 6. 
// Seven failed PIN Code attempts
{fail_count: 6}

You have to include card_name so that the Card name appears for the recipient.

Request Example

curl -X POST "https://api.klipwallet.com/v2/wallet/nft/60/1/send" \
-d @./send_info.json \
-H "Authorization: ACCESS_TOKEN" -H "Content-Type: application/json"

For more details, please refer to our Card Minting Tutorial. If you need help with this document or with Klip in general, please visit our Developer Forum.

Send Card to Klip Member

Send Card To Klip Member

POST https://api.klipwallet.com/v2/wallet/nft/:nft_id/:card_id/send/person

Sends Card to Klip Member to the EOA of Klip Member based on the name and phone number provided in to_person.

Path Parameters

NameTypeDescription

nft_id*

string

ID of the smart contract that minted the Cards.

card_id*

string

The ID of the Card.

Headers

NameTypeDescription

Authorization*

string

A JWT authentication token.

Content-Type*

string

application/json

Request Body

NameTypeDescription

pin*

string

The PIN Code that was used to sign the transaction.

to_person*

array

An array of strings that contains the recipients' names and phone numbers.

card_name*

string

The name of the Card to send.

// Successful response example
{ fail_count: 0, tx_hash: "0x2d26f602cfbb4c662931592bf2c4ee18d29f09683be5b9e8d589ff935fca0b97" }
// One failed PIN Code attempt
{fail_count: 1, tx_hash: ""}
// Two failed PIN Code attempts
{fail_count: 2, tx_hash: ""}
// The PIN Code attempt limit is 5.
// Even if you get it right on the 6th attempt, it will return this response:
{fail_count: 6, tx_hash: ""}
// The maximum value for fail_count is currently 6. 
// Seven failed PIN Code attempts
{fail_count: 6, tx_hash: ""}

You have to include card_name so that the Card name appears for the recipient.

Request Example

curl -X POST "https://api.klipwallet.com/v2/wallet/nft/60/1/send/person" \
-d @./send_person_info.json \
-H "Authorization: ACCESS_TOKEN" -H "Content-Type: application/json"

For more details, please refer to our Card Minting Tutorial. If you need help with this document or with Klip in general, please visit our Developer Forum.

Get Card List

Get Card List

GET https://api.klipwallet.com/v2/wallet/bapp?cursor=

Returns a list of all your Cards. Cards will be displayed grouped in BApps.

Query Parameters

NameTypeDescription

cursor

string

The pointer after which the next request will retrieve the next 100 items if the number of BApps exceeds 100.

Headers

NameTypeDescription

Authorization*

string

A JWT authentication token.

Content-Type*

string

application/json

{
    "bapps": [
        {
            "id": 2,
            "name": "bapp2",
            "bapp_img": "/img/bapp-icon2.svg",
            "category_id": 2,
            "nft_order_no": 1,
            "summary": "summary",
            "card_count": 10,
            "nft_id": 52,
            "cards": [
                    {
                        "created_at": 1580300503,
                        "updated_at": 1580300503,
                        "owner": "0xa3b7aa3a3c8a08bd22f77932368e2043e7ffe263",
                        "sender": "0x0000000000000000000000000000000000000000",
                        "card_id": 18,
                        "card_uri": "https://.../card_meta.json",
                        "transaction_hash": "0x8754f10f73468ea85e84d9e29c2a864fc574c1e57675bfc70b5459d82477a91f"
                    },
                    ...
                ],
            "cards_next_cursor": ""
        },
        ...
    ],
    "next_cursor": ""
}

Request Example

curl "https://api.klipwallet.com/v2/wallet/bapp?cursor=mrzedXOE9OeEorkAvwQXB7JdVg4LP1Rzze2kLQFxLU4C8iMOhOVulzIr5iesZoie9uv9h87UNXsWCKdhqYszXFWLsYYI7h125Rx8p56qlMKaZ20YbNW3zDGmNBJKM1wL" \
-H "Authorization: ACCESS_TOKEN" -H "Content-Type: application/json"

Response Details for bapps[i];

ItemTypeDescription

id

number

The ID of the BApp.

name

string

The name of the BApp.

bapp_img

string

The address of the BApp image file.

category_id

number

The ID for the BApp categories.

nft_order_no

number

The order in which the Card groups are displayed on the Klip Card list.

summary

string

A one-liner description about the BApp.

card_count

number

The number of Cards specifically used for this particular BApp.

nft_id

number

The ID of the NFT. NFT is the smart contract that implements the Card on the blockchain.

cards

array

An array of objects containing the information of each Card.

cards_next_cursor

string

The pointer after which the next request will retrieve the next 100 items if the number of Cards exceeds 100.

next_cursor

string

The pointer after which the next request will retrieve the next 100 items if the number of BApps exceeds 100.

Response Details for bapps[i].cards[i]

ItemTypeDescription

created_at

number

The time at which the Card was minted.

updated_at

number

The time at which the Card was updated.

owner

string

The EOA address of the Card owner.

sender

string

The EOA address of the Card sender.

card_id

number

The ID of the Card.

card_uri

string

The URL of the JSON file containing the Card's metadata.

transaction_hash

string

The transaction hash of the smart contract that minted the Card.

For more details, please refer to our Card Minting Tutorial-1 and Card Minting Tutorial-2. If you need help with this document or with Klip in general, please visit our Developer Forum.

Get Card Information

Get Card Information

GET https://api.klipwallet.com/v2/wallet/nft/:nft_id?cursor=

Returns detailed information of your Cards.

Path Parameters

NameTypeDescription

nft_id*

string

The ID of the NFT. NFT is the smart contract that implements the Card on the blockchain.

Query Parameters

NameTypeDescription

isAll

bool

If TRUE, it returns the informatino of all your Cards. Not usable with the cursor parameter.

cursor

string

The pointer from which to return the next 100 objects. Not usable with the isAll parameter.

Headers

NameTypeDescription

Authorization*

string

A JWT authentication token.

Content-Type*

string

application/json

{
    "name": "conan",
    "symbol_img": "",
    "cards": [
      {
          "created_at": 1580300503,
          "updated_at": 1580300503,
          "owner": "0xa3b7aa3a3c8a08bd22f77932368e2043e7ffe263",
          "sender": "0x0000000000000000000000000000000000000000",
          "card_id": 18,
          "card_uri": "https://.../card_meta.json",
          "transaction_hash": "0x8754f10f73468ea85e84d9e29c2a864fc574c1e57675bfc70b5459d82477a91f"
      },
    ],
    "next_cursor": "mrzedXOE9OeEorkAvwQXB7JdVg4LP1Rzze2kLQFxLU4C8iMOhOVulzIr5iesZoie9uv9h87UNXsWCKdhqYszXFWLsYYI7h125Rx8p56qlMKaZ20YbNW3zDGmNBJKM1wL",
}

Request Example

curl "https://api.klipwallet.com/v2/wallet/nft/52?cursor=mrzedXOE9OeEorkAvwQXB7JdVg4LP1Rzze2kLQFxLU4C8iMOhOVulzIr5iesZoie9uv9h87UNXsWCKdhqYszXFWLsYYI7h125Rx8p56qlMKaZ20YbNW3zDGmNBJKM1wL" \
-H "Authorization: ACCESS_TOKEN" -H "Content-Type: application/json"

Response Details

ItemTypeDescription

name

string

The name of the Card.

symbol_img

string

The URL address of the image to be used for the Card.

cards

array

An array of objects containing the information of each Card.

next_cursor

string

The pointer after which the next request will retrieve the next 100 items if the number of Cards exceeds 100.

Response Details for cards[i]

ItemTypeDescription

created_at

number

The time at which the Card was minted.

updated_at

number

The time at which the Card was updated.

owner

string

The EOA address of the Card owner.

sender

string

The EOA address of the sender.

card_id

number

The ID of the Card.

card_uri

string

The URL of the JSON file containing Cards' metadata.

transaction_hash

string

The hash of the smart contract transaction that minted the Card.

For more details, please refer to our Card Minting Tutorial-1 and Card Minting Tutorial-2. If you need help with this document or with Klip in general, please visit our Developer Forum.

Delete Card

Delete Card

DELETE https://api.klipwallet.com/v2/wallet/nft

Deletes a specified Card.

Headers

NameTypeDescription

Authorization*

string

A JWT authentication token.

Content-Type*

string

application/json

Request Body

NameTypeDescription

pin*

string

The PIN Code that will be used to sign the transaction.

card_id*

number

The ID of the Card.

contract_address*

string

The address of the SCA that minted the Cards.

{
    "hash": "0x2d26f602cfbb4c662931592bf2c4ee18d29f09683be5b9e8d589ff935fca0b97"
}

You cannot delete Cards that you sent to others. Deleting the Cards will not delete the Card image.

Request Example

curl -X DELETE "https://api.klipwallet.com/v2/wallet/nft" \
-d @./delete_info.json \
-H "Authorization: ACCESS_TOKEN" -H "Content-Type: application/json"

For more details, please refer to our Card Minting Tutorial. If you need help with this document or with Klip in general, please visit our Developer Forum.

Approve Escrow

Approve Escrow

POST https://api.klipwallet.com/v2/escrow/approve

Enables the use of escrow for sending Cards. You have send a request to this API at least once to use escrow.

Headers

NameTypeDescription

Authorization*

string

A JWT authentication token.

Content-Type*

string

application/json

Request Body

NameTypeDescription

pin*

string

The PIN Code that will be used to sign the transaction.

contract_address*

string

The address of the SCA that minted the Card.

{
  "fail_count": 0,
  "tx_hash": "string"
}

Request Example

curl -X POST "https://api.klipwallet.com/v2/escrow/approve" \
-d @./approve_info.json \
-H "Authorization: ACCESS_TOKEN" -H "Content-Type: application/json"

For more details, please refer to our Card Minting Tutorial. If you need help with this document or with Klip in general, please visit our Developer Forum.

Get Escrow Approval Status

Get Escrow Approval Status

GET https://api.klipwallet.com/v2/escrow/approve

Shows whether escrow is enabled or not.

Query Parameters

NameTypeDescription

contract_address*

string

The address of the SCA that minted the Card.

Headers

NameTypeDescription

Authorization*

string

A JWT authentication token.

Content-Type*

string

application/json

{
  "approve": true
}

Request Example

curl -X GET "https://api.klipwallet.com/v2/escrow/approve?contract_address=0xc94770007dda54cF92009BFF0dE90c06F603a09f" \
-H "Authorization: ACCESS_TOKEN" -H "Content-Type: application/json"

For more details, please refer to our Card Minting Tutorial. If you need help with this document or with Klip in general, please visit our Developer Forum.

Create Escrow

Create Escrow

POST https://api.klipwallet.com/v2/escrow

Initiates escrow process by creating a link through which Klip user can receive the Card.

Headers

NameTypeDescription

Authorization*

string

A JWT authentication token.

Content-Type*

string

application/json

Request Body

NameTypeDescription

pin*

string

The PIN Code that will be used to sign the transaction.

card_ids*

array

An array of numbers containing Card IDs. It can hold up to 100 elements.

contract_address*

string

The address of the SCA that minted the Card.

{
  "claim_links": [
    "https://klipwallet.com/?target=/claimCard/2/123?claimKey=1234567890123456789012345678901212345678901234567890123456789012"
  ],
  "fail_count": 0,
  "tx_hash": "0x2d26f602cfbb4c662931592bf2c4ee18d29f09683be5b9e8d589ff935fca0b97"
}

You can only create escrows for Cards you hold, and not the ones sent. The Cards that are in escrow can be listed using Get Cards in Escrow.

Request Example

curl -X POST "https://api.klipwallet.com/v2/escrow" \
-d @./escrow_info.json \
-H "Authorization: ACCESS_TOKEN" -H "Content-Type: application/json"

For more details, please refer to our Card Minting Tutorial. If you need help with this document or with Klip in general, please visit our Developer Forum.

Get Cards in Escrow

Get Cards in Escrow

GET https://api.klipwallet.com/v2/escrow

Returns a list of Cards in escrow.

Query Parameters

NameTypeDescription

contract_address*

string

The address of the SCA that minted the Card.

cursor

string

The pointer from which to return the next 100 objects. If you make a GET request for over 100 Cards, it will return 100 items in the result and a next_cursor value. To retrieve the rest of the Cards, set the cursor parameter with next_cursor and make another request to the same endpoint.

Headers

NameTypeDescription

Authorization*

string

A JWT authentication token.

Content-Type*

string

application/json

{
    "cards": [
        {
            "name": "conan",
            "symbol_img": "",
            "cards": [
              {
                  "created_at": 1580300503,
                  "updated_at": 1580300503,
                  "owner": "0xa3b7aa3a3c8a08bd22f77932368e2043e7ffe263",
                  "sender": "0x0000000000000000000000000000000000000000",
                  "card_id": 18,
                  "card_uri": "https://.../card_meta.json",
                  "transaction_hash": "0x8754f10f73468ea85e84d9e29c2a864fc574c1e57675bfc70b5459d82477a91f"
              },
            ],
            "next_cursor": "mrzedXOE9OeEorkAvwQXB7JdVg4LP1Rzze2kLQFxLU4C8iMOhOVulzIr5iesZoie9uv9h87UNXsWCKdhqYszXFWLsYYI7h125Rx8p56qlMKaZ20YbNW3zDGmNBJKM1wL",
        }
    ]
}

For more details on cursor, please refer to Pagination.

Request Example

curl -X GET "https://api.klipwallet.com/v2/escrow?contract_address=0xc94770007dda54cF92009BFF0dE90c06F603a09f" \
-H "Authorization: ACCESS_TOKEN" -H "Content-Type: application/json"

Response Details

ItemTypeDescription

name

string

The name of the Card.

symbol_img

string

The URL address of the image to be used for the Card.

cards

array

An array of objects containing the information of each Card.

next_cursor

string

The pointer after which the next request will retrieve the next 100 items if the number of Cards exceeds 100.

Response Details for cards[i]

ItemTypeDescription

created_at

number

The time at which the Card was minted.

updated_at

number

The time at which the Card was updated.

owner

string

The EOA address of the Card owner.

sender

string

The EOA address of the sender.

card_id

number

The ID of the Card.

card_uri

string

The URL of the JSON file containing the Card's metadata.

transaction_hash

string

The hash of the smart contract transaction that minted the Card.

For more details, please refer to our Card Minting Tutorial. If you need help with this document or with Klip in general, please visit our Developer Forum.

Cancel Escrow

Cancel Escrow

DELETE https://api.klipwallet.com/v2/escrow

Cancels the escrow process for Cards that are in escrow.

Headers

NameTypeDescription

Authorization*

string

A JWT authentication token.

Content-Type*

string

application/json

Request Body

NameTypeDescription

pin*

string

The PIN Code that will be used to sign the transaction.

card_ids*

array

An array of numbers containing Card IDs. Can hold up to 100 elements.

contract_address*

string

The address of the SCA that minted the Card.

{
  "fail_count": 0,
  "tx_hash": "string"
}

This only works for Cards that are currently in escrow, and not Cards already sent. Cancelled Cards will return to the list.

Request Example

curl -X DELETE "https://api.klipwallet.com/v2/escrow" \
-d @./cancel_info.json \
-H "Authorization: ACCESS_TOKEN" -H "Content-Type: application/json"

For more details, please refer to our Card Minting Tutorial. If you need help with this document or with Klip in general, please visit our Developer Forum.

Get Transaction Result

Get Transaction Result

GET https://api.klipwallet.com/v2/wallet/receipt

Returns whether the transaction has been successfully recorded on blockchain.

Query Parameters

NameTypeDescription

tx_hash*

string

The hash of the transaction to make the query on.

Headers

NameTypeDescription

Authorization*

string

A JWT authentication token.

Content-Type*

string

application/json

{
  "success": true
}

Request Example

curl -X GET "https://api.klipwallet.com/v2/wallet/receipt?tx_hash=0x880a45d3c482c7d794c2e7b7dbdc9e933a68f4a1f3d978d582ba9f9ebd1f9e72" \
-H "Authorization: ACCESS_TOKEN" -H "Content-Type: application/json"

Response Details

ItemTypeDescription

success

bool

Returns whether the transaction was successful.

For more details, please refer to our Card Minting Tutorial. If you need help with this document or with Klip in general, please visit our Developer Forum.

Last updated