Introduction

This documentation aims to provide all the information you need to work with our API.

About API endpoint URL

The endpoint URL is https://api.icafecloud.com

Authenticating requests

To authenticate requests, include an Authorization header with the value "Bearer {YOUR_AUTH_KEY}".

All authenticated endpoints are marked with a requires authentication badge in the documentation below.

You can retrieve your token by visiting your dashboard and clicking Settings -> API settings -> Create, Generate API token (We only support one API token).

Config APIs

Center settings

PUT
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/configs/centerSettings
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//configs/centerSettings" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"timezone\": null
}"

Client settings

PUT
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/configs/clientSettings
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//configs/clientSettings" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"cafe_info_kiosk_bg\": \"ixkolowyuffszfr\"
}"

Game settings

PUT
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/configs/gameSettings
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//configs/gameSettings" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \

Layalty settings

PUT
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/configs/loyaltySettings
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//configs/loyaltySettings" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \

Member settings

PUT
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/configs/memberSettings
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//configs/memberSettings" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Protection setting

PUT
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/configs/protectionSettings
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//configs/protectionSettings" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Generate API key

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/configs/action/generateApiKey
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

api_key_ips
string
required

IPs.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//configs/action/generateApiKey" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"api_key_ips\": \"culpa\"
}"

Set games button status

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/configs/action/gamesButtonStatusSet
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//configs/action/gamesButtonStatusSet" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"show_enable_games\": 12,
    \"show_disabled_games\": 12,
    \"show_games_icon_view\": 12
}"

Games settings

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/configs/action/gamesSettingsSet
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//configs/action/gamesSettingsSet" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"game_auto_launch_delay\": [
        {
            \"delay\": 52
        }
    ]
}"

SMS provider settings

PUT
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/configs/smsProviderSettings
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//configs/smsProviderSettings" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \

Get config lists

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/configs
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//configs" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}
GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/configs/action/centerLogo
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//configs/action/centerLogo" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:

Get games button status

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/configs/action/gamesButtonStatusGet
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//configs/action/gamesButtonStatusGet" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Get games settings

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/configs/action/gamesSettingsGet
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//configs/action/gamesSettingsGet" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Tax info

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/configs/action/taxInfo
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//configs/action/taxInfo" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Vnc server code

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/configs/action/vncServerCode
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//configs/action/vncServerCode" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Report settings

PUT
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/configs/reportSettings
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//configs/reportSettings" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \

Time settings

PUT
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/configs/timeSettings
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//configs/timeSettings" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \

Download steam update script

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/configs/action/downloadSteamScript
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//configs/action/downloadSteamScript" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"steam_update_account\": null,
    \"steam_update_password\": null,
    \"steam_update_email_imap_ssl_server\": null,
    \"steam_update_email_account\": null,
    \"steam_update_email_password\": null
}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

POS settings

PUT
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/configs/posSettings
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//configs/posSettings" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Store settings

PUT
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/configs/storeSettings
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//configs/storeSettings" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Client print settings

PUT
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/configs/clientPrintSettings
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//configs/clientPrintSettings" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Get center config image

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/configs/action/image/{key}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

key
string
required

Cinfig key.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//configs/action/image/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Get sub licenses list

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/configs/action/subLicenses
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//configs/action/subLicenses" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Get client background image

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/configs/action/clientBgImage
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

name
string
required

Image name.

Example:
iCafeBackground1.jpg

Body Parameters

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//configs/action/clientBgImage?name=iCafeBackground1.jpg" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"name\": \"culpa\"
}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Get center config image

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/memberNewsConfigImage/{key}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

key
string
required

Cinfig key.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//memberNewsConfigImage/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

PCs APIs

Get rooms

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcs/action/member_rooms
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//pcs/action/member_rooms" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": [
        {
            "area_icafe_id": 7777,
            "area_name": "VIP",
            "area_index": 0,
            "area_frame_x": 20,
            "area_frame_y": 50,
            "area_frame_width": 560,
            "area_frame_height": 440,
            "area_allow_booking": 1
        }
    ]
}

Update PCs

PUT
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcs
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//pcs" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pcs\": null,
    \"edit_pc_name\": null,
    \"edit_pc_group_id\": 1,
    \"edit_pc_console_type\": 1
}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "pcs": [
            {
                "pc_icafe_id": 7777,
                "pc_ip": "192.168.1.140",
                "pc_name": "compuspler",
                "pc_mac": "5A-9A-9B-26-DD-C4",
                "pc_comment": "",
                "pc_console_type": 0,
                "pc_group_id": 0,
                "pc_area_name": "VIP",
                "pc_box_position": "absolute",
                "pc_box_top": 300,
                "pc_box_left": 240,
                "pc_enabled": 1,
                "recent_booking": null,
                "pc_group_name": null,
                "status_connect_time_local": "2025-03-10 00:26:40",
                "status_disconnect_time_local": "2025-03-10 02:26:40",
                "status_connect_time_duration": "187:10:01",
                "status_connect_time_left": "-185:10:01",
                "status_pay_by_member_id": 0,
                "member_id": 57843940664,
                "member_icafe_id": 7777,
                "member_account": "K93B83",
                "member_balance": "2.00",
                "member_balance_bonus": "0.00",
                "member_group_id": -2,
                "member_group_name": null,
                "member_group_desc": null,
                "member_group_discount_rate": null,
                "offer_in_using": null,
                "price_name": "Default",
                "status_total_time": "-185:10:01"
            }
        ]
    }
}

Delete PCs

DELETE
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcs
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request DELETE \
    "https://api.icafecloud.com/api/v2/cafe//pcs" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pcs\": null
}"

For multi-PC editing

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcs/action/multiPcInfo
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//pcs/action/multiPcInfo" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pcs\": null
}"

Set out of order

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcs/action/setOutOfOrder
requires authentication

Toggle the enabled/disabled (out of order) status for one or more PCs.

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

The ID of the cafe.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//pcs/action/setOutOfOrder" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pcs\": [
        {
            \"pc_name\": null,
            \"pc_enabled\": null
        }
    ]
}"

Get PC lists

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcs/action/getPcsList
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

pc_name
string
required

PC name.

pc_console_type
integer
required

Console type(1-Other,2-Xbox,3-PS3,4-PS4,5-PS5,6-Will).

Body Parameters

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//pcs/action/getPcsList?pc_name=&pc_console_type=" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pc_name\": \"culpa\",
    \"pc_console_type\": 12
}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Save PC layout

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcs/action/savePcLayout
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//pcs/action/savePcLayout" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"room_list\": \"[{\\\"area_frame_x\\\":20,\\\"area_frame_y\\\":50,\\\"area_frame_width\\\":560,\\\"area_frame_height\\\":440,\\\"area_name\\\":\\\"VIP\\\",\\\"area_allow_booking\\\":1}]\",
    \"pc_list\": \"[{\\\"pc_name\\\":\\\"C01-1\\\",\\\"pc_area_name\\\":\\\"VIP\\\",\\\"pc_box_position\\\":\\\"absolute\\\",\\\"pc_box_top\\\":300,\\\"pc_box_left\\\":96}]\"
}"

Get rooms

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcs/action/rooms
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//pcs/action/rooms" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": [
        {
            "area_icafe_id": 7777,
            "area_name": "VIP",
            "area_index": 0,
            "area_frame_x": 20,
            "area_frame_y": 50,
            "area_frame_width": 560,
            "area_frame_height": 440,
            "area_allow_booking": 1
        }
    ]
}

Console details

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcs/action/consoleDetail
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

pc_name
string
required

PC name.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//pcs/action/consoleDetail?pc_name=" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

PCs lists

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcs/action/member_pcs
requires authentication

Returns PCs for the cafe and all sub-cafes in the same company group, each with live session status. Times are in each cafe's local timezone.

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//pcs/action/member_pcs" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": [
        {
            "pc_icafe_id": 7777,
            "pc_ip": "",
            "pc_name": "C01-1",
            "pc_mac": "",
            "pc_comment": "A",
            "pc_console_type": 6,
            "pc_group_id": 0,
            "pc_area_name": "VIP",
            "pc_box_position": "absolute",
            "pc_box_top": 300,
            "pc_box_left": 144,
            "pc_enabled": 1,
            "pc_in_using": 1,
            "status_member_id": 1234,
            "status_member_account": "ABCD",
            "status_member_offer_id": 0,
            "status_pay_by_member_id": 0,
            "status_connect_time_local": "2024-01-01 10:00:00",
            "status_disconnect_time_local": "2024-01-01 12:00:00",
            "status_connect_time_duration": "02:00:00",
            "status_connect_time_left": "-00:30:00"
        }
    ]
}

PCs lists

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcs
requires authentication

Returns PCs for the cafe and all sub-cafes in the same company group, each with live session status. Times are in each cafe's local timezone.

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//pcs" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": [
        {
            "pc_icafe_id": 7777,
            "pc_ip": "",
            "pc_name": "C01-1",
            "pc_mac": "",
            "pc_comment": "A",
            "pc_console_type": 6,
            "pc_group_id": 0,
            "pc_area_name": "VIP",
            "pc_box_position": "absolute",
            "pc_box_top": 300,
            "pc_box_left": 144,
            "pc_enabled": 1,
            "pc_in_using": 1,
            "status_member_id": 1234,
            "status_member_account": "ABCD",
            "status_member_offer_id": 0,
            "status_pay_by_member_id": 0,
            "status_connect_time_local": "2024-01-01 10:00:00",
            "status_disconnect_time_local": "2024-01-01 12:00:00",
            "status_connect_time_duration": "02:00:00",
            "status_connect_time_left": "-00:30:00"
        }
    ]
}

Add PC

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcs
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//pcs" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pc_name\": null,
    \"pc_console_type\": 1,
    \"pc_group_id\": 1
}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "pcs": [
            {
                "pc_icafe_id": 7777,
                "pc_ip": "192.168.1.140",
                "pc_name": "compuspler",
                "pc_mac": "5A-9A-9B-26-DD-C4",
                "pc_comment": "",
                "pc_console_type": 0,
                "pc_group_id": 0,
                "pc_area_name": "VIP",
                "pc_box_position": "absolute",
                "pc_box_top": 300,
                "pc_box_left": 240,
                "pc_enabled": 1,
                "recent_booking": null,
                "pc_group_name": null,
                "status_connect_time_local": "2025-03-10 00:26:40",
                "status_disconnect_time_local": "2025-03-10 02:26:40",
                "status_connect_time_duration": "187:10:01",
                "status_connect_time_left": "-185:10:01",
                "status_pay_by_member_id": 0,
                "member_id": 57843940664,
                "member_icafe_id": 7777,
                "member_account": "K93B83",
                "member_balance": "2.00",
                "member_balance_bonus": "0.00",
                "member_group_id": -2,
                "member_group_name": null,
                "member_group_desc": null,
                "member_group_discount_rate": null,
                "offer_in_using": null,
                "price_name": "Default",
                "status_total_time": "-185:10:01"
            }
        ]
    }
}

PC list detailed

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcList
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//pcList" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

list of online PCs name

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/onlinePcList
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//onlinePcList" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Set login lock

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcs/action/setLoginLock
requires authentication

Lock or unlock login access for one or more PCs (pc_enabled = 2 = locked, 1 = normal). Maintenance (pc_enabled = 0) takes precedence and is not affected by this endpoint.

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

The ID of the cafe.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//pcs/action/setLoginLock" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pcs\": [
        {
            \"pc_name\": null,
            \"locked\": null
        }
    ]
}"

Generate 4 digits PIN for TV

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcs/action/generateTVPin
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
string
required
Example:
culpa

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe/culpa/pcs/action/generateTVPin" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"tv_pc_name\": null
}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "pin": "1234"
    }
}

Get PC layout init data for kiosk

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcs/action/layoutScreen
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//pcs/action/layoutScreen" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "rooms": {},
        "pc_list": "",
        "credentials": {}
    }
}

PC list detailed

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcs/action/pcList
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//pcs/action/pcList" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Boot hardware APIs

Boot hardware lists

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bootHardwareProfiles
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//bootHardwareProfiles" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Add boot hardware

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bootHardwareProfiles
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

hardware_id
integer
required

Hardware ID.

hardware_desc
string
required

Description.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//bootHardwareProfiles" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"hardware_id\": \"culpa\",
    \"hardware_desc\": \"culpa\"
}"

Delete boot hardware

DELETE
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bootHardwareProfiles/{id}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

id
integer
required

ID.

Example request:
curl --request DELETE \
    "https://api.icafecloud.com/api/v2/cafe//bootHardwareProfiles/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Products APIs

Get product lists

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/products
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

product_group_id
string

Product group ID.

search_text
string

Search text.

sort_name
string

Sort by name.

sort
string

Sort(options:desc,asc).

Example:
desc
page
integer

Page number.

Example:
1
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//products?sort=desc&page=1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Get product details

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/products/{productId}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

productId
integer
required

Product ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//products/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Add product

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/products
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//products" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"product_name\": null,
    \"product_group_id\": null,
    \"product_show_weekday\": \"7|1|2|3|4|5|6|\",
    \"product_show_time\": \"00:00-24:00\",
    \"product_adult_only\": 0,
    \"product_kitchen_staff_id\": 12
}"

Update products

PUT
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/products/{productId}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

productId
integer
required

Product ID.

Body Parameters

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//products/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"product_name\": null,
    \"product_group_id\": null,
    \"product_show_weekday\": \"7|1|2|3|4|5|6|\",
    \"product_show_time\": \"00:00-24:00\",
    \"product_adult_only\": 0,
    \"product_kitchen_staff_id\": 12
}"

Delete product

DELETE
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/products/{productId}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

productId
integer
required

Product ID.

Example request:
curl --request DELETE \
    "https://api.icafecloud.com/api/v2/cafe//products/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Import product

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/products/action/importProducts
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//products/action/importProducts" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"license_name\": null,
    \"license_password\": null
}"

Delete product combo item

DELETE
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/products/{productId}/productComboItem
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

productId
integer
required

Product ID.

Body Parameters

Example request:
curl --request DELETE \
    "https://api.icafecloud.com/api/v2/cafe//products//productComboItem" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"product_source\": null,
    \"product_id\": null
}"

Restock

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/products/{productId}/restock
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

productId
integer
required

Product ID.

Query Parameters

restock_count
string
required
Example:
culpa
restock_comment
string
restock_cost
string

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//products//restock?restock_count=culpa" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"restock_count\": null,
    \"restock_cost\": null
}"

Write off

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/products/{productId}/writeOff
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

productId
integer
required

Product ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//products//writeOff" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"count\": null,
    \"comment\": null
}"

Shift stock logs

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/products/action/shiftStockLogs/{shiftId}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

shiftId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//products/action/shiftStockLogs/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Stock realtime

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/products/action/stockRealtime
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//products/action/stockRealtime" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Restore product

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/products/{productId}/restore
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

productId
integer
required

Product ID.

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//products//restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Archive product

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/products/{productId}/archive
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

productId
integer
required

Product ID.

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//products//archive" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Export csv template

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/products/action/exportTemplate
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//products/action/exportTemplate" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Import product from csv

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/products/action/importProductsByCsv
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//products/action/importProductsByCsv" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Get member shop data

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/memberShop
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//memberShop" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

News APIs

Get news lists

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/news
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//news" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Add news

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/news
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//news" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"news_name\": null,
    \"news_order\": null,
    \"news_url\": null,
    \"news_type\": null
}"

Update news

PUT
PATCH
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/news/{id}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

id
integer
required

ID.

Body Parameters

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//news/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"news_name\": null,
    \"news_order\": null,
    \"news_url\": null,
    \"news_type\": null
}"

Delete news

DELETE
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/news/{id}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

id
integer
required

ID.

Example request:
curl --request DELETE \
    "https://api.icafecloud.com/api/v2/cafe//news/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Get news lists

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/memberNews
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//memberNews" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Boot disks APIs

Boot game fix lists

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bootGamefixes
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//bootGamefixes" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Add boot game fix

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bootGamefixes
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//bootGamefixes" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"gamefix_name\": null,
    \"gamefix_path\": null
}"

Delete boot game fix

DELETE
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bootGamefixes
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request DELETE \
    "https://api.icafecloud.com/api/v2/cafe//bootGamefixes" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"name\": null
}"

Add boot disk

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bootDisks
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//bootDisks" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"disk_drive\": null,
    \"disk_type\": \"unused\",
    \"disk_cache_ram_size_m\": 15,
    \"disk_cache_ssd_size_m\": 0
}"

Update boot disk

PUT
PATCH
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bootDisks/{id}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

id
integer
required

ID.

