Crowdfunding
Вспомогательные методы уровня кампании для интеграторов краудфандинга. DAO-bearer-токен должен быть выпущен для той DAO, которой принадлежит кампания, указанная в пути.
Deeplink для взноса
Возвращает готовый к подписи URI ton://transfer/..., который вносит указанную сумму (amount) в заданную кампанию краудфандинга.
Авторизация: dao_address из DAO-bearer-токена должен совпадать с DAO, которой принадлежит кампания. При несовпадении возвращается 403.
Вайтлист: для жетонных кампаний investor_address проверяется по вайтлисту кампании — инвестору вне вайтлиста вернётся 403 not_whitelisted. Для нативных кампаний проверка происходит он-чейн, и взнос вне вайтлиста возвращается отправителю сетевым bounce.
Authorization
DaoBearerAuth DAO service token in Bearer format. The token must be valid, not revoked, and authorized for the same dao_address as in the request path.
In: header
Path Parameters
Campaign address (crowdfunding master address)
Query Parameters
Contribution amount in smallest units (nanoton for native, jetton smallest-units for jetton campaigns)
^[0-9]+$Investor address (required for jetton campaigns, used to resolve the investor's jetton wallet via get_wallet_address). For jetton campaigns it is also checked against the campaign whitelist when one is configured — non-whitelisted investors get 403 not_whitelisted.
TON message query_id (uint64). Defaults to 0.
int640 <= valueJetton transfer response_destination (defaults to investor_address if absent)
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/api/v1/crowdfunding/campaigns/EQAoZM5vjrPB1RgYQBpymvHrLmjucfhZcTuMhixWU36gYIkk/contribution-link?amount=1000000000"{ "isNative": true, "campaignAddress": "EQAoZM5vjrPB1RgYQBpymvHrLmjucfhZcTuMhixWU36gYIkk", "tonTransfer": { "uri": "ton://transfer/EQAoZM5v...?amount=1000000000&bin=te6..." }, "details": { "to": "EQAoZM5vjrPB1RgYQBpymvHrLmjucfhZcTuMhixWU36gYIkk", "valueNanoton": "1000000000", "bodyBocBase64Url": "https://example.com/logo.png" }, "miniAppLink": "example", "warnings": [ "example" ]}{ "error": "string"}{ "error": "string"}{ "error": "string"}{ "error": "string"}{ "error": "string"}{ "error": "string"}{ "error": "string"}Deeplink для клейма LP
Возвращает готовый к подписи URI ton://transfer/... для **первичного** клейма LP. Это сообщение request_claim_lp_tokens, которое инвестор отправляет на свой контракт Helper (для конкретной кампании) после того, как кампания стала successful.
Авторизация: dao_address из DAO-bearer-токена должен совпадать с DAO, которой принадлежит кампания. При несовпадении возвращается 403.
Authorization
DaoBearerAuth DAO service token in Bearer format. The token must be valid, not revoked, and authorized for the same dao_address as in the request path.
In: header
Path Parameters
Campaign address (crowdfunding master address)
Query Parameters
Investor wallet address claiming LP tokens
TON message query_id (uint64). Defaults to 0.
int640 <= valueResponse Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/api/v1/crowdfunding/campaigns/EQAoZM5vjrPB1RgYQBpymvHrLmjucfhZcTuMhixWU36gYIkk/claim-link?owner_address=EQAoZM5vjrPB1RgYQBpymvHrLmjucfhZcTuMhixWU36gYIkk"{ "kind": "initial", "campaignAddress": "EQAoZM5vjrPB1RgYQBpymvHrLmjucfhZcTuMhixWU36gYIkk", "tonTransfer": { "uri": "ton://transfer/EQAoZM5v...?amount=1000000000&bin=te6..." }, "details": { "to": "EQAoZM5vjrPB1RgYQBpymvHrLmjucfhZcTuMhixWU36gYIkk", "valueNanoton": "1000000000", "bodyBocBase64Url": "https://example.com/logo.png" }, "vesting": { "phase": "not_started", "claimableAmount": "1000000000", "vestedAmount": "1000000000", "totalLpAmount": "1000000000", "claimedLpAmount": "1000000000", "vestingEnd": "2026-06-01T12:00:00Z" }, "warnings": [ "example" ]}{ "error": "string"}{ "error": "string"}{ "error": "string"}{ "error": "string"}{ "error": "string"}{ "error": "string"}Deeplink для клейма вестированных LP
Возвращает готовый к подписи URI ton://transfer/... для сообщения claim_vested, которое инвестор отправляет на свой контракт VestingVault (для конкретной кампании), чтобы забрать уже вестированные, но ещё не полученные LP.
Авторизация: dao_address из DAO-bearer-токена должен совпадать с DAO, которой принадлежит кампания. При несовпадении возвращается 403.
Authorization
DaoBearerAuth DAO service token in Bearer format. The token must be valid, not revoked, and authorized for the same dao_address as in the request path.
In: header
Path Parameters
Campaign address (crowdfunding master address)
Query Parameters
Investor wallet address claiming LP tokens
TON message query_id (uint64). Defaults to 0.
int640 <= valueResponse Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/api/v1/crowdfunding/campaigns/EQAoZM5vjrPB1RgYQBpymvHrLmjucfhZcTuMhixWU36gYIkk/vesting-claim-link?owner_address=EQAoZM5vjrPB1RgYQBpymvHrLmjucfhZcTuMhixWU36gYIkk"{ "kind": "initial", "campaignAddress": "EQAoZM5vjrPB1RgYQBpymvHrLmjucfhZcTuMhixWU36gYIkk", "tonTransfer": { "uri": "ton://transfer/EQAoZM5v...?amount=1000000000&bin=te6..." }, "details": { "to": "EQAoZM5vjrPB1RgYQBpymvHrLmjucfhZcTuMhixWU36gYIkk", "valueNanoton": "1000000000", "bodyBocBase64Url": "https://example.com/logo.png" }, "vesting": { "phase": "not_started", "claimableAmount": "1000000000", "vestedAmount": "1000000000", "totalLpAmount": "1000000000", "claimedLpAmount": "1000000000", "vestingEnd": "2026-06-01T12:00:00Z" }, "warnings": [ "example" ]}{ "error": "string"}{ "error": "string"}{ "error": "string"}{ "error": "string"}{ "error": "string"}{ "error": "string"}