Body Parameters

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//bootDisks/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"disk_drive\": null,
    \"disk_type\": \"unused\",
    \"disk_cache_ram_size_m\": 15,
    \"disk_cache_ssd_size_m\": 0
}"

Delete boot disk

DELETE
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bootDisks/{id}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

id
integer
required

ID.

Example request:
curl --request DELETE \
    "https://api.icafecloud.com/api/v2/cafe//bootDisks/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Boot disk lists

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bootDisks
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//bootDisks" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": [
        {
            "disk_id": 8,
            "disk_icafe_id": 7777,
            "disk_drive": "U:",
            "disk_type": "unused",
            "disk_cache_ram_size_m": 0,
            "disk_cache_ssd_size_m": 0,
            "disk_drive_client": "",
            "disk_user_group": -2
        }
    ]
}

Boot disk details

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bootDisks/{id}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

id
integer
required

ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//bootDisks/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "info": {
            "disk_id": 1,
            "disk_icafe_id": 7777,
            "disk_drive": "D:",
            "disk_type": "game",
            "disk_cache_ram_size_m": 15,
            "disk_cache_ssd_size_m": 0,
            "disk_drive_client": "",
            "disk_user_group": 1731927
        },
        "group_list": [
            {
                "pc_group_icafe_id": 7777,
                "pc_group_id": 1730280,
                "pc_group_name": "Col1",
                "pc_group_desc": "Col1"
            }
        ]
    }
}

强制该网吧重新拉取最新 gamefix 脚本,无需重新提交整个 game settings 表单。 只推进 icafe_js_update_time,具体的 WSS 推送(update_icafe_js / boot_push_config)由前端调用方负责发起

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bootGamefixes/action/refresh
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//bootGamefixes/action/refresh" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Promo APIs

Get promo lists

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/promo
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//promo" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Add promo

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/promo
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//promo" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"promo_name\": null,
    \"promo_qty\": null,
    \"promo_bonus_type\": null,
    \"promo_bonus_amount\": null,
    \"promo_bonus_for\": null
}"

Update promo

PUT
PATCH
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/promo/{id}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

id
integer
required

Promo ID.

Body Parameters

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//promo/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"promo_name\": null,
    \"promo_qty\": null,
    \"promo_bonus_type\": null,
    \"promo_bonus_amount\": null,
    \"promo_bonus_for\": null
}"

Delete promo

DELETE
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/promo/{id}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

id
integer
required

Promo ID.

Example request:
curl --request DELETE \
    "https://api.icafecloud.com/api/v2/cafe//promo/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Init all refer code

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/promo/init_all_refer_code
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//promo/init_all_refer_code" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Promo info

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/promoInfo
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//promoInfo" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"promo_code\": \"culpa\",
    \"promo_bonus_for\": \"culpa\"
}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

PC sessions APIs

Get payment info

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcSessions/paymentInfo
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//pcSessions/paymentInfo" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pcs\": null
}"

Init add time money

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcSessions/initAddTimeMoney
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//pcSessions/initAddTimeMoney" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pcs\": null,
    \"pc_add_value\": null,
    \"pc_add_time_type\": null
}"

Init offer

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcSessions/initOffer
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//pcSessions/initOffer" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pcs\": null
}"

Topup balance and start/update session

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcSessions/addTimeMoney
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//pcSessions/addTimeMoney" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pc_name\": null,
    \"pc_cost\": null,
    \"payment_method\": null
}"

Member session

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcSessions/memberSession
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//pcSessions/memberSession" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pc_name\": null,
    \"member_account\": null,
    \"member_offer_id\": 12
}"

Postpaid session

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcSessions/postpaidSession
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//pcSessions/postpaidSession" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pcs\": null,
    \"duration_hours\": 0,
    \"duration_mins\": 65
}"

Add offer

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcSessions/addOffer
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//pcSessions/addOffer" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pcs\": null,
    \"offer_id\": null,
    \"offer_payment_method\": null
}"

Free session

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcSessions/freeSession
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//pcSessions/freeSession" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pcs\": null,
    \"duration_hours\": 52,
    \"duration_mins\": 0
}"

Checkout

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcSessions/checkout
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//pcSessions/checkout" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pc_name\": null,
    \"pc_group_id\": null,
    \"member_id\": null,
    \"member_account\": null,
    \"member_group_id\": null,
    \"pc_cost\": null,
    \"pc_data_time\": null,
    \"pc_data_sign\": null,
    \"payment_method\": null,
    \"auto\": null
}"

Move

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcSessions/move
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//pcSessions/move" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pc_name\": null,
    \"move_to\": null
}"

Add admin message

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcSessions/adminMessage
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//pcSessions/adminMessage" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pc_name\": null,
    \"member_account\": null,
    \"message\": null
}"

Cashier expense

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcSessions/cashierExpense
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//pcSessions/cashierExpense" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"balance\": null
}"

Push client status

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcSessions/pushClientStatus
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//pcSessions/pushClientStatus" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \

Send wss command

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcSessions/sendWssCommand
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//pcSessions/sendWssCommand" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"command\": null
}"

Transfer session: snapshot source PC's bill and attach it to target member; end source session.

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcSessions/transferPayment
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//pcSessions/transferPayment" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"source_pc_name\": null,
    \"target_pc_name\": null
}"

Transfer remaining time: settle the source session's used part, then move everything left (unused prepaid balance and/or the offer driving the session) to the member on another PC.

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcSessions/transferTime
requires authentication

Guest / prepaid / offer accounts only - a registered member's balance is their own wallet, not this visit's prepayment, so it is deliberately out of scope.

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//pcSessions/transferTime" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"source_pc_name\": null,
    \"target_pc_name\": null
}"

List unreturned devices for current PC session

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcSessions/devices
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

pc_name
string
required

PC name.

Body Parameters

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//pcSessions/devices?pc_name=" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pc_name\": \"culpa\"
}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Add a device to current session

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcSessions/addDevices
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//pcSessions/addDevices" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pc_name\": null,
    \"item_name\": null
}"

Return a device

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcSessions/returnDevice
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//pcSessions/returnDevice" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pc_name\": null,
    \"uid\": null
}"

Usage history

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcSessions/usageHistory
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//pcSessions/usageHistory" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pc_name\": null
}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Member session history

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcSessions/{memberId}/memberSessionHistory
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

memberId
integer
required

Member ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//pcSessions//memberSessionHistory" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Boot PCs APIs

Get boot PC lists

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bootPcs
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//bootPcs" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": [
        {
            "bpc_id": 2,
            "bpc_icafe_id": 7777,
            "bpc_name": "PC131",
            "bpc_enable": 1,
            "bpc_name_auth": 0,
            "bpc_ip": "192.168.17.131",
            "bpc_ip_auth": 1,
            "bpc_mac": "00:0C:29:1D:74:79",
            "bpc_mac_auth": 1,
            "bpc_password": "",
            "bpc_password_auth": 0,
            "bpc_groupid": 0,
            "bpc_image1_id": 1101,
            "bpc_image2_id": 0,
            "bpc_write_back_keep": 0,
            "bpc_diskless_boot_pxe": "ipxe.pxe",
            "bpc_diskless_boot_gw": "",
            "bpc_diskless_boot_dns1": "",
            "bpc_diskless_boot_dns2": "",
            "bpc_diskless_boot_hw": "",
            "bpc_diskless_boot_server": "192.168.17.131",
            "bpc_diskless_boot_display_enable": 0,
            "bpc_diskless_boot_display": "",
            "bpc_diskless_boot_client_cache_enable": 0,
            "bpc_diskless_boot_client_cache": "0",
            "bpc_diskless_boot_upload": 0,
            "bpc_diskless_boot_client_cache_to_local": 0,
            "bpc_personal_disk_enable": 0,
            "bpc_personal_disk_path": "",
            "bpc_personal_disk_size": "",
            "bpc_newip": 0,
            "bpc_device_in_super": 0,
            "bpc_enable_failover": 0,
            "bpc_last_time": "2022-12-10 05:36:53",
            "bpc_ven_dev": "",
            "bpc_child_image_name": "Default",
            "bpc_comment": "",
            "bpc_color": "#FFFFFF",
            "bpc_cpu": null,
            "bpc_mb": null,
            "bpc_vga": null,
            "bpc_ram": null,
            "bpc_nic_description": null,
            "image1_name": "WIN7",
            "image2_name": null,
            "hw_hardware_id": "",
            "pc_group_name": null,
            "boot_image": "WIN7",
            "hardware_profile": "Default",
            "client_cache": "N/A",
            "status": "Offline"
        }
    ]
}

Get boot PC details

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bootPcs/{id}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

id
integer
required

ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//bootPcs/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Add boot PC

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bootPcs
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//bootPcs" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"bpc_name\": null
}"

Update boot PC

PUT
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bootPcs/{bpcId}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

bpcId
string
required
Example:
culpa
bcpId
integer
required

BCP ID.

Body Parameters

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//bootPcs/culpa" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"bpc_name\": null
}"

Delete boot PC

DELETE
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bootPcs/{bpcId}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

bpcId
string
required
Example:
culpa
bcpId
integer
required

BCP ID.

Example request:
curl --request DELETE \
    "https://api.icafecloud.com/api/v2/cafe//bootPcs/culpa" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Enable super client init

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bootPcs/{bpcId}/enableSuperClientInit
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

bpcId
string
required
Example:
culpa
bcpId
integer
required

BCP ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//bootPcs/culpa/enableSuperClientInit" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Disable super client init

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bootPcs/{bpcId}/disableSuperClientInit
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

bpcId
string
required
Example:
culpa
bcpId
integer
required

BCP ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//bootPcs/culpa/disableSuperClientInit" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Keep write back

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bootPcs/{bpcId}/keepWriteBack
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

bpcId
string
required
Example:
culpa
bcpId
integer
required

BCP ID.

Body Parameters

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//bootPcs/culpa/keepWriteBack" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"enable\": null
}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Get Empty PC

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bootPcs/action/emptyPc
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//bootPcs/action/emptyPc" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Update multiple boot PCs

PUT
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bootPcs/action/updateMulti
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//bootPcs/action/updateMulti" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"ids\": null
}"

Import third-party diskless database

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bootPcs/action/import
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
multipart/form-data

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//bootPcs/action/import" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --form "file_type="\
    --form "db_file=@/tmp/phpMnnV4J" 

Game classes APIs

Get game classes lists

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/gameClasses
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//gameClasses" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Add game classes

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/gameClasses
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//gameClasses" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"class_name\": null
}"

Update game classes

PUT
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/gameClasses
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//gameClasses" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"class_name\": null,
    \"class_order\": null,
    \"class_name_old\": null
}"

Delete game classes

DELETE
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/gameClasses
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request DELETE \
    "https://api.icafecloud.com/api/v2/cafe//gameClasses" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"class_name\": \"culpa\"
}"

Product groups APIs

Get product group lists

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/productGroups
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//productGroups" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "items": [
            {
                "product_group_icafe_id": 7777,
                "product_group_id": -1,
                "product_parent_group_id": 97664172,
                "product_group_name": "Offers",
                "product_group_desc": "",
                "product_group_icon": null,
                "product_group_update": "2022-11-30 17:03:37",
                "product_group_payment_method": "{\"guest\": [\"cash\", \"credit_card\", \"balance\"], \"member\": [\"cash\", \"credit_card\", \"balance\"]}",
                "has_icon": 0
            }
        ]
    }
}

Add product group

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/productGroups
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//productGroups" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"product_group_name\": null
}"

Update product group

PUT
PATCH
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/productGroups/{id}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

id
integer
required

Product group ID.

Body Parameters

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//productGroups/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"product_group_name\": null
}"

Delete product group

DELETE
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/productGroups/{id}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

id
integer
required

Product group ID.

Example request:
curl --request DELETE \
    "https://api.icafecloud.com/api/v2/cafe//productGroups/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Offers APIs

Get offers details

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/offers/{productId}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

productId
integer
required

ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//offers/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Add offers

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/offers
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//offers" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"product_name\": null,
    \"product_icon\": \"asyzwszwtxpeqqi\"
}"

Update offers

PUT
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/offers/{productId}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

productId
integer
required

Product ID.

Body Parameters

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//offers/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"product_name\": null,
    \"product_icon\": \"asyzwszwtxpeqqi\"
}"

Delete offers

DELETE
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/offers/{productId}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

productId
integer
required

Product ID.

Example request:
curl --request DELETE \
    "https://api.icafecloud.com/api/v2/cafe//offers/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Check offers

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/offers/{productId}/check
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

productId
integer
required

Product ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//offers//check" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Members APIs

Get member details

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/{memberId}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

memberId
integer
required

Member ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//members/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "member": {
            "member_id": 57843940635,
            "member_icafe_id": 7777,
            "member_account": "test13",
            "member_balance": "138.00",
            "member_first_name": "asd",
            "member_last_name": "as",
            "member_birthday": "1990-10-10",
            "member_expire_time_local": "2028-01-01",
            "member_is_active": 1,
            "member_photo": "",
            "member_email": "",
            "member_telegram_username": "",
            "member_telegram_username_valid": 0,
            "member_phone": "",
            "member_id_card": "",
            "member_points": "137.00",
            "member_create": "2023-01-12T08:57:48.000000Z",
            "member_update": "2025-03-09T09:59:48.000000Z",
            "member_group_id": 143598,
            "member_balance_bonus": "94.00",
            "member_coin_balance": "-1.00",
            "member_sex": 0,
            "member_comments": "abcabc",
            "member_address": "",
            "member_company_id": 0,
            "member_loan": "0.00",
            "member_recent_played": null,
            "member_id_icafe_id": 578439406357777,
            "member_oauth_user_id": "0",
            "member_oauth_platform": "account",
            "member_balance_with_loan": "138.00",
            "member_group_name": "ab4"
        },
        "member_groups": [
            {
                "member_group_id": 143567,
                "member_group_name": "VIP7776"
            }
        ],
        "orders": [],
        "total_amount": 0,
        "currency": "$"
    }
}

Balance history

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/{memberId}/balanceHistory
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

memberId
integer
required

Member ID.

Query Parameters

page
integer

Page number (1 - n).

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//members//balanceHistory" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": []
}

Get member orders

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/{memberId}/orders
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

memberId
integer
required

Member ID.

Query Parameters

search_text
string
page
string
sort_name
string
sort
string
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//members//orders" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": []
}

checklist

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/{memberId}/checklist
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

memberId
string
required
Example:
culpa

Body Parameters

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//members/culpa/checklist" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"start\": \"2026-09-28T09:35:15\",
    \"end\": \"2026-09-28T09:35:15\",
    \"pc_name\": \"culpa\"
}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Add member

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/action/validateAccount
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//members/action/validateAccount" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"member_account\": null,
    \"member_password\": null,
    \"member_oauth_platform\": \"account\",
    \"payment_method_credit_card\": \"on\",
    \"member_balance\": 0,
    \"member_group_id\": 0,
    \"member_is_active\": 1
}"

Update member

PUT
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/{memberId}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

memberId
string
required
Example:
culpa

Body Parameters

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//members/culpa" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"member_group_id\": 0,
    \"member_is_active\": 1,
    \"member_oauth_platform\": \"account\"
}"

Verify member info

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/action/memberInfo
requires authentication

verify password, get member id from member name

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//members/action/memberInfo" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"member_account\": null
}"

Add guest account

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/action/addGuest
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//members/action/addGuest" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"member_expire_time_local\": null,
    \"member_balance\": 100.5,
    \"payment_method_credit_card\": \"on\"
}"

Topup

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/action/topup
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//members/action/topup" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"topup_ids\": null,
    \"topup_value\": null
}"

Add loan

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/action/loan
requires authentication

add loan to member

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//members/action/loan" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"loan_id\": null,
    \"loan_value\": null
}"

Get topup bonus

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/action/fetchBonus
requires authentication

get bonus from topup

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//members/action/fetchBonus" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \

Multiple update members

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/action/multiUpdate
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//members/action/multiUpdate" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"member_ids\": null,
    \"member_is_active\": 1
}"

Reset member password

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/action/resetPassword
requires authentication

Direct mode resets to the cafe's configured default_member_password (123456 unless customized)

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//members/action/resetPassword" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"member_ids\": null
}"

refresh member bonuse

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/action/refreshBonus
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa

Query Parameters

license
integer
required

License ID.

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe/culpa/members/action/refreshBonus?license=" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": []
}

Reset member game coins

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/action/resetGameCoin
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//members/action/resetGameCoin" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Reset member game coins

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/action/resetPoint
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//members/action/resetPoint" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Preview loyalty group recalculation

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/action/loyaltyRecalcPreview
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//members/action/loyaltyRecalcPreview" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Recalculate member groups by points

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/action/loyaltyRecalc
requires authentication

只升不降,与日常积分变化使用同一套规则。

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//members/action/loyaltyRecalc" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Multiple delete members

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/action/multiDelete
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//members/action/multiDelete" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"member_ids\": null
}"

Get member settings

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/action/memberSettings
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//members/action/memberSettings" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Export member to csv

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/action/export
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//members/action/export" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Get center player rank url

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/action/rankingUrl
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//members/action/rankingUrl" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Search member

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/action/suggestMembers
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

search_text
string
required

search text.

has_detail
integer

the result includes details or not.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//members/action/suggestMembers?search_text=" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Get member offer list

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/{memberId}/offers
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

memberId
integer
required

Member ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//members//offers" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Export csv template

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/action/exportTemplate
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//members/action/exportTemplate" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Import member from csv

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/action/import
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//members/action/import" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Import member by license name

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/action/importMembers
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//members/action/importMembers" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"license_name\": \"culpa\",
    \"license_password\": \"culpa\"
}"

Get member lists

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

search_text
string

Search text.

search_field
string

Search field.

sort_name
string

Sort field(member_account,member_balance,member_balance_bonus,member_group_name,member_group_id,member_first_name,member_last_name,member_expire_time_local,member_is_active,member_coin_balance,member_points,member_phone,member_loan,member_comments,member_center_name,member_birthday,member_icafe_id,member_create,member_update,member_oauth_platform,member_user_id).

sort
string

Sort direction ('desc' or 'asc').

page
integer

Page number (1 - n).

guest
integer

Search guest or not (0, 1).

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//members" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "license_using_billing": 1,
        "point_enable": 1,
        "members": [
            {
                "member_id": 57843940663,
                "member_icafe_id": 7777,
                "member_account": "eva-aa1",
                "member_balance": "0.00",
                "member_first_name": "eva",
                "member_last_name": "aal",
                "member_birthday": "2021-01-25",
                "member_expire_time_local": "2028-01-01",
                "member_is_active": 1,
                "member_photo": "",
                "member_email": "",
                "member_telegram_username": "",
                "member_telegram_username_valid": 0,
                "member_phone": "",
                "member_id_card": "",
                "member_points": "0.00",
                "member_create": "2024-11-25 06:56:57",
                "member_update": "2024-11-25 07:07:00",
                "member_group_id": 143578,
                "member_balance_bonus": "0.00",
                "member_coin_balance": "0.00",
                "member_sex": 0,
                "member_comments": "bgko111",
                "member_address": "",
                "member_company_id": 0,
                "member_loan": "0.00",
                "member_recent_played": null,
                "member_id_icafe_id": "578439406637777",
                "member_oauth_user_id": "0",
                "member_oauth_platform": "account",
                "member_create_local": "2024-11-25 20:56:57",
                "member_update_local": "2024-11-25 21:07:00",
                "member_is_expired": 0,
                "member_is_logined": 0,
                "offers": 0,
                "member_group_discount_rate": 0,
                "member_group_discount_pc_time": 0,
                "member_group_discount_offer": 0,
                "member_group_name": "VIP2",
                "left_time": "0h 0m",
                "is_owner": true,
                "member_center_name": "Local"
            }
        ],
        "paging_info": {
            "total_records": 3080,
            "pages": 62,
            "page": "1",
            "page_prev": 1,
            "page_next": 2,
            "page_start": 1,
            "page_end": 6,
            "start_from": "0",
            "end_from": "50"
        },
        "member_remind_count": 0
    }
}

Get member init data

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/action/memberInitData
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//members/action/memberInitData" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Init member referrla code

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/initReferCode
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//initReferCode" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"member_account\": null
}"

Customer feedback

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/customerFeedback
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//customerFeedback" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pc_name\": null
}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {}
}

Member balance history

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/memberBalanceHistory
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//memberBalanceHistory" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": []
}

Member checklist

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/memberChecklist
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//memberChecklist" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Get real time balance

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/getRealTimeBalance
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe/culpa/getRealTimeBalance" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
  "code": 200,
  "message": "success",
  "data": {
     "pc_cost": "1.00",
     "member_balance": "138.00",
     "member_balance_bonus": "94.00",
     "member_coin_balance": "-1.00",
  }
}

Get the member's available offers for a specific PC.

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/memberAvailableOffers
requires authentication

Used to initialise the start-session page and to refresh available_offers after purchasing an offer. Results are sorted by product_priority descending and include is_available_now based on time/weekday restrictions.

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

The cafe ID.

Example:
12

Query Parameters

pc_name
string
required

The PC name, used to filter offers incompatible with the PC's group.

Example:
PC01
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe/12/memberAvailableOffers?pc_name=PC01" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "available_offers": [
            {
                "member_offer_id": 1,
                "member_offer_offer_id": 2,
                "member_offer_left_seconds": 3600,
                "product_name": "1 Hour Pass",
                "product_mins": 60,
                "product_color": "#FF0000",
                "product_priority": 10,
                "is_available_now": true
            }
        ]
    }
}

dengi pay result - https://sandbox.dengi.kg/qrpay/result-url

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/dengiResult
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe/culpa/dengiResult" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

mercadoPago pay result

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/mercadopago/result
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe/culpa/mercadopago/result" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Manual pay confirm api

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/manual/pay
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
string
required
Example:
culpa

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe/culpa/manual/pay" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"order_no\": \"culpa\"
}"

Tinkoff payment notification callback ref https://www.tbank.ru/kassa/dev/payments/#tag/Uvedomleniya-ob-operaciyah/Po-elektronnoj-pochte ref https://www.tbank.ru/kassa/dev/payments/#tag/Standartnyj-platezh/operation/GetState

GET
POST
PUT
PATCH
DELETE
OPTIONS
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/tinkoff/notification
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//tinkoff/notification" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

finik pay result - https://quip.com/dTaoApuzXEn1

GET
POST
PUT
PATCH
DELETE
OPTIONS
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/finik/callback
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe/culpa/finik/callback" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    x-ratelimit-limit
                                                            : 200
                                                                                                                    x-ratelimit-remaining
                                                            : 192
                                                                                                                    x-ratelimit-reset
                                                            : 1790588176
                                                                                                                    retry-after
                                                            : 57
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 0,
    "message": "Undefined array key \"order_amount\""
}

Reports APIs

Report data

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/reports/reportData
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

date_start
string
required

Start date.

date_end
string
required

End date.

time_start
string
required

Start time(00:00).

time_end
string
required

End time(00:00).

log_staff_name
string

Staff name.

member_group_id
integer

Member group ID.

pc_group_id
integer

PC group ID.

data_source
string

Data source(recent,history).

Example:
recent
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//reports/reportData?date_start=&date_end=&time_start=&time_end=&data_source=recent" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Report chart

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/reports/reportChart
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

date_start
string
required

Start date.

date_end
string
required

End date.

time_start
string
required
Example:
culpa
time_end
string
required
Example:
culpa
log_staff_name
string

Staff name.

Example:
all
member_group_id
integer

Member group ID.

pc_group_id
integer

PC group ID.

chart_type
string

Chart type(income,totup,sale,product,offer,booking).

Example:
income
data_source
string

Data source(recent,history).

Example:
recent
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//reports/reportChart?date_start=&date_end=&time_start=culpa&time_end=culpa&log_staff_name=all&chart_type=income&data_source=recent" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "series": [
            {
                "name": "Drink",
                "data": [
                    0,
                    0,
                    29
                ]
            }
        ],
        "categories": [
            "2025-03-01",
            "2025-03-02",
            "2025-03-03"
        ],
        "report": {
            "staff": "All",
            "report_start": "2025-03-01 00:00:00",
            "report_end": "2025-03-26 23:59:00"
        }
    }
}

Shift list

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/reports/shiftList
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

date_start
string
required

Start date.

date_end
string
required

End date.

time_start
string
required

Start time.

time_end
string
required

End time.

shift_staff_name
string
required

Staff name.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//reports/shiftList?date_start=&date_end=&time_start=&time_end=&shift_staff_name=" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Shift detail

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/reports/shiftDetail/{shiftId}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

shiftId
string
required
Example:
culpa
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//reports/shiftDetail/culpa" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Income comparison report

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/reports/reportComparison
requires authentication

收入报表"经营对比":在不改变既有财务口径的前提下,返回当前期 + 对比期 + 预计算差额/环比。 汇总口径的唯一来源仍是 reportData()——本方法内部对两个周期各调用一次 reportData(scope=summary), 只算 Total 卡片所需的 7 项汇总、跳过排行/明细/游戏/问卷等重负载(方案 §6.4),绝不复制财务公式。 对比期为历史数据,额外缓存 5 分钟,避免重复打远程归档库。

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

comparison_mode
string

none|previous_period|previous_week|previous_month|custom.

Example:
previous_month

Body Parameters

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//reports/reportComparison?comparison_mode=previous_month" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"date_start\": \"culpa\",
    \"date_end\": \"culpa\",
    \"time_start\": \"culpa\",
    \"time_end\": \"culpa\"
}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Customer analysis

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/reports/customerAnalysis
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

date_start
string
required
Example:
culpa
date_end
string
required
Example:
culpa
time_start
string
required
Example:
culpa
time_end
string
required
Example:
culpa
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//reports/customerAnalysis?date_start=culpa&date_end=culpa&time_start=culpa&time_end=culpa" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Customer consumption export

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/reports/customerConsumptionExport
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

date_start
string
required
Example:
culpa
date_end
string
required
Example:
culpa
time_start
string
required
Example:
culpa
time_end
string
required
Example:
culpa
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//reports/customerConsumptionExport?date_start=culpa&date_end=culpa&time_start=culpa&time_end=culpa" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Staff shift report

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/reports/reportStaffShift
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

date_start
string
required

Start date.

date_end
string
required

End date.

time_start
string
required

Start time.

time_end
string
required

End time.

Body Parameters

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//reports/reportStaffShift?date_start=&date_end=&time_start=&time_end=" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"date_start\": \"culpa\",
    \"date_end\": \"culpa\",
    \"time_start\": \"culpa\",
    \"time_end\": \"culpa\"
}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

GET api/v2/cafe/{cafeId}/reports/reportTransactions

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/reports/reportTransactions
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

date_start
string
required

Start date.

date_end
string
required

End date.

time_start
string
required

Start time.

time_end
string
required

End time.

icafe_id
integer

optional Center ID to export.

Example:
123
operation_type
string

optional Operation type(all,sales,refunds).

Example:
all
data_source
string

optional Data source(recent,history).

Example:
recent

Body Parameters

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//reports/reportTransactions?date_start=&date_end=&time_start=&time_end=&icafe_id=123&operation_type=all&data_source=recent" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"date_start\": \"culpa\",
    \"date_end\": \"culpa\",
    \"time_start\": \"culpa\",
    \"time_end\": \"culpa\",
    \"icafe_id\": 12,
    \"operation_type\": \"all\",
    \"data_source\": \"history\"
}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Offer usage report

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/reports/reportOfferUsage
requires authentication

Returns a list of offer purchase records within the specified date range.

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

date_start
string
required

Start date.

date_end
string
required

End date.

time_start
string
required

Start time.

time_end
string
required

End time.

data_source
string

Data source (recent, history).

Example:
recent
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//reports/reportOfferUsage?date_start=&date_end=&time_start=&time_end=&data_source=recent" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "filename": "Offer Usage-2024-04-11 GMT+08:00.xlsx",
    "header": [
        "Member account",
        "Offer name",
        "Purchase time",
        "Price",
        "Duration (mins)"
    ],
    "rows": [
        [
            "member001",
            "5 Hours Package",
            "2024-04-11 14:30:00",
            "5.00",
            300
        ]
    ]
}

Member attendance by day

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/reports/reportAttendanceByDay
requires authentication

Returns daily attendance statistics

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

days
integer

Number of days to look back (default: 7).

Example:
7
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//reports/reportAttendanceByDay?days=7" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "data": [
        {
            "log_date": "2024-01-07",
            "total_count": 52,
            "member_count": 42,
            "guest_count": 10,
            "new_member_count": 3
        }
    ]
}

Goods movement report export

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/reports/reportProductMovement
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

date_start
string
required

Start date.

date_end
string
required

End date.

time_start
string
required

Start time.

time_end
string
required

End time.

product_group_id
string

Product group ID.

Example:
all
staff_login
string

staff.

Example:
all
data_source
string

Data source(recent,history).

Example:
recent

Body Parameters

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//reports/reportProductMovement?date_start=&date_end=&time_start=&time_end=&product_group_id=all&staff_login=all&data_source=recent" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"date_start\": \"culpa\",
    \"date_end\": \"culpa\",
    \"time_start\": \"culpa\",
    \"time_end\": \"culpa\"
}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Profit with royalty report

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/reports/reportProfitWithRoyalty
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//reports/reportProfitWithRoyalty" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"date_start\": \"culpa\",
    \"date_end\": \"culpa\",
    \"time_start\": \"culpa\",
    \"time_end\": \"culpa\"
}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Refunds report

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/reports/reportRefunds
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

date_start
string
required

Start date.

date_end
string
required

End date.

time_start
string
required

Start time.

time_end
string
required

End time.

data_source
string

Data source: 'recent' (local DB) or 'history' (log server).

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//reports/reportRefunds?date_start=&date_end=&time_start=&time_end=" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Canceled Bookings Report Export

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/reports/reportCanceledBookings
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

date_start
string
required

Start date (local).

date_end
string
required

End date (local).

data_source
string

Data source: recent or history.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//reports/reportCanceledBookings?date_start=&date_end=" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Created users report

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/reports/reportCreatedUsers
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//reports/reportCreatedUsers" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"date_start\": \"culpa\",
    \"date_end\": \"culpa\",
    \"time_start\": \"culpa\",
    \"time_end\": \"culpa\"
}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Shop items stock report

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/reports/reportShopItemsStock
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//reports/reportShopItemsStock" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Created bookings report

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/reports/reportCreatedBookings
requires authentication

Returns a list of bookings within the specified date range.

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

date_start
string
required

Start date.

date_end
string
required

End date.

time_start
string
required

Start time.

time_end
string
required

End time.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//reports/reportCreatedBookings?date_start=&date_end=&time_start=&time_end=" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
  "filename": "Created Bookings-2026-04-14 GMT+08:00.xlsx",
  "header": ["Center name", "Booking time", "PC name", "Login member account", "Booking status"],
  "rows": [
    ["[dev]Test Cafe(008612345678)", "2026-04-14 10:00:00 - 2026-04-14 11:00:00", "PC-01", "member001", "Pending Use"]
  ]
}

[Claude] Implemented by Claude (MiniMax-M2.5) on 2026-04-14

Cash deposit/withdrawal report

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/reports/reportCashDepositWithdrawal
requires authentication

Groups records by shift periods from table_shift_history. Each period outputs one row: Deposit (positive ONEXPENSE/ADDFUNDS log_money), Withdraw (negative ONEXPENSE/ADDFUNDS log_money, kept as negative), Income (SUM of log_money for all non-ONEXPENSE/ADDFUNDS events = 现金纯收入,含退款抵减).

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

date_start
string
required

Start date (YYYY-MM-DD).

date_end
string
required

End date (YYYY-MM-DD).

time_start
string
required

Start time (HH:mm).

time_end
string
required

End time (HH:mm).

log_staff_name
string

optional Filter by staff name (applies to shifts and ONEXPENSE logs).

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//reports/reportCashDepositWithdrawal?date_start=&date_end=&time_start=&time_end=" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Access code usage report

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/reports/reportAccessCodeUsage
requires authentication

Returns a list of guest accounts (G_ prefix) created within the specified date range, including whether each access code has been used (i.e. a billing session was started) and whether the account has expired. Only available when access_code_login is enabled.

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

date_start
string
required

Start date (YYYY-MM-DD).

date_end
string
required

End date (YYYY-MM-DD).

time_start
string
required

Start time (HH:mm).

time_end
string
required

End time (HH:mm).

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//reports/reportAccessCodeUsage?date_start=&date_end=&time_start=&time_end=" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "filename": "Access code usage-2026-04-24 GMT+08:00.xlsx",
    "header": [
        "Access code",
        "Created time",
        "Balance",
        "Used",
        "Expired"
    ],
    "rows": [
        [
            "ABCD",
            "2026-04-24 10:00:00",
            10,
            "Yes",
            "No"
        ],
        [
            "EFGH",
            "2026-04-24 11:30:00",
            0,
            "No",
            "Yes"
        ]
    ]
}
{
    "code": 400,
    "message": "Access code login is not enabled"
}

Used Bookings Report Export

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/reports/reportUsedBooking
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

date_start
string
required

Start date (local).

date_end
string
required

End date (local).

time_start
string
required

Start time.

time_end
string
required

End time.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//reports/reportUsedBooking?date_start=&date_end=&time_start=&time_end=" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Member attendance and occupancy

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/reports/reportAttendanceAndOccupancy
requires authentication

Returns attendance and occupancy statistics

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//reports/reportAttendanceAndOccupancy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Top up records by day

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/reports/reportTopupOperations
requires authentication

Returns top up statistics

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//reports/reportTopupOperations" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Member topup totals

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/reports/reportMemberTopupTotals
requires authentication

Returns each member's total topup amount within the period, sorted from high to low.

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

min_amount
number

Only keep members whose total topup reaches this amount.

Example:
0
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//reports/reportMemberTopupTotals?min_amount=0" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

General occupancy report

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/reports/reportGeneralOccupancy
requires authentication

Returns one row per session checkout within the specified date range, including session timing, member info, PC name, amount charged, tax, offer used, and promo code applied.

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

date_start
string
required

Start date.

date_end
string
required

End date.

time_start
string
required

Start time.

time_end
string
required

End time.

log_staff_name
string

Filter by staff name. Leave empty or pass "all" to include all staff.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//reports/reportGeneralOccupancy?date_start=&date_end=&time_start=&time_end=" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "filename": "General Occupancy-2024-04-11 00:00:00-2024-04-11 23:59:59.xlsx",
    "header": [
        "Cafe name",
        "Staff name",
        "Session start date",
        "Session end date",
        "Session duration",
        "Member account",
        "Member group",
        "Phone number",
        "PC name",
        "Total amount",
        "Tax amount",
        "Tax name",
        "Offer",
        "Promo code"
    ],
    "rows": [
        [
            "My Cafe",
            "admin",
            "2024-04-11 10:00:00",
            "2024-04-11 12:00:00",
            "02:00:00",
            "member001",
            "Default",
            "+1234567890",
            "PC01",
            5,
            0.45,
            "VAT",
            "",
            ""
        ]
    ]
}

Prepare before report

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/reports/prepareBeforeReport
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//reports/prepareBeforeReport" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"date_start\": \"culpa\",
    \"date_end\": \"culpa\",
    \"time_start\": \"culpa\",
    \"time_end\": \"culpa\"
}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

App dashboard realtime summary

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/reports/appDashboard
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//reports/appDashboard" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Billiard APIs

Add/edit billiard table

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcs/action/saveAreaLayout
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//pcs/action/saveAreaLayout" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"area_name\": null
}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": true
}

Delete billiard table

DELETE
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcs/action/removeAreaLayout
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request DELETE \
    "https://api.icafecloud.com/api/v2/cafe//pcs/action/removeAreaLayout" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"area_name\": null
}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": true
}

Pool licenses APIs

Update pool license

PUT
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pools/{poolId}/licenses
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

poolId
integer
required

Pool ID.

Body Parameters

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//pools//licenses" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"license_account\": null,
    \"license_password\": null,
    \"license_type\": \"culpa\",
    \"game_ids\": \"1,2,3\",
    \"pc_group_ids\": \"1,2,3\",
    \"member_group_ids\": \"1,2,3\"
}"

Delete pool license

DELETE
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pools/{poolId}/licenses
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

poolId
integer
required

Pool ID.

Body Parameters

Example request:
curl --request DELETE \
    "https://api.icafecloud.com/api/v2/cafe//pools//licenses" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"license_account\": null
}"

Get pool license info

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pools/{poolId}/licenses/action/licenseInfo
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

poolId
integer
required

Pool ID.

Query Parameters

account
string
required

Account.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//pools//licenses/action/licenseInfo?account=" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Unlock

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pools/{poolId}/licenses/action/unlock
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

poolId
integer
required

Pool ID.

Query Parameters

license_account
string
required

Account.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//pools//licenses/action/unlock?license_account=" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Get pool license lists

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/poolLicenses
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//poolLicenses" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Add pool license

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/poolLicenses
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//poolLicenses" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"license_account\": null,
    \"license_password\": null,
    \"game_ids\": \"1,2,3\",
    \"pc_group_ids\": \"1,2,3\",
    \"member_group_ids\": \"1,2,3\"
}"

license APIs

Get license info

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/license/info
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//license/info" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Update license info

PUT
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/license/info
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//license/info" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"license_email\": null,
    \"license_contact\": null,
    \"license_address\": null,
    \"license_latlng\": null,
    \"license_country\": null
}"

Activate serial number

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/license/active
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//license/active" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Update license app profile info

PUT
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/license/appInfo
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//license/appInfo" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"license_address\": null,
    \"license_latlng\": null,
    \"license_country\": null
}"

Staffs APIs

Get staff lists

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/staffs
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//staffs" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Add staff

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/staffs
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//staffs" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"staff_name\": null,
    \"staff_password\": null,
    \"staff_role\": null
}"

Get staff details

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/staffs/{id}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

id
integer
required

ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//staffs/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Update staff

PUT
PATCH
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/staffs/{id}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

id
integer
required

ID.

Body Parameters

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//staffs/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"staff_name\": null,
    \"staff_password\": null,
    \"staff_role\": null
}"

Delete staff

DELETE
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/staffs/{id}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

id
integer
required

ID.

Example request:
curl --request DELETE \
    "https://api.icafecloud.com/api/v2/cafe//staffs/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Start shift

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/staffs/action/startShift
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//staffs/action/startShift" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"staff_shift_cash_start\": null,
    \"staff_name\": null
}"

End shift

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/staffs/action/endShift
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//staffs/action/endShift" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"staff_name\": null
}"

Check shift

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/staffs/action/checkShift
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//staffs/action/checkShift" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Get current staff's app account binding status

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/staffs/action/appBinding
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//staffs/action/appBinding" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Unbind the current staff's app account

DELETE
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/staffs/action/appBinding
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request DELETE \
    "https://api.icafecloud.com/api/v2/cafe//staffs/action/appBinding" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Get kitchen staff list(仅 id/staff_name,供商品编辑页分配 kitchen 打印路由用,无角色限制)

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/staffs/action/kitchenStaffList
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//staffs/action/kitchenStaffList" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Shift X-report

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/staffs/action/shiftXReport
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//staffs/action/shiftXReport" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Get current shift cash in hand (lightweight)

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/staffs/action/shiftCashInHand
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//staffs/action/shiftCashInHand" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Last shift

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/staffs/action/lastShiftDetail
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//staffs/action/lastShiftDetail" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Game logs APIs

Get game log lists

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/gameLogs
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

page
integer

Page.

Example:
1
search
string

Keyword.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//gameLogs?page=1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Export game log

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/gameLogs/action/export
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

search
string

Keyword.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//gameLogs/action/export" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Booking APIs

Booking lists

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bookings
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

pc_name
string

PC name.

date
string

Must be a valid date.

Example:
2026-09-28T09:35:17
pending_queue_only
integer

Must be between 0 and 1.

Example:
1
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//bookings?date=2026-09-28T09%3A35%3A17&pending_queue_only=1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Add booking

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bookings
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//bookings" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pc_name\": null,
    \"member_account\": null,
    \"start_date\": null,
    \"start_time\": \"01:01:01\",
    \"mins\": 0,
    \"guest_booking\": 0
}"

Delete booking

DELETE
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bookings
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request DELETE \
    "https://api.icafecloud.com/api/v2/cafe//bookings" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pc_name\": null,
    \"member_offer_id\": null
}"

Initial booking session

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bookings/action/initBookingSession
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

pc_name
string
required

PC name.

member_account
string
required

Member account.

start_date
string
required

Start date.

start_time
string
required

Start time.

mins
integer
required

Min.

Example:
0
comment
string

Min.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//bookings/action/initBookingSession?pc_name=&member_account=&start_date=&start_time=&mins=0" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Calculate amount

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/calculate/amount
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

pc_name
string
required

PC name.

mins
integer

Mins.

member_account
string

Member account.

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//calculate/amount?pc_name=" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Calculate time

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/calculate/time
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

pc_name
string
required

PC name.

topup_amount
string
required
Example:
culpa
member_account
string

Member account.

mins
integer

Mins.

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//calculate/time?pc_name=&topup_amount=culpa" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Add batch bookings

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bookings/batch
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//bookings/batch" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"bookings\": null
}"

Update batch bookings - delete existing batch and create new bookings

PUT
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bookings/batch
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//bookings/batch" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"delete_bookings\": null,
    \"create_bookings\": null
}"

Batch delete bookings

DELETE
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bookings/batch
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request DELETE \
    "https://api.icafecloud.com/api/v2/cafe//bookings/batch" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"bookings\": null
}"

Booking with offer for member api

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bookings/action/bookingWithOffer
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//bookings/action/bookingWithOffer" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"member_id\": null,
    \"offer_id\": null,
    \"pc_name\": null,
    \"start_date\": null,
    \"start_time\": \"01:01:01\",
    \"mins\": 120
}"

Auth APIs

Reset system password last update time for admin 1. This API is only for admin user 2. This API only reset the system password last update time very 90 days

PUT
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/resetPasswrodLastUpdateTime
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa

Query Parameters

type
string
Example:
culpa
Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe/culpa/resetPasswrodLastUpdateTime?type=culpa" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Pause APIs

Add pause times

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pauseTimes
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//pauseTimes" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Delete pause times

DELETE
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pauseTimes
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request DELETE \
    "https://api.icafecloud.com/api/v2/cafe//pauseTimes" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Get pause times list

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pauseTimes
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//pauseTimes" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Orders APIs

Add order

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/orders
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
string
required

Cafe ID.

Body Parameters

Response Fields

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//orders" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"product_id\": null,
    \"order_item_qty\": 1,
    \"order_payment_method\": 0,
    \"order_status\": 2
}"
Example response:
{
  "code": 200,
  "message": "success",
  "data": {
    "order_no": 557,
    "member_id": 0,
    ]
  }
}

Get order detail

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/orders/{id}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

id
integer
required

Order NO.

Query Parameters

data_source
string

Data source(options:recent,history).

Example:
recent

Response Fields

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//orders/?data_source=recent" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
  "code": 200,
  "message": "success",
  "data": {
    "license_printer": "",
    "items": [
      {
        "order_icafe_id": 7777,
        "order_item_id": 80448449811,
        "order_item_qty": 1,
        "order_item_qty_balance": 85,
        "order_product_id": 571018237,
        "order_product_cost": "1.0000000000",
        "order_product_price": "5.2500000000",
        "order_discount_rate": 0,
        "order_tax": "0.2500000000",
        "order_money": 5.25,
        "order_pc": "",
        "order_status": 2,
        "order_create_time": "2025-03-16T13:36:25.000000Z",
        "order_no": 557,
        "order_payment_method": 0,
        "order_member_id": 0,
        "order_staff_id": 186604904,
        "order_print_times": 0,
        "order_product_code": "",
        "order_create_time_local": "2025-03-17 03:36:25",
        "staff_name": "admin",
        "product_icafe_id": 7777,
        "product_id": 571018237,
        "product_name": "Milk",
        "product_qty": 85,
        "product_cost": "1.0000000000",
        "product_price": "5.0000000000",
        "product_tax_id": 1,
        "product_coin_price": 0,
        "product_icon": null,
        "product_unlimited": 0,
        "product_enable_client": 1,
        "product_group_id": 97664229,
        "product_barcode": "132312",
        "product_enable_code": 0,
        "product_image": "",
        "product_update_time": "2025-03-16T13:36:25.000000Z",
        "product_is_promoted": 0,
        "product_enable_discount": 1,
        "product_combo": null,
        "product_show_weekday": "7|1|2|3|4|5|6",
        "product_show_time": "00:00-24:00"
      }
    ],
    "member": null,
    "cancel_enable": 1,
  }
}

Update order

PUT
PATCH
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/orders/{id}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
id
string
required

The ID of the order.

Example:
culpa
Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe/culpa/orders/culpa" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Cancel Order

DELETE
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/orders/{id}
requires authentication

When the member uses the balance to place an order on the PC side

  1. If order have OFFER + product, balance immediately deducted, the OFFER takes effect immediately, but product inventory does not decrease. order status is PENDING.
  2. Employees if confirm this PENDING ORDER, reduce the stock, the status changes to DONE
  3. If the employee cancel this PENDING ORDER, the balance is returned, OFFER is deleted, the status is changed to CANCELLED

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

id
integer
required

Order ID.

Body Parameters

Example request:
curl --request DELETE \
    "https://api.icafecloud.com/api/v2/cafe//orders/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"order_item_ids\": \"1,2\"
}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "qty_changed_products": [
            {
                "id": "p-571018237",
                "qty": 86
            }
        ],
        "shop_badge": 1
    }
}

Get order information by Member Offer ID

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/orders/action/orderInfoByMemberOfferId
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

memberOfferId
integer
required

Member Offer ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//orders/action/orderInfoByMemberOfferId?memberOfferId=" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "order_no": 1,
        "member_id": 1
    }
}

check QRIS payment status by api

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/orders/action/checkQRISPayment
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//orders/action/checkQRISPayment" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{}

Export orders, Limite 10,000 rows.

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/orders/action/export
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

search_text
string

Filter by order number, member account, PC name, or "guest" for guest orders.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//orders/action/export" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
file Download a CSV file with columns: ORDER_NO, ORDER_PC, ORDER_TIME, ORDER_DISCOUNT_RATE, ORDER_STAFF_NAME, ORDER_MONEY, ORDER_STATUS, MEMBER_ACCOUNT
{
    "code": 400,
    "message": "Too frequent"
}

Add print count

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/orders/{orderNo}/addOrderPrintTimes
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

orderNo
integer
required

Order No.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//orders//addOrderPrintTimes" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success"
}

Update kkm order

PUT
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/orders/{orderNo}/updateKkmOrder
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

orderNo
integer
required

Order No.

Body Parameters

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//orders//updateKkmOrder" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
Example response:
{
    "code": 200,
    "message": "success"
}

Offer used status

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/orders/{orderNo}/offerUsedStatus
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

orderNo
integer
required

Order No.

Query Parameters

order_item_ids
string

Order items IDs.

Example:
1,2

Response Fields

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//orders//offerUsedStatus?order_item_ids=1%2C2" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": [
        {
            "member_offer_id": 2745295597,
            "member_offer_icafe_id": 7777,
            "member_offer_member_id": 57843940337,
            "member_offer_offer_id": 23641201,
            "member_offer_left_seconds": 600,
            "member_offer_create_time": "2025-03-13 03:20:36",
            "member_offer_first_used_time": null,
            "member_offer_order_item": 80448447730,
            "member_offer_money": "0.00",
            "member_offer_allow_refund": 1,
            "member_offer_is_used": 0
        }
    ]
}

Confirm order

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/orders/{orderNo}/confirm
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

orderNo
integer
required

Order No.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//orders//confirm" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"order_product_code\": []
}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "qty_changed_products": [
            {
                "id": "p-571018237",
                "qty": 86
            }
        ],
        "shop_badge": 1
    }
}

Search member

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/orders/action/shopMemberList
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

search_text
integer

Search Text.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//orders/action/shopMemberList" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": [
        {
            "member_account": "test",
            "member_display": "test",
            "member_id": 57843938397,
            "member_icafe_id": 7777,
            "member_group_id": 143579,
            "member_group_discount_rate": 0,
            "member_group_discount_offer": 0,
            "member_group_discount_pc_time": 0
        }
    ]
}

Get member discount rate

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/orders/action/shopMemberGroupDiscountRate
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

member_id
integer
required

Member ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//orders/action/shopMemberGroupDiscountRate?member_id=" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "member_group_discount_rate": 0,
        "member_group_discount_offer": 0,
        "member_group_discount_pc_time": 0
    }
}

Get order lists

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/orders
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

status
string
search_text
string

Search keyword.

page
integer

Page number.

Example:
1
sort_name
string

Sort name.

Example:
order_no
sort
string

Sort(options:asc,desc).

Example:
desc
data_source
string

Data source(options:recent,history).

Example:
recent
query_source
string

Query source(options:end_shift).

Response Fields

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//orders?page=1&sort_name=order_no&sort=desc&data_source=recent" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "items": [
            {
                "order_no": 1633,
                "order_create_time_local": "2025-03-16 23:32:23",
                "order_discount_rate": 0,
                "order_money": "26.25",
                "order_status": 2,
                "order_staff_id": 186605025,
                "order_member_id": 57843942663,
                "order_product_ids": "23641357,571018271,571018269,571018273",
                "staff_name": "",
                "member_account": ""
            }
        ],
        "paging_info": {
            "total_records": 370,
            "pages": 25,
            "page": "1",
            "page_prev": 1,
            "page_next": 2,
            "page_start": 1,
            "page_end": 6,
            "start_from": "0",
            "end_from": "15"
        }
    }
}

Shop initialization data

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/orders/action/shopInitData
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//orders/action/shopInitData" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "product_group_list": [
            {
                "product_group_id": -1,
                "product_group_name": "Offers",
                "product_parent_group_id": 97664172
            }
        ],
        "product_list": [
            {
                "product_id": "p-571018193",
                "product_name": "BBBB",
                "product_qty": 0,
                "product_price": "100.0000000000",
                "product_tax_id": 3,
                "product_unlimited": 1,
                "sort_qty": 1,
                "product_group_id": 2828443,
                "product_barcode": "",
                "product_image": null,
                "product_pc_groups": "[\"0\"]",
                "product_member_groups": "[\"0\"]",
                "product_show_weekday": "",
                "product_show_time": "",
                "product_enable_code": 0,
                "product_enable_discount": 1,
                "product_is_offer": 0,
                "product_parent_group_id": 0,
                "product_group_name": "Default"
            }
        ],
        "currency": "$",
        "payment_method_cash": 1,
        "payment_method_credit_card": 1,
        "payment_method_balance": true,
        "cafe_name": "Youngzsoft Test Cafe",
        "license_printer": ""
    }
}

Product list

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/orders/action/productList
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//orders/action/productList" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "product_group_list": [
            {
                "product_group_id": -1,
                "product_group_name": "Offers",
                "product_parent_group_id": 97664172
            }
        ],
        "product_list": [
            {
                "product_id": "p-571018193",
                "product_name": "BBBB",
                "product_qty": 0,
                "product_price": "100.0000000000",
                "product_tax_id": 3,
                "product_unlimited": 1,
                "sort_qty": 1,
                "product_group_id": 2828443,
                "product_barcode": "",
                "product_pc_groups": "[\"0\"]",
                "product_member_groups": "[\"0\"]",
                "product_show_weekday": "",
                "product_show_time": "",
                "product_enable_code": 0,
                "product_enable_discount": 1,
                "product_is_offer": 0,
                "product_parent_group_id": 0,
                "product_group_name": "Default"
            }
        ]
    }
}

Pay order

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/payOrder
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//payOrder" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"order_no\": \"culpa\"
}"

Submit order

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/cancelMemberOrder
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//cancelMemberOrder" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "pay_method": "3",
        "order_no": "1001"
    }
}

Start the QR payment for the new member package (self-service registration)

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/newMemberOfferPay
requires authentication

顾客在客户端 / Member Portal / Kiosk 点 Register 时调用:建一张待付的新会员套餐单并出码。 此时顾客还没填任何资料,订单的 order_member_id 先挂 Billing::MEMBER_ID_PENDING_REGISTER, 等他付完款、填完表、注册成功,再由 Billing::claimPaidNewMemberOffer() 回填真实会员 id。

本端点没有 auth——client 和 kiosk 都拿不到 token,portal 的一次性 guest token 要留给 后面真正提交表单那一步。限流靠路由上的 throttle + createNewMemberOfferQrOrder 里的熔断。

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//newMemberOfferPay" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "order_no": 1234,
        "claim_token": "9f86d081884c7d65",
        "offer_name": "Hour 1",
        "offer_amount": "35.00",
        "offer_currency": "USD",
        "result": 1,
        "type": "manual",
        "url": ""
    }
}

Prices APIs

Get price lists

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/prices
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//prices" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Add price

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/prices
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//prices" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"price_name\": null,
    \"price_round\": null,
    \"price_type\": null
}"

Get price details

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/prices/{id}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

id
integer
required

Price ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//prices/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Update price

PUT
PATCH
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/prices/{id}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

id
string
required

The ID of the price.

Example:
culpa

Body Parameters

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//prices/culpa" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"price_name\": null,
    \"price_round\": null,
    \"price_type\": null
}"

Delete price

DELETE
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/prices/{id}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

id
integer
required

Price ID.

Example request:
curl --request DELETE \
    "https://api.icafecloud.com/api/v2/cafe//prices/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Get PC group lists

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pricePcGroups
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//pricePcGroups" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Get member group lists

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/priceMemberGroups
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//priceMemberGroups" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Boot images APIs

Add boot image

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bootImages
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//bootImages" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"image_name\": \"Windows 11\",
    \"image_path\": null
}"

Get boot image details

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bootImages/{id}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

id
string
required

The ID of the bootImage.

Example:
culpa
imageId
integer
required

Image ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//bootImages/culpa" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "info": {
            "image_id": 1101,
            "image_icafe_id": 7777,
            "image_name": "WIN7",
            "image_path": "U:\\VMs\\SIWIN7X64PRO\\SIWIN7X64PRO.VHD",
            "image_image_in_mount": 0,
            "image_image_mount_physicaldrive_number": "",
            "image_image_mount_letter": "",
            "image_size_g": "0.00",
            "image_pnp": null
        }
    }
}

Update boot image

PUT
PATCH
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bootImages/{id}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

id
string
required

The ID of the bootImage.

Example:
culpa
imageId
integer
required

Image ID.

Body Parameters

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//bootImages/culpa" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"image_name\": \"Windows 11\",
    \"image_path\": null
}"

Delete boot image

DELETE
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bootImages/{id}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

id
string
required

The ID of the bootImage.

Example:
culpa
imageId
integer
required

Image ID.

Example request:
curl --request DELETE \
    "https://api.icafecloud.com/api/v2/cafe//bootImages/culpa" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Disk recovery init

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bootImages/{imageId}/diskRecoveryInit
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

imageId
integer
required

Image ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//bootImages//diskRecoveryInit" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Get Boot image lists

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bootImages
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//bootImages" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
  "code": 200,
  "message": "success",
  "data": [
    {
      "image_id": 1103,
      "image_icafe_id": 7777,
      "image_name": "Win7",
      "image_path": "U:\\VMs\\SIWIN7X64PRO\\SIWIN7X64PRO.VHD",,
      "image_image_in_mount": 0,
      "image_image_mount_physicaldrive_number": "",
      "image_image_mount_letter": "",
      "image_size_g": "0.00",
      "image_pnp": null,
      "has_super": 0,
      "last_update_time": null
    }
  ]
}

Boot parameters APIs

Add boot parameter

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bootParams
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

xml_file
string

file required XML file(max:2048).

ini_file
string

file required Ini file(max:2048).

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//bootParams" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"xml_file\": \"pasyzwszwtxpeqq\",
    \"ini_file\": \"ikymwkiinfowtzm\"
}"

Update boot parameter

PUT
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bootParams
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//bootParams" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"startiscsi\": null,
    \"iscsiport\": null
}"

Update DHCP

PUT
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bootParams/action/updateDhcp
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//bootParams/action/updateDhcp" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"starttftp\": null,
    \"startproxydhcp\": null,
    \"proxydhcpport\": null
}"

Get boot parameter list

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bootParams
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//bootParams" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Event APIs

Get event lists

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/events
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//events" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Add event

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/events
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//events" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"event_name\": null,
    \"event_game_code\": null,
    \"event_start_date_utc\": null,
    \"event_start_time_utc\": null,
    \"event_end_date_utc\": null,
    \"event_end_time_utc\": null,
    \"event_top_winners\": null
}"

Get event details

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/events/{id}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

id
string
required

Id.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//events/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Updated event

PUT
PATCH
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/events/{id}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

id
string
required

Event ID.

Body Parameters

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//events/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"event_name\": null,
    \"event_game_code\": null,
    \"event_start_date_utc\": null,
    \"event_start_time_utc\": null,
    \"event_end_date_utc\": null,
    \"event_end_time_utc\": null,
    \"event_top_winners\": null
}"

Delete event

DELETE
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/events/{id}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

id
string
required

Event ID.

Example request:
curl --request DELETE \
    "https://api.icafecloud.com/api/v2/cafe//events/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Event ranking details

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/events/{eventId}/detail
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

eventId
string
required

Event ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//events//detail" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Publish event

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/events/{eventId}/publish
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

eventId
string
required

Event ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//events//publish" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Allocate bonus

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/events/{eventId}/allocateBonus
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

eventId
string
required

Event ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//events//allocateBonus" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Join event

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/events/{eventId}/joinEvent
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

eventId
string
required

Event ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//events//joinEvent" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"member_id\": null
}"

Event join

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/events/eventJoin
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//events/eventJoin" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"event_id\": null
}"

Event Detail

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/events/eventDetail
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

event_id
string
required

Event ID.

pc_name
string

Pc Name. Client only, iCafeApp omits it.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//events/eventDetail?event_id=" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Event list

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/events/eventList
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

pc_name
string

Pc Name. Client only, iCafeApp omits it.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//events/eventList" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Add Custom Event Record

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/events/{eventId}/addCustomRecord
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

eventId
string
required

Event ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//events//addCustomRecord" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"custom_member_account\": null,
    \"custom_wins\": null,
    \"custom_kills\": null,
    \"custom_assists\": null,
    \"custom_deaths\": null
}"

Disable a member from earning game coins for a single event

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/events/{eventId}/disableMember
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

eventId
string
required

Event ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//events//disableMember" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"member_account\": null
}"

Enable a member to earn game coins for a single event

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/events/{eventId}/enableMember
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

eventId
string
required

Event ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//events//enableMember" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"member_account\": null
}"

PC groups APIs

Get PC group lists

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcGroups
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

contains_default
string

Contains default.

Example:
yes
filter_empty
string

group has PCs.

Example:
no
contains_shared
string

Contains shared groups of sub/main cafes.

Example:
yes
contains_unassigned
string

Append the report-only "no PC" pseudo group.

Example:
yes
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//pcGroups" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Add PC group

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcGroups
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//pcGroups" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pc_group_name\": null
}"

Update PC group

PUT
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcGroups/{pcGroupId}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

pcGroupId
integer
required

ID.

Body Parameters

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//pcGroups/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pc_group_name\": null,
    \"pc_group_desc\": null
}"

Delete PC Group

DELETE
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcGroups/{pcGroupId}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

pcGroupId
integer
required

ID.

Example request:
curl --request DELETE \
    "https://api.icafecloud.com/api/v2/cafe//pcGroups/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Get task group lists

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/taskGroups
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//taskGroups" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Add task group

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/taskGroups
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//taskGroups" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"task_group_name\": null
}"

Update task group

PUT
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/taskGroups/{taskGroupId}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

taskGroupId
string
required

ID.

Body Parameters

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//taskGroups/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"task_group_name\": null
}"

Delete task Group

DELETE
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/taskGroups/{taskGroupId}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

taskGroupId
string
required

ID.

Example request:
curl --request DELETE \
    "https://api.icafecloud.com/api/v2/cafe//taskGroups/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Base data APIs

Query base data

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/base/query
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//base/query" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Init game data

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/gameDataInit
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//gameDataInit" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Init report data

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/reportDataInit
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//reportDataInit" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Init IDC game data

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/gameInitData
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//gameInitData" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Member groups APIs

Get member group lists

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/memberGroups
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

contains_default
string

Contains default.

Example:
yes
filter_empty
string

group has members.

Example:
no
contains_guest
string

Append the report-only "guest" pseudo group.

Example:
yes
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//memberGroups?contains_default=yes&filter_empty=no&contains_guest=yes" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Add member group

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/memberGroups
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//memberGroups" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"member_group_name\": null
}"

Update member group

PUT
PATCH
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/memberGroups/{id}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

id
integer
required

ID.

Body Parameters

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//memberGroups/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"member_group_name\": null
}"

Delete member group

DELETE
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/memberGroups/{id}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

id
integer
required

ID.

Example request:
curl --request DELETE \
    "https://api.icafecloud.com/api/v2/cafe//memberGroups/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Delete member group check

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/memberGroups/{id}/deleteCheck
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

id
integer
required

ID.

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//memberGroups//deleteCheck" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Games APIs

Get game lists

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/games
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//games" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Get game show

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/games/{id}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

id
string
required

The ID of the game.

Example:
culpa
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//games/culpa" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Add game

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/games
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//games" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pkg_name\": null,
    \"pkg_idc_class\": null,
    \"pkg_local_path\": null
}"

Update game

PUT
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/games/{gameId}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

gameId
integer
required

ID.

Body Parameters

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe//games/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pkg_name\": null,
    \"pkg_idc_class\": null,
    \"pkg_local_path\": null
}"

Delete game

DELETE
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/games/{gameId}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

gameId
integer
required

ID.

Body Parameters

Example request:
curl --request DELETE \
    "https://api.icafecloud.com/api/v2/cafe//games/" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"del_files\": \"culpa\"
}"

Get IDC game info

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/games/{gameId}/idcGameInfo
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

gameId
integer
required

ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//games//idcGameInfo" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Delete IDC game

DELETE
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/games/{gameId}/deleteIdc
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

gameId
integer
required

ID.

Body Parameters

Example request:
curl --request DELETE \
    "https://api.icafecloud.com/api/v2/cafe//games//deleteIdc" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"del_files\": \"culpa\"
}"

Update remove

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/games/{gameId}/updateRemove
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

gameId
integer
required

ID.

Body Parameters

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//games//updateRemove" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"del_files\": \"culpa\"
}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Repair game

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/games/{gameId}/repair
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

gameId
integer
required

ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//games//repair" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Enable game

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/games/{gameId}/enable
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

gameId
integer
required

ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//games//enable" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pkg_name\": null,
    \"pkg_idc_class\": null,
    \"pkg_local_path\": null
}"

Copy game

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/games/{gameId}/copy
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

gameId
integer
required

ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//games//copy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Update to IDC direct

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/games/{gameId}/updateToIdcDirect
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

gameId
integer
required

ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//games//updateToIdcDirect" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Poster

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/games/{gameId}/poster
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

gameId
integer
required

ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//games//poster" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Report update problem for idc games

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/games/{gameId}/makeReportUpdateProblemWssPackage
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

gameId
integer
required

Game ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//games//makeReportUpdateProblemWssPackage" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Clear hot

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/games/{gameId}/clearHot
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

gameId
integer
required

Game ID.

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//games//clearHot" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Get game APPID list

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/games/action/appids
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

game_type
integer
required

Game type.

search_text
string

Search text.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//games/action/appids?game_type=" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Import game

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/games/action/importGames
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//games/action/importGames" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"license_name\": null,
    \"license_password\": null
}"

Game licenses

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/gameLicenses
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

pkg_id
string
required

Pkg ID.

pc_name
string
required

PC name.

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//gameLicenses?pkg_id=&pc_name=" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
  "code": 200,
  "message": "success",
  "data": {
		"pkg_id": "123",
		"licenses": [
			"123",
			"456"
		],
  }
}

Account request

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/accountRequest
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

pkg_id
string
required

Pkg ID.

pc_name
string
required

PC name.

license_account
string
required

License account.

Body Parameters

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//accountRequest?pkg_id=&pc_name=&license_account=" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"license_account\": \"culpa\",
    \"pkg_id\": \"culpa\",
    \"pc_name\": \"culpa\"
}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Game stats

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/gameStats
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

type
string
required

match stats type.

pc_name
string
required

PC name.

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//gameStats?type=&pc_name=" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "win_coins": 59
    }
}

Add default games

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/games/action/addDefaultGames
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//games/action/addDefaultGames" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pkg_ids\": \"1,2,3\"
}"

Game rank data

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/games/action/gameRankData
requires authentication

Get game ranking data for supported games (fortnite, pubg, lol, valorant, dota2, csgo, apex).

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa

Query Parameters

game_code
string
required

Game code (fortnite, pubg, lol, valorant, dota2, csgo, apex).

Example:
fortnite
data_type
string

Data type (daily, weekly).

Example:
weekly
rank_region
string

Rank region (World, Europe, North America, South America, Asia, Africa, Middle East).

Example:
World
game_mode
string

Game mode, for fortnite/pubg only (DUO, SOLO, SQUAD).

Example:
SOLO
rank_day
string

Rank day for daily type (today, yesterday).

Example:
today
rank_week
string

Rank week for weekly type (this, last).

Example:
last
page
integer

Page number.

Example:
1
page_size
integer

Page size.

Example:
10
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe/culpa/games/action/gameRankData?game_code=fortnite&data_type=weekly&rank_region=World&game_mode=SOLO&rank_day=today&rank_week=last&page=1&page_size=10" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "items": [
            {
                "rank_icafe_id": 1,
                "rank_member_id": 100,
                "player_name": "PlayerOne",
                "wins": 10,
                "kills": 50,
                "points": 150,
                "icafe_country_letter": "us",
                "pos": 1
            }
        ]
    }
}

Billing log APIs

Billing log lists

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/billingLogs
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

page
integer

Page.

Example:
1
staff
string

Staff name.

member
string

Member account.

event
string

Event.

pc
string

PC name.

date_start
string

Start date.

time_start
string

Start time.

date_end
string
time_end
string

End time.

member_or_guest
string

Member or guest (options: member, guest).

data_source
string

Data source(options:recent,history).

log_type
string

Log type(options:game_license).

bonus_only
string
operation
string
Must be one of:
  • topup
  • writeoff
Example:
writeoff
search
string
end_start
string

End date.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//billingLogs?page=1&operation=writeoff" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Date range

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/billingLogs/action/dateRange
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//billingLogs/action/dateRange" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Feedback logs

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/billingLogs/action/feedbackLogs
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

page
integer

Page number.

Example:
1
read
integer

Options (0 for unread messages, 1 for read messages, -1 for all messages).

Example:
1
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//billingLogs/action/feedbackLogs?page=1&read=1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Change log

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/billingLogs/action/changeLog
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//billingLogs/action/changeLog" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Export billing logs

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/billingLogs/action/export
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

staff
string

Staff name.

member
string

Member account.

event
string

Event.

pc
string

PC name.

date_start
string

Start date.

time_start
string

Start time.

end_start
string

End date.

time_end
string

End time.

member_or_guest
string

Member or guest (options: member, guest).

Body Parameters

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//billingLogs/action/export" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"operation\": \"topup\"
}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "filename": "xxx.csv",
        "csvContent": ""
    }
}

Assistant log

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/billingLogs/action/assistantLog
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

page
integer

Page.

Example:
1
pageSize
integer

Page size.

Example:
15
assistant
string

Assistant.

Example:
15
member
string

Member account.

date_start
string

Start datetime(Y-m-d H:i:s).

date_end
string

End datetime(Y-m-d H:i:s).

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//billingLogs/action/assistantLog?page=1&pageSize=15&assistant=15" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Assistant log export

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/billingLogs/action/assistantLogExport
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

assistant
string

Assistant.

Example:
15
member
string

Member account.

date_start
string

Start datetime(Y-m-d H:i:s).

date_end
string

End datetime(Y-m-d H:i:s).

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//billingLogs/action/assistantLogExport?assistant=15" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "filename": "xxx.csv",
        "csvContent": ""
    }
}

Assistant summary

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/billingLogs/action/assistantSummary
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

page
integer

Page.

Example:
1
pageSize
integer

Page size.

Example:
15
assistant
string

Assistant.

Example:
15
member
string

Member account.

date_start
string

Start datetime(Y-m-d H:i:s).

date_end
string

End datetime(Y-m-d H:i:s).

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//billingLogs/action/assistantSummary?page=1&pageSize=15&assistant=15" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Assistant summary export

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/billingLogs/action/assistantSummaryExport
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

assistant
string

Assistant.

Example:
15
member
string

Member account.

date_start
string

Start datetime(Y-m-d H:i:s).

date_end
string

End datetime(Y-m-d H:i:s).

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//billingLogs/action/assistantSummaryExport?assistant=15" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "filename": "xxx.csv",
        "csvContent": ""
    }
}

Assistant ranking

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/billingLogs/action/assistantRanking
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

limit
integer

Limit.

Example:
20
ranking_type
string

Ranking type(options:amount,duration).

Example:
amount
date_start
string

Start datetime(Y-m-d H:i:s).

date_end
string

End datetime(Y-m-d H:i:s).

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//billingLogs/action/assistantRanking?limit=20&ranking_type=amount" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Member ranking

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/billingLogs/action/memberRanking
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

limit
integer

Limit.

Example:
20
ranking_type
string

Ranking type(options:amount,duration,number).

Example:
amount
date_start
string

Start datetime(Y-m-d H:i:s).

date_end
string

End datetime(Y-m-d H:i:s).

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//billingLogs/action/memberRanking?limit=20&ranking_type=amount" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Notification list

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/billingLogs/action/importantNotifies
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//billingLogs/action/importantNotifies" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Process notification

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/billingLogs/action/processImportantNotify
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

billing_log_id
integer
required

Billing log ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//billingLogs/action/processImportantNotify?billing_log_id=" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Product stock logs

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/products/action/exportStock
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

product_name
string

Product name.

date_start
string

Start date.

time_start
string

Start time.

date_end
string

End date.

time_end
string

End time.

data_source
string

recent or log (options: recent, log).

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//products/action/exportStock" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Check whether there are new messages or not.

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/billingLogs/action/checkNewMessage
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//billingLogs/action/checkNewMessage" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Staff mailbox message

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/billingLogs/action/staffMessage
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

read
string

Options (inbox, outbox).

Example:
inbox
page
integer

Page number.

Example:
1

Body Parameters

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//billingLogs/action/staffMessage?read=inbox&page=1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"read\": \"inbox\"
}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Send message

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/billingLogs/{logEvent}/sendMessage
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

logEvent
string
required

Message type.

Example:
'staffMsg','memberMsg'

Query Parameters

member_accounts
string[]

Receiver(staffs or members) names.

pc_name
string

Pc name.

used_secs
string

0-unread 1-read.

message
string

Message.

Example:
hello

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//billingLogs/'staffMsg','memberMsg'/sendMessage?member_accounts=&message=hello" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"member_accounts\": [],
    \"message\": \"culpa\"
}"

Delete billing log lists

DELETE
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/billingLogs
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

date_start
string

Start date.

time_start
string

Start time.

end_start
string

End date.

time_end
string

End time.

Body Parameters

Example request:
curl --request DELETE \
    "https://api.icafecloud.com/api/v2/cafe//billingLogs" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"date_start\": \"culpa\",
    \"date_end\": \"culpa\"
}"

Session history

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/billingLogs/action/sessionHistory
requires authentication

会话历史:一行一次会话(CHECKOUT 事件),汇总 PC / 时长 / 充值 / 消费 / 折扣 / 会员当前余额, 供 Logs 页「Sessions」标签使用。对标 Senet 的会话历史,替代平铺的事件流水。 会话聚合口径复用 ReportsController::customerConsumptionExport:CHECKOUT 即一次会话, 开始时间 = log_date - log_used_secs,消费按会话时间窗 join 订单计算。 营收口径排除余额/硬币,与 hourlyTraffic 一致,避免与充值重复计算。

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//billingLogs/action/sessionHistory" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

upload billing logs

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/billingLogs/action/upload
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//billingLogs/action/upload" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {}
}

User survey logs

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/billingLogs/action/userSurveyLogs
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

page
integer

Page number.

Example:
1
member
string

Member account.

date_start
string

Start date.

time_start
string

Start time.

date_end
string

End date.

time_end
string

End time.

data_source
string

recent or log (options: recent, log).

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//billingLogs/action/userSurveyLogs?page=1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Product stock logs

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/billingLogs/action/stockLogs
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

page
integer

Page number.

Example:
1
product_name
string
date_start
string

Start date.

time_start
string

Start time.

date_end
string

End date.

time_end
string

End time.

data_source
string

recent or log (options: recent, log).

member
string

Member account.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//billingLogs/action/stockLogs?page=1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Syslog

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/syslog
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//syslog" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pc_name\": null
}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {}
}

Member client message

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/memberMessage
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

member_account
string

member account.

Body Parameters

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//memberMessage" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"member_account\": \"culpa\"
}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Chat APIs

聊天联系人列表(staff + member 合并)

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/chat/contacts
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//chat/contacts" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

单聊会话历史(双向合并),按时间正序;同时把未读消息标记为已读并推回执

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/chat/conversation
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

peer
string
required

Peer prefixed account(staff-xxx 或 member-yyy).

Example:
staff-alice
page
integer

Page number.

Example:
1

Body Parameters

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//chat/conversation?peer=staff-alice&page=1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"peer\": \"culpa\"
}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

发送聊天消息(支持一条消息群发给多个 recipient)

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/chat/send
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//chat/send" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"recipients\": [
        \"staff-alice\",
        \"member-link\"
    ],
    \"message\": \"hello\"
}"

把指定 sender 发来的所有未读消息标记为已读

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/chat/markRead
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//chat/markRead" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"sender\": \"staff-alice\"
}"

Lucky Spin

Get Lucky Spin options

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/configs/action/spinWheelOptions
requires authentication

Returns available offers and custom member groups for the CP settings page. Special groups (Default / Guest / Prepaid / Postpaid) are appended by the frontend.

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Response Fields

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//configs/action/spinWheelOptions" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "offers": [
            {
                "id": 12,
                "name": "30min Play",
                "mins": 30
            }
        ],
        "groups": [
            {
                "id": 1,
                "name": "VIP"
            }
        ]
    }
}

Spin the wheel

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/spinWheel/spin
requires authentication

Perform one Lucky Spin for the authenticated member. Server picks a prize by weighted random, awards it (bonus credited / offer inserted), and returns the result synchronously.

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Response Fields

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//spinWheel/spin" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "prize_index": 2,
        "prize": {
            "type": "bonus",
            "index": 2,
            "value": 5
        }
    }
}

Get spin records

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/spinWheel/records
requires authentication

Paginated Lucky Spin history for the authenticated member (10 per page).

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

page
integer

Page number.

Example:
1

Response Fields

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//spinWheel/records?page=1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "items": [
            {
                "date": "2026-06-30 14:22:05",
                "detail": "Bonus +5"
            }
        ],
        "paging_info": {
            "total_records": 3,
            "pages": 1,
            "page": "1",
            "start_from": "0",
            "end_from": "10"
        }
    }
}

Get spin status

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/spinWheel/status
requires authentication

Returns the current period's Lucky Spin quota and remaining count for the authenticated member.

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Response Fields

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//spinWheel/status" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "enable": 1,
        "auto_pop": 1,
        "daily_times": 1,
        "period": "day",
        "min_topup": 20,
        "free_left": 0,
        "credit": 1,
        "remaining": 1,
        "can_spin": 1,
        "reason": "ok"
    }
}

Member APIs

Disable a member from earning game coins globally

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/{memberId}/disableGameCoins
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

memberId
integer
required

Member ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//members//disableGameCoins" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \

Enable a member to earn game coins again

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/{memberId}/enableGameCoins
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

memberId
integer
required

Member ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//members//enableGameCoins" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \

Get a member's game coin earnings status (global only)

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/{memberId}/gameCoinsStatus
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

memberId
integer
required

Member ID.

[Claude] Implemented by Claude (Opus 4.7) on 2026-04-27

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//members//gameCoinsStatus" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Member auth APIs

Get member details using account

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/action/memberInfoByAccount
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

member_account
string
required

Member account.

Body Parameters

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//members/action/memberInfoByAccount" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"member_account\": \"culpa\"
}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "member": {
            "member_id": 57843940635,
            "member_icafe_id": 7777,
            "member_account": "test13",
            "member_balance": "138.00",
            "member_first_name": "asd",
            "member_last_name": "as",
            "member_birthday": "1990-10-10",
            "member_expire_time_local": "2028-01-01",
            "member_is_active": 1,
            "member_photo": "",
            "member_email": "",
            "member_telegram_username": "",
            "member_telegram_username_valid": 0,
            "member_phone": "",
            "member_id_card": "",
            "member_points": "137.00",
            "member_create": "2023-01-12T08:57:48.000000Z",
            "member_update": "2025-03-09T09:59:48.000000Z",
            "member_group_id": 143598,
            "member_balance_bonus": "94.00",
            "member_coin_balance": "-1.00",
            "member_sex": 0,
            "member_comments": "abcabc",
            "member_address": "",
            "member_company_id": 0,
            "member_loan": "0.00",
            "member_recent_played": null,
            "member_id_icafe_id": 578439406357777,
            "member_oauth_user_id": "0",
            "member_oauth_platform": "account",
            "member_balance_with_loan": "138.00",
            "member_group_name": "ab4"
        },
        "member_groups": [
            {
                "member_group_id": 143567,
                "member_group_name": "VIP7776"
            }
        ],
        "orders": [],
        "total_amount": 0,
        "currency": "$"
    }
}

Member booking init with offer

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bookings/action/initBookingSessionWithOffer
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

pc_name
string
required
Example:
culpa
start_date
string
required
Example:
culpa
start_time
string
required
Example:
culpa
mins
string
required
Example:
culpa
comment
string
offer_id
string
required
Example:
culpa
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//bookings/action/initBookingSessionWithOffer?pc_name=culpa&start_date=culpa&start_time=culpa&mins=culpa&offer_id=culpa" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Get member self info

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/memberSelf
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//memberSelf" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "member": {
            "member_id": 57843940635,
            "member_icafe_id": 7777,
            "member_account": "test13",
            "member_balance": "138.00",
            "member_first_name": "asd",
            "member_last_name": "as",
            "member_birthday": "1990-10-10",
            "member_expire_time_local": "2028-01-01",
            "member_is_active": 1,
            "member_photo": "",
            "member_email": "",
            "member_telegram_username": "",
            "member_telegram_username_valid": 0,
            "member_phone": "",
            "member_id_card": "",
            "member_points": "137.00",
            "member_create": "2023-01-12T08:57:48.000000Z",
            "member_update": "2025-03-09T09:59:48.000000Z",
            "member_group_id": 143598,
            "member_balance_bonus": "94.00",
            "member_coin_balance": "-1.00",
            "member_sex": 0,
            "member_comments": "abcabc",
            "member_address": "",
            "member_company_id": 0,
            "member_loan": "0.00",
            "member_recent_played": null,
            "member_id_icafe_id": 578439406357777,
            "member_oauth_user_id": "0",
            "member_oauth_platform": "account",
            "member_balance_with_loan": "138.00",
            "member_group_name": "ab4"
        },
        "member_groups": [
            {
                "member_group_id": 143567,
                "member_group_name": "VIP7776"
            }
        ],
        "orders": [],
        "total_amount": 0,
        "currency": "$"
    }
}

Update member avatar

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/updateAvatar
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//updateAvatar" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"member_photo\": null
}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "member_id": 57843940635,
        "member_photo": "#1.png"
    }
}

Toggle favorite game

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/toggleFavoriteGame
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//toggleFavoriteGame" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pkg_id\": null
}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "is_favorite": true,
        "favorite_games": [
            {
                "pkg_id": 123
            },
            {
                "pkg_id": 456
            }
        ]
    }
}

Member PC status

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/memberPcStatus
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//memberPcStatus" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Member start self session

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/memberStartSession
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//memberStartSession" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pc_name\": null
}"

Member get self payment info

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/memberPaymentInfo
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//memberPaymentInfo" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pcs\": null
}"

Member self checkout

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/memberCheckout
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//memberCheckout" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pc_name\": null,
    \"pc_group_id\": null,
    \"pc_cost\": null,
    \"pc_data_time\": null,
    \"pc_data_sign\": null
}"

Get member orders

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/memberOrders
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

search_text
string

Search Text.

page
integer

Page number.

sort_name
string

Sort field.

Example:
order_create_time
sort
string

Sort order, supports desc, asc.

Example:
desc
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//memberOrders?sort_name=order_create_time&sort=desc" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "orders": [
            {
                "order_no": 550,
                "order_pc": "",
                "order_create_time": "2025-03-13 01:27:21",
                "order_money": "110.00",
                "order_status": 3,
                "order_payment_method": 20,
                "order_product_id": 0,
                "product_name": "Unknown"
            }
        ],
        "paging_info": {
            "total_records": 28,
            "pages": 3,
            "page": 1,
            "page_prev": 1,
            "page_next": 2,
            "page_start": 1,
            "page_end": 3,
            "start_from": 0,
            "end_from": 10
        }
    }
}

Get topup url

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/memberChangePassword
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//memberChangePassword" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"old_password\": null,
    \"new_password\": null
}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {}
}

Covert to member

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/convertToMember
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//convertToMember" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
Example response:
{
    "code": 200,
    "message": "success",
    "data": {}
}

Get available offers list for member booking

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/memberBookingOffers
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

pc_name
string
required

PC name for filtering offers by PC group.

booking_time
string

Booking time (Y-m-d H:i:s format).

Body Parameters

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//memberBookingOffers?pc_name=" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pc_name\": \"culpa\",
    \"booking_time\": \"culpa\",
    \"member_account\": \"culpa\"
}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Get available offers list for member booking

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/availableOffers
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

pc_name
string
required

PC name for filtering offers by PC group.

booking_time
string

Booking time (Y-m-d H:i:s format).

Body Parameters

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//availableOffers?pc_name=" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pc_name\": \"culpa\",
    \"booking_time\": \"culpa\",
    \"member_account\": \"culpa\"
}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Add guest account

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/memberAddGuest
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//memberAddGuest" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"topup_amount\": 1,
    \"member_email\": null,
    \"pc_name\": null
}"

Request checkout

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/requestCheckout
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//requestCheckout" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pc_name\": null
}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {}
}

Client member login

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/clientStartSession
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//clientStartSession" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pc_name\": null,
    \"member_account\": null,
    \"status_pc_token\": null
}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {}
}

Scan start session: log the authenticated member into the PC that shows the QR

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/scanStartSession
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//scanStartSession" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"code\": null
}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "pc_name": "PC01",
        "member_account": "john"
    }
}

Generate a one-time code for binding an App account to the current member

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/memberBindCode
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//memberBindCode" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"source\": null
}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "code": "0123...",
        "ttl": 120,
        "cafe_id": 1
    }
}

Get the App account currently linked to this member

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/memberAppBinding
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//memberAppBinding" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "bound": true,
        "icafe_user_name": "John",
        "icafe_user_email": "a@b.com",
        "bind_time": "2026-08-27 18:00:00"
    }
}

Scan to power on a PC (wake only, no session)

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/scanPowerOn
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//scanPowerOn" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pc_name\": null,
    \"sign\": null
}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "pc_name": "PC01"
    }
}

Scan to power on a PC and log the member in

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/scanPowerOnLogin
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//scanPowerOnLogin" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pc_name\": null,
    \"sign\": null
}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "pc_name": "PC01",
        "member_account": "john"
    }
}

Check client member login

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/autoCheckout
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//autoCheckout" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pc_name\": null
}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {}
}

Client member register

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/clientMemberRegister
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//clientMemberRegister" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pc_name\": null
}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {}
}

Members

Get all members order list

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/action/allOrders
requires authentication

Returns paginated order history across all members for the past 40 days. Supports filtering by member account or order number. Supports sub-cafe access via accessLicenseIds.

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

member_account
string

Filter by member account.

order_no
string

Filter by exact order number.

page
integer

Page number (20 records per page).

Example:
1

Response Fields

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//members/action/allOrders?page=1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "orders": [
            {
                "order_no": 1633,
                "order_member_id": 57843942663,
                "order_pc": "PC01",
                "order_create_time_local": "2026-06-30 14:00:00",
                "order_money": "10.00",
                "order_status": 1,
                "order_payment_method": 1,
                "order_product_ids": "123,456",
                "member_account": "john",
                "product_names": "30min Play, Cola"
            }
        ],
        "paging_info": {
            "total_records": 200,
            "pages": 10,
            "page": "1",
            "start_from": "0",
            "end_from": "20"
        }
    }
}

Get all members balance history

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/action/allBalanceHistory
requires authentication

Returns paginated balance transaction history across all members (or filtered by one member account). Covers the past 40 days. Supports sub-cafe access via accessLicenseIds.

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

member_account
string

Filter by member account. Leave empty to return all members.

page
integer

Page number (20 records per page).

Example:
1

Response Fields

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//members/action/allBalanceHistory?page=1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "items": [
            {
                "log_id": 12345,
                "log_icafe_id": 1,
                "log_date": "2026-06-30 06:00:00",
                "log_date_local": "2026-06-30 14:00:00",
                "log_member_account": "john",
                "log_event": "TOPUP",
                "log_money": "10.00",
                "log_spend": "0.00",
                "log_card": "0.00",
                "log_bonus": "0.00",
                "log_coin": "0.00",
                "log_details": "",
                "log_staff_name": "admin"
            }
        ],
        "paging_info": {
            "total_records": 100,
            "pages": 5,
            "page": "1",
            "start_from": "0",
            "end_from": "20"
        },
        "summary": {
            "topup": "500.00",
            "spend": "300.00"
        }
    }
}

Payment gateway

Get topup url

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/getTopupUrl
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//getTopupUrl" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"member_account\": null,
    \"topup_amount\": null
}"

Get topup status

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/getTopupStatus
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
string
required
Example:
culpa

Body Parameters

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe/culpa/getTopupStatus" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"order_no\": \"culpa\",
    \"t\": \"culpa\",
    \"sid\": \"culpa\"
}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    x-ratelimit-limit
                                                            : 300
                                                                                                                    x-ratelimit-remaining
                                                            : 299
                                                                                                                    x-ratelimit-reset
                                                            : 1790588179
                                                                                                                    retry-after
                                                            : 60
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 400,
    "message": "Invalid request",
    "info": ""
}

PcSessions APIs

Switch the active billing method during a session.

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/switchOffer
requires authentication

Settles the current session segment and restarts with the new billing source. Called by the member sidebar switch button.

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

The cafe ID.

Example:
12

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe/12/switchOffer" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pc_name\": \"PC01\",
    \"billing_source\": \"offer\",
    \"member_offer_id\": 42
}"
Example response:
{
    "code": 200,
    "message": "success"
}
{
    "code": 400,
    "message": "Selected offer is not available for this PC"
}
{
    "code": 400,
    "message": "No active session on this PC for current member"
}

Sub-cafes APIs

Get sub-cafes lists

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/subcafes
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
integer
required

Cafe ID.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//subcafes" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}

Add sub-cafes

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/subcafes
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe//subcafes" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"license_name\": null,
    \"license_password\": null
}"

Delete sub-cafes

DELETE
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/subcafes/{id}
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

id
string
required

The ID of the subcafe.

Example:
culpa
licenseName
string
required

License name.

Body Parameters

Example request:
curl --request DELETE \
    "https://api.icafecloud.com/api/v2/cafe//subcafes/culpa" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"license_password\": null
}"

Undefined Group

GET api/v2/cafe/{cafeId}/kitchen/config

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/kitchen/config
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe/culpa/kitchen/config" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 401,
    "message": "Unauthenticated."
}

GET api/v2/cafe/{cafeId}/kitchen/orders

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/kitchen/orders
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe/culpa/kitchen/orders" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 401,
    "message": "Unauthenticated."
}

POST api/v2/cafe/{cafeId}/kitchen/orders/{orderNo}/confirm

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/kitchen/orders/{orderNo}/confirm
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
orderNo
string
required
Example:
culpa
Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe/culpa/kitchen/orders/culpa/confirm" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

POST api/v2/cafe/{cafeId}/members

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
string
required
Example:
culpa

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe/culpa/members" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"member_account\": \"pasyzwszwtxpeqqikymwkiinfowtzmixkolowyuffszfrcsnwwxvx\",
    \"member_password\": \"ezhebdrxkpiypmuihrdifekzagqzitsslufxboncxhcsddnacixfx\",
    \"member_oauth_platform\": \"culpa\"
}"

GET api/v2/cafe/{cafeId}/members/action/appPromoInfo

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/action/appPromoInfo
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe/culpa/members/action/appPromoInfo" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 401,
    "message": "Unauthenticated."
}

POST api/v2/cafe/{cafeId}/members/action/redeemAppPromo

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/action/redeemAppPromo
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe/culpa/members/action/redeemAppPromo" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

GET api/v2/cafe/{cafeId}/members/action/todayBirthdays

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/members/action/todayBirthdays
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe/culpa/members/action/todayBirthdays" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 401,
    "message": "Unauthenticated."
}

PUT api/v2/cafe/{cafeId}/orders/{orderNo}/cardTerminalPaymentRef

PUT
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/orders/{orderNo}/cardTerminalPaymentRef
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
orderNo
string
required
Example:
culpa
Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe/culpa/orders/culpa/cardTerminalPaymentRef" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

POST api/v2/cafe/{cafeId}/orders/action/kkmPreviewTasks

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/orders/action/kkmPreviewTasks
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe/culpa/orders/action/kkmPreviewTasks" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

POST api/v2/cafe/{cafeId}/orders/action/kkmPreviewTopupTasks

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/orders/action/kkmPreviewTopupTasks
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe/culpa/orders/action/kkmPreviewTopupTasks" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

POST api/v2/cafe/{cafeId}/orders/action/kkmPreviewRefundTasks

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/orders/action/kkmPreviewRefundTasks
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe/culpa/orders/action/kkmPreviewRefundTasks" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

get goodoo tax info image

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/orders/{orderNo}/goodooTax
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
orderNo
string
required
Example:
culpa
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe/culpa/orders/culpa/goodooTax" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 401,
    "message": "Unauthenticated."
}

GET api/v2/cafe/{cafeId}/configs/action/downloadIcafeMenuClientToken

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/configs/action/downloadIcafeMenuClientToken
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe/culpa/configs/action/downloadIcafeMenuClientToken" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 401,
    "message": "Unauthenticated."
}

PUT api/v2/cafe/{cafeId}/configs/policySettings

PUT
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/configs/policySettings
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
string
required
Example:
culpa

Body Parameters

Example request:
curl --request PUT \
    "https://api.icafecloud.com/api/v2/cafe/culpa/configs/policySettings" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"booking_agreement\": \"culpa\",
    \"notify_booking_advance_hours\": 12,
    \"notify_booking_soon_mins\": 12
}"

调用 Kaspi 集成商 bindPartner 接口自动绑定合作伙伴 BIN 只负责校验 + 调 Kaspi API,不持久化(持久化由 smsProviderSettings 保存时完成) # POST /api/v2/cafe/{cafeId}/configs/action/kaspiBindPartner

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/configs/action/kaspiBindPartner
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
string
required
Example:
culpa

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe/culpa/configs/action/kaspiBindPartner" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"bin\": \"999999999999\",
    \"business_area\": \"游戏机\"
}"

GET api/v2/cafe/{cafeId}/configs/action/downloadIcafeMenuClient

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/configs/action/downloadIcafeMenuClient
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe/culpa/configs/action/downloadIcafeMenuClient" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    x-ratelimit-limit
                                                            : 200
                                                                                                                    x-ratelimit-remaining
                                                            : 199
                                                                                                                    x-ratelimit-reset
                                                            : 1790588176
                                                                                                                    retry-after
                                                            : 60
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 401,
    "message": "Invalid or expired download link, please try again",
    "info": ""
}

保存 layout 网格时间显示偏好(CP 主页 / TV 大屏分开存) 任意登录员工可改(不限 admin),属于视图偏好而非业务配置

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/configs/layoutSettings
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe/culpa/configs/layoutSettings" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

获取 Square QR Gateway 的 locations 列表供前端下拉选择

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/configs/action/getSquareQrLocations
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe/culpa/configs/action/getSquareQrLocations" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 401,
    "message": "Unauthenticated."
}

get product image

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/products/{productId}/image
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
productId
integer
required
Example:
12
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe/culpa/products/12/image" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    x-ratelimit-limit
                                                            : 2000
                                                                                                                    x-ratelimit-remaining
                                                            : 1999
                                                                                                                    x-ratelimit-reset
                                                            : 1790588176
                                                                                                                    retry-after
                                                            : 60
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 0,
    "message": "Undefined array key \"t\""
}

Used promo codes report

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/reports/reportUsedPromoCode
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa

Query Parameters

date_start
string
required

Start date.

date_end
string
required

End date.

time_start
string
required

Start time(00:00).

time_end
string
required

End time(00:00).

data_source
string

Data source (recent, history).

Example:
recent
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe/culpa/reports/reportUsedPromoCode?date_start=&date_end=&time_start=&time_end=&data_source=recent" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "code": 200,
    "message": "success",
    "data": {
        "filename": "Used promo codes-2026-04-11 10_00_00 GMT+08:00.xlsx",
        "header": [
            "Redeemed count",
            "Remaining qty",
            "Member account",
            "Promo name",
            "Promo code",
            "Promo type",
            "Use date",
            "To date",
            "Bonus amount"
        ],
        "rows": [
            [
                8,
                100,
                "alice",
                "Summer20",
                "SUMMER20",
                "Topup",
                "2026-04-01 10:00:00",
                "2026-12-31",
                20
            ]
        ]
    }
}

GET api/v2/cafe/{cafeId}/reports/reportSoldReceiptsDetailed

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/reports/reportSoldReceiptsDetailed
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe/culpa/reports/reportSoldReceiptsDetailed" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 401,
    "message": "Unauthenticated."
}

Shop Quantity Report Export

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/reports/reportShopQuantity
requires authentication

Returns product stock movement statistics (sold / restocked / written off quantities and prices) within the specified date range.

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa

Query Parameters

time_start
string
required

Start time (local).

time_end
string
required

End time (local).

product_type
string

Product type filter: all, combo, good.

Example:
all
product_group_id
string

Product group ID, or 'all'.

Example:
all
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe/culpa/reports/reportShopQuantity?time_start=&time_end=&product_type=all&product_group_id=all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
{
    "filename": "Shop quantity report-2024-04-11 GMT+08:00.xlsx",
    "header": [
        "Product name",
        "Sold quantity",
        "Restock quantity",
        "Write off quantity",
        "Restock price",
        "Restock price sum",
        "Selling price",
        "Sold price sum",
        "Actual quantity"
    ],
    "rows": [
        [
            "Cola",
            10,
            50,
            2,
            1.2,
            60,
            2.5,
            25,
            38
        ]
    ]
}

获取指定网吧的 PC 排队列表 若传入 pc_name,只返回该台 PC 的排队;否则返回所有 PC 的排队

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bookingQueue
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe/culpa/bookingQueue" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 401,
    "message": "Unauthenticated."
}

Staff 将会员加入某台 PC 的排队

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bookingQueue
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
string
required
Example:
culpa

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe/culpa/bookingQueue" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"pc_name\": \"culpa\",
    \"member_account\": \"culpa\",
    \"comment\": \"culpa\"
}"

Staff 将会员移出排队

DELETE
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bookingQueue
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
string
required
Example:
culpa

Body Parameters

Example request:
curl --request DELETE \
    "https://api.icafecloud.com/api/v2/cafe/culpa/bookingQueue" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"member_offer_id\": 12
}"

POST api/v2/cafe/{cafeId}/submitOrder

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/submitOrder
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe/culpa/submitOrder" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Check QRIS payment status 以member为单位 查询条件 1. order_product_code 前缀为'qris-' 2. order_status = 'in_process' 3. order_create_time 为48小时内

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/checkMemberQRISPayment
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe/culpa/checkMemberQRISPayment" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 401,
    "message": "Unauthenticated."
}

POST api/v2/cafe/{cafeId}/pcs/action/renameAreaLayout

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/pcs/action/renameAreaLayout
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
string
required
Example:
culpa

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe/culpa/pcs/action/renameAreaLayout" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"area_name_old\": \"culpa\",
    \"area_name_new\": \"culpa\"
}"

GET api/v2/cafe/{cafeId}/bootPcs/action/diskbootComments

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/bootPcs/action/diskbootComments
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe/culpa/bootPcs/action/diskbootComments" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 401,
    "message": "Unauthenticated."
}

Game rank data

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/gameRankData
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa

Query Parameters

pc_name
string
required

PC name.

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe/culpa/gameRankData?pc_name=" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    x-ratelimit-limit
                                                            : 200
                                                                                                                    x-ratelimit-remaining
                                                            : 198
                                                                                                                    x-ratelimit-reset
                                                            : 1790588176
                                                                                                                    retry-after
                                                            : 57
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 400,
    "message": "Invalid parameter",
    "info": ""
}

midtrans payment notify

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/midtrans/notifications
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe/culpa/midtrans/notifications" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

获取evotor stores数据

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/evotor/stores
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe/culpa/evotor/stores" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 401,
    "message": "Unauthenticated."
}

获取evotor staffs数据

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/evotor/staffs
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe/culpa/evotor/staffs" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 401,
    "message": "Unauthenticated."
}

发起 Evotor 终端收款(credit_card_collect 流程) 调用 V3 ASC API 创建收款请求,Evotor 终端显示收款界面, 支付完成后 Evotor 回调 notifyEvotor,由其推 WSS card_terminal_payment 通知前端。

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/evotor/terminal/processPayment
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe/culpa/evotor/terminal/processPayment" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

POST api/v2/cafe/{cafeId}/evotor/terminal/processCashPayment

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/evotor/terminal/processCashPayment
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe/culpa/evotor/terminal/processCashPayment" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

POST api/v2/cafe/{cafeId}/evotor/terminal/processMixedPayment

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/evotor/terminal/processMixedPayment
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe/culpa/evotor/terminal/processMixedPayment" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

支付事件本地处理(分服务器,无需 auth 中间件) POST /api/v2/cafe/{cafeId}/stripe/terminal/paymentNotify

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/stripe/terminal/paymentNotify
requires authentication

由 CP webhook 转发调用,负责验证签名、WSS 通知、签名收集。 Stripe 签名算法不含 URL,本地可用原始 payload 直接重新验证。

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe/culpa/stripe/terminal/paymentNotify" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

创建 PaymentIntent 并激活 S700 读卡机 POST /api/v2/cafe/{cafeId}/stripe/terminal/processPayment

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/stripe/terminal/processPayment
requires authentication

credit_card_collect() 在建单前调用此接口,S700 屏幕随即显示支付界面。 成功后由前端通过 PUT orders/{orderNo}/cardTerminalPaymentRef 将 payment_ref 写入订单。

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
string
required
Example:
culpa

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe/culpa/stripe/terminal/processPayment" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"amount\": 52,
    \"currency\": \"asy\",
    \"description\": \"Consequatur quisquam recusandae asperiores accusamus nihil repellat.\"
}"

取消 S700 当前读卡操作(收银员主动取消时调用) POST /api/v2/cafe/{cafeId}/stripe/terminal/cancelPayment

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/stripe/terminal/cancelPayment
requires authentication

只负责通知 S700 停止读卡,不处理订单状态。 credit_card_collect() Promise 会通过 _card_collect_resolve(false) 通知前端取消。

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe/culpa/stripe/terminal/cancelPayment" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

退款(从 iCafe CP 发起,无需 S700 设备在线) POST /api/v2/cafe/{cafeId}/stripe/terminal/refund

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/stripe/terminal/refund
requires authentication

从 order_product_code 读取 payment_intent_id(processPayment 时写入), 调用 Stripe Refund API 进行全额退款。 此接口只负责 Stripe 退款,不处理库存或订单状态。 调用方(order_cancel_post)在此接口成功后,再调用 DELETE orders/{orderNo}, 由 destroy() 完成库存恢复、billing log 写入、订单状态改为 CANCEL。

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
string
required
Example:
culpa

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe/culpa/stripe/terminal/refund" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"order_no\": \"culpa\",
    \"amount\": 0
}"

支付事件本地处理(分服务器,无需 auth 中间件) POST /api/v2/cafe/{cafeId}/square/terminal/paymentNotify

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/square/terminal/paymentNotify
requires authentication

由 CP webhook 转发调用,负责验证 Square 签名、WSS 通知前端。 签名验证使用 X-Original-Url 头(CP webhook 的固定 URL)+ 原始 payload。

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe/culpa/square/terminal/paymentNotify" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

QR 支付本地处理(分服务器,POST /api/v2/cafe/{cafeId}/square/qr/paymentNotify,无需 auth)

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/square/qr/paymentNotify
requires authentication

由 CP qrWebhook 转发调用,负责验签 + 调 topupNotifyBase。 不做 X-Internal-Ref 内部验证,只做 Square webhook 签名验证。

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe/culpa/square/qr/paymentNotify" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

激活 Square Terminal 设备,让客户刷卡 POST /api/v2/cafe/{cafeId}/square/terminal/processPayment

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/square/terminal/processPayment
requires authentication

credit_card_collect() 在建单前调用此接口,设备屏幕随即显示支付界面。 checkout_id 通过 API 响应返回前端(_card_terminal_checkout_id),供取消时回传。 成功后由前端通过 PUT orders/{orderNo}/cardTerminalPaymentRef 将 payment_ref 写入订单。

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
string
required
Example:
culpa

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe/culpa/square/terminal/processPayment" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"amount\": 52,
    \"currency\": \"asy\",
    \"description\": \"Consequatur quisquam recusandae asperiores accusamus nihil repellat.\"
}"

取消当前 Square Terminal 刷卡操作(收银员主动取消) POST /api/v2/cafe/{cafeId}/square/terminal/cancelPayment

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/square/terminal/cancelPayment
requires authentication

只负责通知 Square Terminal 停止读卡,不处理订单状态。 credit_card_collect() Promise 会通过 _card_collect_resolve(false) 通知前端取消。

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe/culpa/square/terminal/cancelPayment" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

退款(从 iCafe CP 发起,无需 Square Terminal 设备在线) POST /api/v2/cafe/{cafeId}/square/terminal/refund

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/square/terminal/refund
requires authentication

从 order_product_code 读取 payment_id({"sq":"PAY_xxx"}),调用 Square Refunds API。 此接口只负责 Square 退款,不处理库存或订单状态。 调用方在此接口成功后再调 DELETE orders/{orderNo},由 destroy() 完成库存恢复和 billing log。

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
string
required
Example:
culpa

Body Parameters

Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe/culpa/square/terminal/refund" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"order_no\": \"culpa\",
    \"amount\": 0
}"

GET api/v2/cafe/{cafeId}/whish

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/whish
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe/culpa/whish" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    x-ratelimit-limit
                                                            : 200
                                                                                                                    x-ratelimit-remaining
                                                            : 197
                                                                                                                    x-ratelimit-reset
                                                            : 1790588176
                                                                                                                    retry-after
                                                            : 57
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
[
    "whish payment gateway"
]

whish callback 1. Validate hash 2. 根据 metadata 中的icafe_id, order_no, sha来验证订单 3. 更新订单状态/会员余额

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/whish/successCallback
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe/culpa/whish/successCallback" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    x-ratelimit-limit
                                                            : 200
                                                                                                                    x-ratelimit-remaining
                                                            : 196
                                                                                                                    x-ratelimit-reset
                                                            : 1790588176
                                                                                                                    retry-after
                                                            : 57
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 0,
    "message": "Undefined array key \"amount\""
}

qpay callback 1. Validate hash 2. 根据 metadata 中的icafe_id, order_no, sha来验证订单 3. 更新订单状态/会员余额

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/qpay/callback
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe/culpa/qpay/callback" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    x-ratelimit-limit
                                                            : 200
                                                                                                                    x-ratelimit-remaining
                                                            : 195
                                                                                                                    x-ratelimit-reset
                                                            : 1790588176
                                                                                                                    retry-after
                                                            : 57
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 0,
    "message": "Undefined array key \"amount\""
}

https://developer.help.paycom.uz/metody-merchant-api/ 1.PerformTransaction,CancelTransaction 都可以重复调,期望返回的结果是相同的 2. 调完CheckTransaction后,要标记成paying状态,不能再CreateTransaction了 3. order_product_code 字段按键存 paycom 的 pt(transaction_id) / pp(perform_time) / pr(promo_code), 而且支付完成后不能清空,后续的接口调用需要用到。老单是 'transaction_id|perform_time|promo_code' 管道串,读取统一走 paycomReadTxn(),两种格式都认 3.1 其中 transaction_id 有值,表示已经CreateTransaction成功 3.2 其中 perform_time 可能是 "CHECKED"(表示CheckTransaction成功),也可能是时间戳(表示PerformTransaction成功 或 CancelTransaction成功, 根据order_status来定) 4. 按 transaction_id 找单的 where 同时匹配新旧两种格式;$params['id'] 来自请求体, 必须用绑定参数,不能拼进 SQL paycom merchant api

GET
POST
PUT
PATCH
DELETE
OPTIONS
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/paycom/merchant
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe/culpa/paycom/merchant" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    x-ratelimit-limit
                                                            : 200
                                                                                                                    x-ratelimit-remaining
                                                            : 194
                                                                                                                    x-ratelimit-reset
                                                            : 1790588176
                                                                                                                    retry-after
                                                            : 57
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "id": null,
    "error": {
        "code": -32504,
        "message": "Unauthorized"
    }
}

paycom callback 1. Validate hash 2. 根据 query参数中的icafe_id, order_no, sha来验证订单 3. 更新订单状态/会员余额

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/paycom/callback
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe/culpa/paycom/callback" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    x-ratelimit-limit
                                                            : 200
                                                                                                                    x-ratelimit-remaining
                                                            : 193
                                                                                                                    x-ratelimit-reset
                                                            : 1790588176
                                                                                                                    retry-after
                                                            : 57
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 0,
    "message": "Undefined array key \"amount\""
}

GET api/v2/cafe/{cafeId}/finik/success

GET
POST
PUT
PATCH
DELETE
OPTIONS
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/finik/success
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe/culpa/finik/success" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            content-type
                                                            : text/html; charset=utf-8
                                                                                                                    cache-control
                                                            : no-cache, private
                                                                                                                    x-ratelimit-limit
                                                            : 200
                                                                                                                    x-ratelimit-remaining
                                                            : 191
                                                                                                                    x-ratelimit-reset
                                                            : 1790588176
                                                                                                                    retry-after
                                                            : 57
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
Finik payment success

paymongo webhook 1. Validate Webhooks 2. 只处理 payment.paid 事件 https://developers.paymongo.com/docs/qr-ph-api 3. 根据 metadata 中的icafe_id, order_no, sha来验证订单 4. 更新订单状态/会员余额

GET
POST
PUT
PATCH
DELETE
OPTIONS
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/paymongo/webhook
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe/culpa/paymongo/webhook" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    x-ratelimit-limit
                                                            : 200
                                                                                                                    x-ratelimit-remaining
                                                            : 190
                                                                                                                    x-ratelimit-reset
                                                            : 1790588176
                                                                                                                    retry-after
                                                            : 57
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 400,
    "message": "paymongo webhook empty body",
    "info": ""
}

zarinpal payment callback

GET
POST
PUT
PATCH
DELETE
OPTIONS
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/zarinpal/callback
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe/culpa/zarinpal/callback" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    location
                                                            : http://api.icafecloud.com/api/v2/cafe/culpa/zarinpal/completed?message=Payment%20failed%20or%20canceled%20by%20user
                                                                                                                    content-type
                                                            : text/html; charset=utf-8
                                                                                                                    x-ratelimit-limit
                                                            : 200
                                                                                                                    x-ratelimit-remaining
                                                            : 189
                                                                                                                    x-ratelimit-reset
                                                            : 1790588176
                                                                                                                    retry-after
                                                            : 57
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8" />
        <meta http-equiv="refresh" content="0;url='http://api.icafecloud.com/api/v2/cafe/culpa/zarinpal/completed?message=Payment%20failed%20or%20canceled%20by%20user'" />

        <title>Redirecting to http://api.icafecloud.com/api/v2/cafe/culpa/zarinpal/completed?message=Payment%20failed%20or%20canceled%20by%20user</title>
    </head>
    <body>
        Redirecting to <a href="http://api.icafecloud.com/api/v2/cafe/culpa/zarinpal/completed?message=Payment%20failed%20or%20canceled%20by%20user">http://api.icafecloud.com/api/v2/cafe/culpa/zarinpal/completed?message=Payment%20failed%20or%20canceled%20by%20user</a>.
    </body>
</html>

GET api/v2/cafe/{cafeId}/zarinpal/completed

GET
POST
PUT
PATCH
DELETE
OPTIONS
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/zarinpal/completed
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe/culpa/zarinpal/completed" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            content-type
                                                            : text/html; charset=utf-8
                                                                                                                    cache-control
                                                            : no-cache, private
                                                                                                                    x-ratelimit-limit
                                                            : 200
                                                                                                                    x-ratelimit-remaining
                                                            : 188
                                                                                                                    x-ratelimit-reset
                                                            : 1790588176
                                                                                                                    retry-after
                                                            : 57
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
Zarinpal payment completed, please close this page

google pay payment callback

GET
POST
PUT
PATCH
DELETE
OPTIONS
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/googlepay/token
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe/culpa/googlepay/token" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    x-ratelimit-limit
                                                            : 200
                                                                                                                    x-ratelimit-remaining
                                                            : 187
                                                                                                                    x-ratelimit-reset
                                                            : 1790588176
                                                                                                                    retry-after
                                                            : 57
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 400,
    "message": "Payment token decrypt failed",
    "info": ""
}

Apple Pay 付款页初始化:校验链接签名,下发付款页所需的一切

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/applepay/intent
requires authentication

付款页(apple-pay.html)加载时调用一次。金额不从请求里取,一律由服务端按 order_no 查 SUM(order_money) 得出——URL 里根本没有金额。

响应是「网关无关的外壳 + 网关子对象」:页面据此决定走哪条分支。 页面不从 URL、也不从 window.location.hostname 推断网关——有 page_host 覆盖时 hostname 不可靠,而 URL 参数会形成第二个可能与库不一致的真相源。

Stripe 分支在这里创建 PaymentIntent,有三个理由:

  1. 二维码可能几分钟后才被扫,那时创建的 PI 才是新鲜的;
  2. 不会给每次"点了充值但没付"的请求留下僵尸 PI;
  3. getTopupUrl 热路径保持零远程调用,不会因 Stripe 抖动而失败。 也不放在点击按钮之后创建——Apple Pay 面板等待响应的时间预算很紧。 Adyen 分支这里不产生任何 PSP 侧对象:它的扣款发生在 applepay/token。

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe/culpa/applepay/intent" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Apple Pay 商户验证(仅 Adyen)

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/applepay/validate
requires authentication

Stripe 走 Stripe.js,merchant validation 在 SDK 内部完成,不需要这个端点; Adyen 是 API-only,浏览器的 onvalidatemerchant 必须由服务端向 Adyen 换一个 Apple merchant session 回去。

注意不接收 Apple 的 validationURL:Adyen 的 /applePay/sessions 不吃这个参数, 所以浏览器根本不需要传,这里也就没有 SSRF 面。

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe/culpa/applepay/validate" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Apple Pay 支付回调(由付款页在 Apple Pay 面板确认成功后调用)

GET
POST
PUT
PATCH
DELETE
OPTIONS
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/applepay/token
requires authentication

两个网关的语义完全不同:

  • Stripe:钱已经由浏览器确认扣掉了,这里只做复核(向 Stripe 拉 PI 状态)
  • Adyen:钱还没扣,这里才拿 Apple token 去 /payments 发起扣款,金额取自库

两者都不校验 exp 过期:钱已经动了(或即将动),链接过不过期都不该阻断入账, 只验签名以防伪造调用。

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe/culpa/applepay/token" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    x-ratelimit-limit
                                                            : 200
                                                                                                                    x-ratelimit-remaining
                                                            : 186
                                                                                                                    x-ratelimit-reset
                                                            : 1790588176
                                                                                                                    retry-after
                                                            : 57
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 400,
    "message": "Unknown payment gateway setings: applepay",
    "info": ""
}

Razorpay webhook 1. Validate Webhooks 2. 只处理 payment.captured 事件 https://razorpay.com/docs/webhooks/payloads/payments/#payment-captured 3. 根据notes中的icafe_id, order_no, sha来验证订单 4. 更新订单状态/会员余额

GET
POST
PUT
PATCH
DELETE
OPTIONS
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/razorpay/webhook
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe/culpa/razorpay/webhook" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    x-ratelimit-limit
                                                            : 200
                                                                                                                    x-ratelimit-remaining
                                                            : 185
                                                                                                                    x-ratelimit-reset
                                                            : 1790588176
                                                                                                                    retry-after
                                                            : 57
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "status": "not a payment.captured event"
}

Woovi/OpenPix webhook(巴西 Pix 充值回调) POST /api/v2/cafe/{cafeId}/woovi/webhook

POST
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/woovi/webhook
requires authentication
  1. Woovi 只用 POST 打这个地址;注册 webhook 时会先打一次校验请求, body 只有 {"data_criacao":"..","event":"OPENPIX:CHARGE_COMPLETED"}、没有 charge, 且不保证带签名。必须在验签之前放行并返回 200 空 body, 否则 Woovi 判定端点不可用,webhook 根本存不进去。
  2. 用 x-webhook-signature 做 RSA-SHA256 验签
  3. correlationID(下单时写的 icc-{icafe_id}-{order_no})反查订单,校验状态与金额
  4. 复用 update_member_balance_by_order -> TokenController::topupNotifyBase ref https://developers.woovi.com/en/docs/webhook/webhook-test

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}

URL Parameters

cafeId
string
required
Example:
culpa
Example request:
curl --request POST \
    "https://api.icafecloud.com/api/v2/cafe/culpa/woovi/webhook" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

config APIs

Google drive Bind

GET
https://api.icafecloud.com
/api/v2/cafe/{cafeId}/googleDriveBind
requires authentication

Headers

Authorization
Example:
Bearer {YOUR_AUTH_KEY}
Content-Type
Example:
application/json

URL Parameters

cafeId
integer
required

Cafe ID.

Query Parameters

action
string

action (bind, unbind).

Example:
bind

Body Parameters

Example request:
curl --request GET \
    --get "https://api.icafecloud.com/api/v2/cafe//googleDriveBind?action=bind" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --data "{
    \"action\": \"culpa\"
}"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "code": 404,
    "message": "Url not match"
}