FastComments.com

FastComments SDK של C++

זהו ה-SDK הרשמי ב-C++ עבור FastComments.

ה-SDK הרשמי ב-C++ עבור ה-API של FastComments

מאגר

צפה ב-GitHub

דרישות Internal Link


  • C++17 או מאוחר יותר
  • CMake 3.14 או מאוחר יותר
  • OpenSSL
  • C++ REST SDK (cpprestsdk)
  • Boost
  • Google Test (יורד אוטומטית לצורך בדיקות)

התקנה Internal Link

התקנת תלותים

sudo apt install libcpprest-dev libboost-all-dev

בנייה ממקור

mkdir build
cd build
cmake ..
make

התקנה

sudo make install

תכולת הספרייה

ספרייה זו מכילה את לקוח ה‑API שנוצר ואת כלי ה‑SSO כדי להקל על העבודה עם ה‑API.

API ציבוריים מול מאובטחים

עבור לקוח ה‑API, קיימות שלוש מחלקות, DefaultApi, PublicApi, ו‑ModerationApi. ה‑DefaultApi מכילה שיטות הדורשות את מפתח ה‑API שלך, ו‑PublicApi מכילה שיטות שניתן לבצע ישירות מדפדפן/מכשיר נייד/וכו׳ ללא אימות. ה‑ModerationApi מספקת חבילת רחבה של API מודרציה בזמן אמת ומהירה. כל שיטה של ModerationApi מקבלת פרמטר sso ויכולה לאמת באמצעות SSO או באמצעות עוגיית סשן של FastComments.com.


הערות Internal Link

Broadcast Ids

תראה שעליך להעביר broadcastId בחלק מהקריאות ל-API. כשאתה מקבל אירועים, תקבל את ה-ID הזה בחזרה, כך תדע להתעלם מהאירוע אם אתה מתכנן ליישם שינויים באופן אופטימיסטי בצד הלקוח (שכנראה תרצה לעשות מכיוון שזה מספק את החוויה הטובה ביותר). העבר כאן UUID. ה-ID צריך להיות מספיק ייחודי כדי שלא יופיע פעמיים בסשן בדפדפן.

SSO (כניסה יחידה)

לדוגמאות SSO, ראה למטה.

שימוש ב-SSO Internal Link


SSO פשוט

#include <fastcomments/sso/fastcomments_sso.hpp>
#include <iostream>

using namespace fastcomments::sso;

int main() {
    SimpleSSOUserData user("user-123", "user@example.com", "https://example.com/avatar.jpg");
    FastCommentsSSO sso = FastCommentsSSO::newSimple(user);
    std::string token = sso.createToken();

    std::cout << "SSO Token: " << token << std::endl;
    return 0;
}

SSO מאובטח

#include <fastcomments/sso/fastcomments_sso.hpp>
#include <iostream>

using namespace fastcomments::sso;

int main() {
    SecureSSOUserData user("user-123", "user@example.com", "johndoe", "https://example.com/avatar.jpg");

    std::string apiKey = "your-api-key";
    FastCommentsSSO sso = FastCommentsSSO::newSecure(apiKey, user);
    std::string token = sso.createToken();

    std::cout << "Secure SSO Token: " << token << std::endl;
    return 0;
}

אגרגציה Internal Link

אגמת מסמכים על ידי קיבוץ שלהם (אם מסופק groupBy) והחלת פעולות מרובות. פעולות שונות (למשל sum, countDistinct, avg, וכו') נתמכות.

Parameters

NameTypeRequiredDescription
tenantIdstringYes
aggregationRequestAggregationRequestYes
optionsconst AggregateOptions&Yes

Response

מחזיר: AggregateResponse

Example

דוגמת איגוד
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3
4AggregationRequest aggregationRequest;
5aggregationRequest.setMetric(U("commentCount"));
6aggregationRequest.setStartDate(U("2023-01-01T00:00:00Z"));
7aggregationRequest.setEndDate(U("2023-12-31T23:59:59Z"));
8aggregationRequest.setFilters({ U("status:approved") });
9
10AggregateOptions options;
11options.limit = boost::optional<int>(100);
12options.includeMetadata = boost::optional<bool>(true);
13
14api->aggregate(tenantId, aggregationRequest, options)
15 .then([](pplx::task<std::shared_ptr<AggregateResponse>> task) {
16 try {
17 auto response = task.get();
18 // process response
19 } catch (const std::exception& e) {
20 // handle error
21 }
22 });
23

קבלת יומני ביקורת Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
optionsconst GetAuditLogsOptions&Yes

תגובה

מחזיר: GetAuditLogsResponse

דוגמה

דוגמת getAuditLogs
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3
4GetAuditLogsOptions options;
5options.startDate = boost::optional<utility::datetime>(utility::datetime::from_string(U("2023-01-01T00:00:00Z"), utility::datetime::RFC_1123));
6options.endDate = boost::optional<utility::datetime>(utility::datetime::from_string(U("2023-01-31T23:59:59Z"), utility::datetime::RFC_1123));
7options.limit = boost::optional<int>(100);
8
9api->getAuditLogs(tenantId, options).then([](pplx::task<std::shared_ptr<GetAuditLogsResponse>> t) {
10 try {
11 auto response = t.get();
12 // השתמש בתגובה
13 } catch (const std::exception& e) {
14 // טיפול בשגיאה
15 }
16});
17

התנתקות ציבורית Internal Link

תגובה

מחזיר: APIEmptyResponse

דוגמה

דוגמת logoutPublic
Copy Copy
1
2api->logoutPublic()
3 .then([](std::shared_ptr<APIEmptyResponse> /*resp*/) {
4 std::cout << "Logout successful\n";
5 })
6 .then([](pplx::task<void> t) {
7 try {
8 t.get();
9 } catch (const std::exception& e) {
10 std::cerr << "Logout failed: " << e.what() << std::endl;
11 }
12 });
13

חסימה מתוך תגובה (ציבורי) Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
commentIdstringYes
publicBlockFromCommentParamsPublicBlockFromCommentParamsYes
ssostringNo

תגובה

מחזיר: BlockSuccess

דוגמה

blockFromCommentPublic דוגמה
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto commentId = utility::conversions::to_string_t("comment-987654");
4PublicBlockFromCommentParams blockParams;
5blockParams.reason = utility::conversions::to_string_t("spam");
6blockParams.durationHours = 24;
7boost::optional<utility::string_t> sso = utility::conversions::to_string_t("sso-token-abc123");
8api->blockFromCommentPublic(tenantId, commentId, blockParams, sso)
9 .then([](std::shared_ptr<BlockSuccess> result){
10 auto successCopy = std::make_shared<BlockSuccess>(*result);
11 });
12

ביטול חסימה של תגובה (ציבורי) Internal Link

פרמטרים

שםסוגהכרחיתיאור
tenantIdstringYes
commentIdstringYes
publicBlockFromCommentParamsPublicBlockFromCommentParamsYes
ssostringNo

תגובה

מחזיר: UnblockSuccess

דוגמה

unBlockCommentPublic דוגמה
Copy Copy
1
2auto blockParams = PublicBlockFromCommentParams();
3blockParams.reason = U("spam");
4api->unBlockCommentPublic(
5 U("my-tenant-123"),
6 U("comment-789"),
7 blockParams,
8 boost::optional<utility::string_t>(U("sso-token-abc"))
9).then([](std::shared_ptr<UnblockSuccess> result){ });
10

בדיקת תגובות לחסימה Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
commentIdsstringYes
ssostringNo

תגובה

מחזיר: CheckBlockedCommentsResponse

דוגמה

checkedCommentsForBlocked דוגמה
Copy Copy
1
2auto tenantId = U("my-tenant-123");
3auto commentIds = U("cmt-001,cmt-002");
4boost::optional<utility::string_t> sso = U("user@example.com");
5
6api->checkedCommentsForBlocked(tenantId, commentIds, sso).then([](std::shared_ptr<CheckBlockedCommentsResponse> resp){
7 (void)resp;
8});
9

חסימת משתמש מתוך תגובה Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
idstringכן
blockFromCommentParamsBlockFromCommentParamsכן
optionsconst BlockUserFromCommentOptions&כן

תגובה

מחזיר: BlockSuccess

דוגמה

דוגמה של blockUserFromComment
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto commentId = utility::conversions::to_string_t("comment-789");
4BlockFromCommentParams params;
5params.reason = utility::conversions::to_string_t("Inappropriate content");
6params.durationDays = boost::optional<int>(30);
7BlockUserFromCommentOptions options;
8options.notifyUser = boost::optional<bool>(true);
9
10api->blockUserFromComment(tenantId, commentId, params, options)
11 .then([](std::shared_ptr<BlockSuccess> result){ })
12 .then([](pplx::task<void> t){ try { t.get(); } catch (const std::exception&) { } });
13

יצירת תגובה (ציבורי) Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
urlIdstringYes
broadcastIdstringYes
commentDataCommentDataYes
optionsconst CreateCommentPublicOptions&Yes

תגובה

מחזיר: SaveCommentsResponseWithPresence

דוגמה

דוגמת createCommentPublic
Copy Copy
1
2auto comment = CommentData();
3comment.body = U("This is a test comment");
4comment.authorName = U("John Doe");
5comment.authorEmail = U("john.doe@example.com");
6
7CreateCommentPublicOptions opts;
8opts.replyToCommentId = boost::optional<utility::string_t>(U("parent-123"));
9
10api->createCommentPublic(
11 U("my-tenant-123"),
12 U("article-456"),
13 U("broadcast-789"),
14 comment,
15 opts).then([](std::shared_ptr<SaveCommentsResponseWithPresence> res){
16 auto commentId = res->commentId;
17 });
18

מחיקת תגובה Internal Link

פרמטרים

שםסוגחובהתיאור
tenantIdstringYes
idstringYes
optionsconst DeleteCommentOptions&Yes

תגובה

מחזיר: DeleteCommentResult

דוגמה

דוגמה למחיקת תגובה
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto commentId = utility::conversions::to_string_t("comment-789");
4DeleteCommentOptions options;
5options.reason = boost::optional<utility::string_t>(utility::conversions::to_string_t("Inappropriate content"));
6options.force = boost::optional<bool>(true);
7api->deleteComment(tenantId, commentId, options).then([](pplx::task<std::shared_ptr<DeleteCommentResult>> task){
8 try{
9 auto result = task.get();
10 }catch(const std::exception&){
11 }
12});
13

מחיקת תגובה (ציבורי) Internal Link

פרמטרים

שםסוגחובהתיאור
tenantIdstringכן
commentIdstringכן
broadcastIdstringכן
optionsconst DeleteCommentPublicOptions&כן

תגובה

מחזיר: PublicAPIDeleteCommentResponse

דוגמה

דוגמת deleteCommentPublic
Copy Copy
1
2auto tenantId = utility::string_t(U("my-tenant-123"));
3auto commentId = utility::string_t(U("comment-456"));
4auto broadcastId = utility::string_t(U("broadcast-789"));
5DeleteCommentPublicOptions options;
6options.force = boost::optional<bool>(true);
7options.reason = boost::optional<utility::string_t>(U("Inappropriate content"));
8api->deleteCommentPublic(tenantId, commentId, broadcastId, options)
9 .then([](pplx::task<std::shared_ptr<PublicAPIDeleteCommentResponse>> t){
10 try{
11 auto resp = t.get();
12 }catch(const std::exception& e){
13 }
14 });
15

מחיקת הצבעת תגובה Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
commentIdstringכן
voteIdstringכן
urlIdstringכן
broadcastIdstringכן
optionsconst DeleteCommentVoteOptions&כן

תגובה

מחזיר: VoteDeleteResponse

דוגמה

דוגמת deleteCommentVote
Copy Copy
1
2auto options = DeleteCommentVoteOptions{};
3options.reason = boost::optional<utility::string_t>(U("spam"));
4options.adminOverride = boost::optional<bool>(true);
5
6api->deleteCommentVote(
7 U("my-tenant-123"),
8 U("cmt-456789"),
9 U("vote-987"),
10 U("url-abc123"),
11 U("broadcast-001"),
12 options
13).then([](std::shared_ptr<VoteDeleteResponse> resp){
14 if (resp) {
15 std::cout << "Deleted vote, code: " << resp->code << std::endl;
16 }
17});
18

סימון תגובה (דיווח) Internal Link

פרמטרים

שםסוגמחויבתיאור
tenantIdstringYes
idstringYes
optionsconst FlagCommentOptions&Yes

תגובה

מחזיר: FlagCommentResponse

דוגמה

דוגמת flagComment
Copy Copy
1
2auto opts = std::make_shared<FlagCommentOptions>();
3opts->reason = utility::conversions::to_string_t("spam");
4opts->note = boost::optional<utility::string_t>(utility::conversions::to_string_t("User posted duplicate links"));
5
6api->flagComment(utility::conversions::to_string_t("my-tenant-123"),
7 utility::conversions::to_string_t("comment-456"),
8 *opts)
9 .then([](pplx::task<std::shared_ptr<FlagCommentResponse>> t) {
10 auto resp = t.get();
11 });
12

קבלת תגובה Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
idstringYes

תגובה

מחזיר: APIGetCommentResponse

דוגמה

דוגמת getComment
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto commentId = utility::conversions::to_string_t("comment-456");
4boost::optional<int> maxDepth = boost::none;
5api->getComment(tenantId, commentId).then([](pplx::task<std::shared_ptr<APIGetCommentResponse>> t){
6 try{
7 auto resp = t.get();
8 }catch(const std::exception&){
9 }
10});
11

קבלת תגובות Internal Link

פרמטרים

שםסוגחובהתיאור
tenantIdstringYes
optionsconst GetCommentsOptions&Yes

תגובה

מחזיר: APIGetCommentsResponse

דוגמה

getComments דוגמה
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3GetCommentsOptions options;
4options.page = 1;
5options.limit = 50;
6options.sort = U("newest");
7options.authorEmail = boost::optional<utility::string_t>(U("user@example.com"));
8api->getComments(tenantId, options).then([](pplx::task<std::shared_ptr<APIGetCommentsResponse>> task) {
9 try {
10 auto response = task.get();
11 // השתמש בתגובה לפי הצורך
12 } catch (const std::exception& e) {
13 // טיפול בשגיאה
14 }
15});
16

קבלת תגובות (ציבורי) Internal Link


req tenantId urlId

פרמטרים

NameTypeRequiredDescription
tenantIdstringYes
urlIdstringYes
optionsconst GetCommentsPublicOptions&Yes

תגובה

מחזיר: GetCommentsResponseWithPresence_PublicComment_

דוגמה

דוגמת getCommentsPublic
Copy Copy
1
2auto tenantId = U("my-tenant-123");
3auto urlId = U("article-456");
4GetCommentsPublicOptions opts;
5opts.pageSize = 20;
6opts.includeDeleted = false;
7api->getCommentsPublic(tenantId, urlId, opts).then([](std::shared_ptr<GetCommentsResponseWithPresence_PublicComment_> resp) {
8 (void)resp;
9});
10

קבלת טקסט תגובה Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
commentIdstringכן
optionsconst GetCommentTextOptions&כן

תגובה

מחזיר: PublicAPIGetCommentTextResponse

דוגמה

דוגמת getCommentText
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3utility::string_t commentId = U("cmt-456789");
4auto options = std::make_shared<GetCommentTextOptions>();
5options->language = boost::optional<utility::string_t>(U("en"));
6options->includeDeleted = boost::optional<bool>(false);
7api->getCommentText(tenantId, commentId, *options).then([](pplx::task<std::shared_ptr<PublicAPIGetCommentTextResponse>> task){
8 try{
9 auto response = task.get();
10 (void)response;
11 }catch(...){}
12});
13

קבלת שמות משתמשים שהצביעו על תגובה Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
commentIdstringכן
dirint32_tכן
ssostringלא

תגובה

מחזיר: GetCommentVoteUserNamesSuccessResponse

דוגמה

getCommentVoteUserNames דוגמה
Copy Copy
1
2auto task = api->getCommentVoteUserNames(
3 utility::conversions::to_string_t("my-tenant-123"),
4 utility::conversions::to_string_t("comment-456"),
5 static_cast<int32_t>(1),
6 boost::optional<utility::string_t>(utility::conversions::to_string_t("sso-token"))
7).then([](pplx::task<std::shared_ptr<GetCommentVoteUserNamesSuccessResponse>> t){
8 try{
9 auto response = t.get();
10 }catch(const std::exception&){ }
11});
12

נעילת תגובה Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
commentIdstringכן
broadcastIdstringכן
ssostringלא

תגובה

מחזיר: APIEmptyResponse

דוגמה

דוגמה של lockComment
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto commentId = utility::conversions::to_string_t("comment-987");
4auto broadcastId = utility::conversions::to_string_t("broadcast-654");
5boost::optional<utility::string_t> sso = utility::conversions::to_string_t("sso-token-xyz");
6
7api->lockComment(tenantId, commentId, broadcastId, sso).then([](pplx::task<std::shared_ptr<APIEmptyResponse>> task){
8 try{
9 auto response = task.get();
10 }catch(const std::exception&){
11 }
12});
13

הצמדה של תגובה Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
commentIdstringYes
broadcastIdstringYes
ssostringNo

תגובה

מחזיר: ChangeCommentPinStatusResponse

דוגמה

pinComment דוגמה
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3utility::string_t commentId = U("comment-456");
4utility::string_t broadcastId = U("broadcast-789");
5boost::optional<utility::string_t> sso = U("sso-token-abc");
6
7api->pinComment(tenantId, commentId, broadcastId, sso)
8 .then([](pplx::task<std::shared_ptr<ChangeCommentPinStatusResponse>> task) {
9 try {
10 auto response = task.get();
11 } catch (const std::exception&) {
12 }
13 });
14

שמירת תגובה Internal Link

פרמטרים

שםסוגחובהתיאור
tenantIdstringכן
createCommentParamsCreateCommentParamsכן
optionsconst SaveCommentOptions&כן

תגובה

מחזיר: APISaveCommentResponse

דוגמה

דוגמת saveComment
Copy Copy
1
2CreateCommentParams commentParams;
3commentParams.body = utility::string_t(U("Great article!"));
4commentParams.author = utility::string_t(U("jane.doe@example.com"));
5commentParams.parentId = boost::optional<utility::string_t>(utility::string_t(U("parent-789")));
6
7SaveCommentOptions options;
8options.preview = boost::optional<bool>(false);
9
10api->saveComment(utility::string_t(U("my-tenant-123")), commentParams, options)
11 .then([](std::shared_ptr<APISaveCommentResponse> response) {
12 auto commentId = response->commentId;
13 });
14

קביעת טקסט תגובה Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
commentIdstringYes
broadcastIdstringYes
commentTextUpdateRequestCommentTextUpdateRequestYes
optionsconst SetCommentTextOptions&Yes

תגובה

מחזיר: PublicAPISetCommentTextResponse

דוגמה

setCommentText דוגמה
Copy Copy
1
2auto tenantId = U("my-tenant-123");
3auto commentId = U("cmt-456");
4auto broadcastId = U("brd-789");
5
6CommentTextUpdateRequest updateReq;
7updateReq.text = U("Updated comment content");
8updateReq.isEdited = boost::make_optional(true);
9
10SetCommentTextOptions opts;
11opts.notifySubscribers = boost::make_optional(true);
12
13api->setCommentText(tenantId, commentId, broadcastId, updateReq, opts)
14 .then([](std::shared_ptr<PublicAPISetCommentTextResponse> resp) {
15 });
16

ביטול חסימת משתמש מתוך תגובה Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
idstringYes
unBlockFromCommentParamsUnBlockFromCommentParamsYes
optionsconst UnBlockUserFromCommentOptions&Yes

תגובה

מחזיר: UnblockSuccess

דוגמה

unBlockUserFromComment דוגמה
Copy Copy
1
2auto params = std::make_shared<UnBlockFromCommentParams>();
3params->commentId = U("cmt-12345");
4params->reason = U("resolved");
5UnBlockUserFromCommentOptions opts;
6opts.notifyUser = boost::optional<bool>(true);
7api->unBlockUserFromComment(U("my-tenant-123"), U("user-456"), *params, opts)
8 .then([](pplx::task<std::shared_ptr<UnblockSuccess>> t){
9 try{
10 auto result = t.get();
11 }catch(...){}
12 });
13

ביטול סימון תגובה Internal Link

פרמטרים

שםסוגהכרחיתיאור
tenantIdstringYes
idstringYes
optionsconst UnFlagCommentOptions&Yes

תגובה

מחזיר: FlagCommentResponse

דוגמה

דוגמת unFlagComment
Copy Copy
1
2auto options = UnFlagCommentOptions{};
3options.reason = boost::optional<utility::string_t>(U("Resolved by moderator"));
4api->unFlagComment(U("my-tenant-123"), U("comment-456"), options)
5 .then([](std::shared_ptr<FlagCommentResponse> response) {
6 if (response) {
7 auto status = response->status;
8 // לעבד את המצב אם נדרש
9 }
10 })
11 .then([](pplx::task<void> previous) {
12 try {
13 previous.get();
14 } catch (const std::exception& e) {
15 // טיפול בחריגה
16 }
17 });
18

שחרור נעילת תגובה Internal Link

פרמטרים

שםסוגחובהתיאור
tenantIdstringכן
commentIdstringכן
broadcastIdstringכן
ssostringלא

תגובה

מחזיר: APIEmptyResponse

דוגמה

דוגמה של unLockComment
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto commentId = utility::conversions::to_string_t("cmt-456789");
4auto broadcastId = utility::conversions::to_string_t("broadcast-001");
5boost::optional<utility::string_t> sso = utility::conversions::to_string_t("john.doe@example.com");
6
7api->unLockComment(tenantId, commentId, broadcastId, sso).then([](pplx::task<std::shared_ptr<APIEmptyResponse>> task) {
8 try {
9 auto response = task.get();
10 } catch (const std::exception&) {
11 }
12});
13

הסרת הצמדה של תגובה Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
commentIdstringכן
broadcastIdstringכן
ssostringלא

תגובה

מחזיר: ChangeCommentPinStatusResponse

דוגמה

דוגמת unPinComment
Copy Copy
1
2auto task = api->unPinComment(
3 utility::conversions::to_string_t("my-tenant-123"),
4 utility::conversions::to_string_t("cmt-456789"),
5 utility::conversions::to_string_t("broadcast-001"),
6 boost::optional<utility::string_t>(utility::conversions::to_string_t("user@example.com"))
7);
8task.then([](std::shared_ptr<ChangeCommentPinStatusResponse> resp){
9 auto result = std::make_shared<ChangeCommentPinStatusResponse>(*resp);
10});
11

עדכון תגובה Internal Link

פרמטרים

NameTypeRequiredDescription
tenantIdstringYes
idstringYes
updatableCommentParamsUpdatableCommentParamsYes
optionsconst UpdateCommentOptions&Yes

תגובה

מחזיר: APIEmptyResponse

דוגמה

updateComment דוגמה
Copy Copy
1
2auto tenantId = utility::string_t("my-tenant-123");
3auto commentId = utility::string_t("cmt-789");
4UpdatableCommentParams updatable;
5updatable.body = utility::string_t("Edited comment content");
6updatable.isSpam = boost::optional<bool>(false);
7UpdateCommentOptions options;
8options.notify = boost::optional<bool>(true);
9api->updateComment(tenantId, commentId, updatable, options)
10 .then([](std::shared_ptr<APIEmptyResponse>) {})
11 .then([](pplx::task<void> t) { try { t.get(); } catch(const std::exception&) {} });
12

הצבעה על תגובה Internal Link

Parameters

שםסוגנדרשתיאור
tenantIdstringכן
commentIdstringכן
urlIdstringכן
broadcastIdstringכן
voteBodyParamsVoteBodyParamsכן
optionsconst VoteCommentOptions&כן

Response

מחזיר: VoteResponse

דוגמה

voteComment דוגמה
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto commentId = utility::conversions::to_string_t("comment-7890");
4auto urlId = utility::conversions::to_string_t("article-456");
5auto broadcastId = utility::conversions::to_string_t("broadcast-321");
6
7VoteBodyParams voteParams;
8voteParams.upvote = true;
9voteParams.note = boost::optional<utility::string_t>(utility::conversions::to_string_t("Great insight"));
10
11VoteCommentOptions options;
12options.dryRun = boost::optional<bool>(false);
13
14api->voteComment(tenantId, commentId, urlId, broadcastId, voteParams, options)
15 .then([](pplx::task<std::shared_ptr<VoteResponse>> t) {
16 try {
17 auto response = t.get();
18 // טיפול בתגובה
19 } catch (const std::exception&) {
20 }
21 });
22

קבלת תגובות עבור משתמש Internal Link

פרמטרים

שםסוגנדרשתיאור
optionsconst GetCommentsForUserOptions&כן

תגובה

מחזיר: GetCommentsForUserResponse

דוגמה

getCommentsForUser דוגמה
Copy Copy
1
2auto options = GetCommentsForUserOptions{
3 utility::conversions::to_string_t("my-tenant-123"),
4 utility::conversions::to_string_t("user@example.com"),
5 boost::optional<int>(50),
6 boost::optional<utility::string_t>(utility::conversions::to_string_t("next-page-token"))
7};
8
9api->getCommentsForUser(options).then([](pplx::task<std::shared_ptr<GetCommentsForUserResponse>> task){
10 try{
11 auto response = task.get();
12 }catch(const std::exception&){}
13});
14

הוספת הגדרת דומיין Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
addDomainConfigParamsAddDomainConfigParamsכן

תגובה

מחזיר: AddDomainConfigResponse

דוגמה

דוגמת addDomainConfig
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3AddDomainConfigParams params;
4params.domain = U("example.com");
5params.adminEmail = U("admin@example.com");
6params.notes = boost::optional<utility::string_t>(U("Primary domain"));
7api->addDomainConfig(tenantId, params).then([](pplx::task<std::shared_ptr<AddDomainConfigResponse>> task){
8 try{
9 auto response = task.get();
10 }catch(const std::exception&){
11 }
12});
13

מחיקת הגדרת דומיין Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
domainstringכן

תגובה

מחזיר: DeleteDomainConfigResponse

דוגמה

דוגמת deleteDomainConfig
Copy Copy
1
2boost::optional<utility::string_t> optTenant = U("my-tenant-123");
3boost::optional<utility::string_t> optDomain = U("example.com");
4
5api->deleteDomainConfig(optTenant.value(), optDomain.value())
6 .then([](pplx::task<std::shared_ptr<DeleteDomainConfigResponse>> task) {
7 try {
8 auto response = task.get();
9 } catch (const std::exception&) {
10 }
11 });
12

קבלת הגדרת דומיין Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
domainstringYes

תגובה

מחזיר: GetDomainConfigResponse

דוגמה

דוגמת getDomainConfig
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3utility::string_t domain = U("myblog.example.com");
4
5api->getDomainConfig(tenantId, domain)
6 .then([](std::shared_ptr<GetDomainConfigResponse> response) {
7 if (!response) return;
8 boost::optional<bool> moderationEnabled = response->moderationEnabled;
9 boost::optional<std::string> theme = response->theme;
10 if (moderationEnabled && *moderationEnabled) {
11 // לטפל במודרציה מופעלת
12 }
13 if (theme) {
14 // להשתמש בערך של theme
15 }
16 })
17 .wait();
18

קבלת הגדרות דומיין Internal Link

Parameters

NameTypeRequiredDescription
tenantIdstringYes

Response

Returns: GetDomainConfigsResponse

דוגמה

getDomainConfigs דוגמה
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3boost::optional<utility::string_t> optionalTenant = tenantId;
4api->getDomainConfigs(optionalTenant.value())
5 .then([](std::shared_ptr<GetDomainConfigsResponse> response) {
6 auto domains = response->getDomainList();
7 for (const auto& d : domains) {
8 std::cout << d << std::endl;
9 }
10 });
11

שינוי חלקי של הגדרת דומיין Internal Link

פרמטרים

שםסוגחובהתיאור
tenantIdstringYes
domainToUpdatestringYes
patchDomainConfigParamsPatchDomainConfigParamsYes

תגובה

מחזיר: PatchDomainConfigResponse

דוגמה

patchDomainConfig דוגמה
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto domainToUpdate = utility::conversions::to_string_t("example.com");
4PatchDomainConfigParams patchDomainConfigParams;
5patchDomainConfigParams.enableComments = boost::optional<bool>(true);
6patchDomainConfigParams.moderationLevel = boost::optional<int>(2);
7patchDomainConfigParams.customHeader = boost::optional<utility::string_t>(utility::conversions::to_string_t("X-Custom-Header"));
8
9api->patchDomainConfig(tenantId, domainToUpdate, patchDomainConfigParams)
10 .then([](std::shared_ptr<PatchDomainConfigResponse> resp) {
11 // טיפול בהצלחה
12 })
13 .then([](pplx::task<void> t) {
14 try { t.get(); } catch (const std::exception& e) { /* טיפול בשגיאה */ }
15 });
16

החלפת הגדרת דומיין Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
domainToUpdatestringכן
updateDomainConfigParamsUpdateDomainConfigParamsכן

תגובה

מחזיר: PutDomainConfigResponse

דוגמה

דוגמת putDomainConfig
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3utility::string_t domainToUpdate = U("example.com");
4UpdateDomainConfigParams updateParams;
5updateParams.enableComments = true;
6updateParams.moderationLevel = boost::optional<int>(2);
7updateParams.customCss = boost::optional<utility::string_t>(U(".fc-comment{color:red;}"));
8api->putDomainConfig(tenantId, domainToUpdate, updateParams)
9 .then([](std::shared_ptr<PutDomainConfigResponse> resp) {
10 });
11

יצירת תבנית אימייל Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
createEmailTemplateBodyCreateEmailTemplateBodyYes

תגובה

מחזיר: CreateEmailTemplateResponse

דוגמה

createEmailTemplate דוגמה
Copy Copy
1
2auto body = std::make_shared<CreateEmailTemplateBody>();
3body->subject = utility::string_t("Welcome Email");
4body->htmlContent = utility::string_t("<h1>Welcome!</h1><p>Thanks for joining.</p>");
5body->fromEmail = utility::string_t("no-reply@myapp.com");
6body->replyTo = boost::optional<utility::string_t>(utility::string_t("support@myapp.com"));
7body->cc = boost::none;
8api->createEmailTemplate(utility::string_t("my-tenant-123"), *body)
9 .then([](std::shared_ptr<CreateEmailTemplateResponse> resp) {
10 std::cout << "Created template ID: " << resp->id << std::endl;
11 });
12

מחיקת תבנית אימייל Internal Link

פרמטרים

שםסוגחובהתיאור
tenantIdstringYes
idstringYes

תגובה

מחזיר: APIEmptyResponse

דוגמה

deleteEmailTemplate דוגמה
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto templateId = utility::conversions::to_string_t("welcome-email-template");
4boost::optional<utility::string_t> optTenantId = tenantId;
5boost::optional<utility::string_t> optTemplateId = templateId;
6api->deleteEmailTemplate(optTenantId.value(), optTemplateId.value())
7 .then([](pplx::task<std::shared_ptr<APIEmptyResponse>> t) {
8 try { t.get(); }
9 catch (const std::exception&) {}
10 });
11

מחיקת שגיאת רינדור של תבנית אימייל Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
idstringYes
errorIdstringYes

תגובה

מחזיר: APIEmptyResponse

דוגמה

דוגמת deleteEmailTemplateRenderError
Copy Copy
1
2boost::optional<utility::string_t> optTemplateId = utility::conversions::to_string_t("template-456");
3api->deleteEmailTemplateRenderError(
4 utility::conversions::to_string_t("my-tenant-123"),
5 *optTemplateId,
6 utility::conversions::to_string_t("error-789"))
7 .then([](std::shared_ptr<APIEmptyResponse>) {})
8 .then([](pplx::task<void> t) {
9 try { t.get(); } catch (...) {}
10 });
11

קבלת תבנית אימייל Internal Link

Parameters

שםסוגנדרשתיאור
tenantIdstringYes
idstringYes

Response

מחזיר: GetEmailTemplateResponse

Example

דוגמת getEmailTemplate
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto templateId = utility::conversions::to_string_t("welcome-email");
4boost::optional<utility::string_t> language = utility::conversions::to_string_t("en-US");
5
6api->getEmailTemplate(tenantId, templateId)
7 .then([=](pplx::task<std::shared_ptr<GetEmailTemplateResponse>> task) {
8 try {
9 auto response = task.get();
10 } catch (const std::exception&) {
11 }
12 });
13

קבלת הגדרות תבניות אימייל Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן

תגובה

מחזיר: GetEmailTemplateDefinitionsResponse

דוגמה

דוגמה של getEmailTemplateDefinitions
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3api->getEmailTemplateDefinitions(tenantId).then([](pplx::task<std::shared_ptr<GetEmailTemplateDefinitionsResponse>> t) {
4 try {
5 auto resp = t.get();
6 boost::optional<utility::string_t> tmplName = resp ? resp->templateName : boost::none;
7 if (tmplName) {
8 std::cout << *tmplName << std::endl;
9 }
10 } catch (const std::exception& e) {
11 std::cerr << e.what() << std::endl;
12 }
13});
14

קבלת שגיאות רינדור של תבניות אימייל Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
idstringכן
skipdoubleלא

תגובה

מחזיר: GetEmailTemplateRenderErrorsResponse

דוגמה

דוגמת getEmailTemplateRenderErrors
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3utility::string_t id = U("email-template-789");
4boost::optional<double> skip = 20.0;
5
6api->getEmailTemplateRenderErrors(tenantId, id, skip)
7 .then([](pplx::task<std::shared_ptr<GetEmailTemplateRenderErrorsResponse>> task) {
8 try {
9 auto response = task.get();
10 // השתמש בתגובה לפי הצורך
11 } catch (const std::exception& ex) {
12 // טיפול בשגיאה
13 }
14 });
15

קבלת תבניות אימייל Internal Link


פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
skipdoubleNo

תגובה

מחזיר: GetEmailTemplatesResponse

דוגמה

דוגמה של getEmailTemplates
Copy Copy
1
2auto tenantId = utility::string_t(U("my-tenant-123"));
3boost::optional<double> skip = 10.0;
4api->getEmailTemplates(tenantId, skip)
5 .then([](std::shared_ptr<GetEmailTemplatesResponse> resp) {
6 (void)resp;
7 });
8

רינדור תבנית אימייל Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
renderEmailTemplateBodyRenderEmailTemplateBodyכן
localestringלא

תגובה

מחזיר: RenderEmailTemplateResponse

דוגמה

renderEmailTemplate דוגמה
Copy Copy
1
2auto body = RenderEmailTemplateBody();
3body.templateId = U("welcome-email");
4body.recipientEmail = U("user@example.com");
5boost::optional<utility::string_t> locale = U("en-US");
6
7api->renderEmailTemplate(U("my-tenant-123"), body, locale)
8 .then([](std::shared_ptr<RenderEmailTemplateResponse> resp) {
9 std::cout << "Email template rendered successfully\n";
10 });
11

עדכון תבנית אימייל Internal Link

Parameters

NameTypeRequiredDescription
tenantIdstringכן
idstringכן
updateEmailTemplateBodyUpdateEmailTemplateBodyכן

Response

מחזיר: APIEmptyResponse

Example

דוגמת updateEmailTemplate
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3utility::string_t templateId = U("welcome-email");
4UpdateEmailTemplateBody body;
5body.subject = U("Welcome to Our Platform");
6body.content = U("<p>Hello \{{userName}}, welcome aboard!</p>");
7body.isActive = boost::optional<bool>(true);
8api->updateEmailTemplate(tenantId, templateId, body)
9 .then([](std::shared_ptr<APIEmptyResponse> response) {
10 // טיפול בהצלחה
11 })
12 .then([](pplx::task<void> t) {
13 try { t.get(); } catch (const std::exception &) { /* טיפול בשגיאה */ }
14 });
15

קבלת יומן אירועים Internal Link

req tenantId urlId userIdWS

פרמטרים

NameTypeRequiredDescription
tenantIdstringYes
urlIdstringYes
userIdWSstringYes
startTimeint64_tYes
endTimeint64_tNo

תשובה

מחזיר: GetEventLogResponse

דוגמה

דוגמת getEventLog
Copy Copy
1
2auto startTime = int64_t(1622505600);
3boost::optional<int64_t> endTime = int64_t(1622592000);
4api->getEventLog(U("my-tenant-123"), U("article-456"), U("user@example.com"), startTime, endTime)
5 .then([](std::shared_ptr<GetEventLogResponse> response){
6 auto copy = std::make_shared<GetEventLogResponse>(*response);
7 (void)copy;
8 });
9

קבלת יומן אירועים גלובלי Internal Link

req tenantId urlId userIdWS

פרמטרים

NameTypeRequiredDescription
tenantIdstringYes
urlIdstringYes
userIdWSstringYes
startTimeint64_tYes
endTimeint64_tNo

תגובה

Returns: GetEventLogResponse

דוגמה

דוגמת getGlobalEventLog
Copy Copy
1
2api->getGlobalEventLog(
3 U("my-tenant-123"),
4 U("article-456"),
5 U("user@example.com"),
6 1622505600,
7 boost::optional<int64_t>(1625097600)
8).then([](std::shared_ptr<GetEventLogResponse> resp) {
9 (void)resp;
10});
11

יצירת פוסט פיד Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
createFeedPostParamsCreateFeedPostParamsYes
optionsconst CreateFeedPostOptions&Yes

תגובה

מחזיר: CreateFeedPostsResponse

דוגמה

createFeedPost דוגמה
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3CreateFeedPostParams postParams;
4postParams.content = utility::conversions::to_string_t("Excited to join FastComments!");
5postParams.authorEmail = utility::conversions::to_string_t("user@example.com");
6postParams.title = utility::conversions::to_string_t("My First Post");
7postParams.tags = boost::optional<std::vector<utility::string_t>>({ utility::conversions::to_string_t("intro") });
8
9CreateFeedPostOptions options;
10options.notifyFollowers = boost::optional<bool>(true);
11options.scheduledAt = boost::optional<utility::datetime>(utility::datetime::utc_now());
12
13api->createFeedPost(tenantId, postParams, options).then([](std::shared_ptr<CreateFeedPostsResponse> resp) {
14 auto postId = resp->postId;
15});
16

יצירת פוסט פיד (ציבורי) Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
createFeedPostParamsCreateFeedPostParamsכן
optionsconst CreateFeedPostPublicOptions&כן

תגובה

מחזיר: CreateFeedPostResponse

דוגמה

דוגמת createFeedPostPublic
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3
4CreateFeedPostParams params;
5params.title = U("Introducing Our New Feature");
6params.content = U("We are excited to announce the release of our latest update.");
7params.authorEmail = boost::optional<utility::string_t>(U("user@example.com"));
8params.tags = boost::optional<std::vector<utility::string_t>>({U("announcement"), U("release")});
9
10CreateFeedPostPublicOptions options;
11
12api->createFeedPostPublic(tenantId, params, options)
13 .then([](std::shared_ptr<CreateFeedPostResponse> resp) {
14 if (resp) {
15 std::wcout << U("Post created with ID: ") << resp->postId << std::endl;
16 }
17 });
18

מחיקת פוסט פיד (ציבורי) Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
postIdstringYes
optionsconst DeleteFeedPostPublicOptions&Yes

תגובה

מחזיר: DeleteFeedPostPublicResponse

דוגמה

דוגמת deleteFeedPostPublic
Copy Copy
1
2auto opts = std::make_shared<DeleteFeedPostPublicOptions>();
3opts->reason = boost::optional<utility::string_t>(U("Inappropriate content"));
4api->deleteFeedPostPublic(U("my-tenant-123"), U("post-789"), *opts)
5 .then([](std::shared_ptr<DeleteFeedPostPublicResponse> resp) {
6 if (resp && resp->isSuccess()) {
7 // היגיון הצלחה
8 }
9 });
10

קבלת פוסטים Internal Link


req tenantId afterId

פרמטרים

שםסוגחובהתיאור
tenantIdstringYes
optionsconst GetFeedPostsOptions&Yes

תשובה

מחזיר: GetFeedPostsResponse

דוגמה

דוגמת getFeedPosts
Copy Copy
1
2auto opts = std::make_shared<GetFeedPostsOptions>();
3opts->maxResults = boost::optional<int>(50);
4opts->cursor = boost::optional<utility::string_t>(U("next-cursor"));
5api->getFeedPosts(U("my-tenant-123"), *opts).then([](std::shared_ptr<GetFeedPostsResponse> resp) {
6 auto count = resp->posts.size();
7});
8

קבלת פוסטים (ציבורי) Internal Link

req tenantId afterId

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
optionsconst GetFeedPostsPublicOptions&Yes

תשובה

מחזיר: PublicFeedPostsResponse

דוגמה

דוגמת getFeedPostsPublic
Copy Copy
1
2auto options = GetFeedPostsPublicOptions{};
3options.limit = boost::optional<int>{20};
4options.before = boost::optional<utility::string_t>{U("2023-01-01T00:00:00Z")};
5
6api->getFeedPostsPublic(U("my-tenant-123"), options).then([](pplx::task<std::shared_ptr<PublicFeedPostsResponse>> task){
7 try{
8 auto response = task.get();
9 auto processed = std::make_shared<PublicFeedPostsResponse>(*response);
10 // Use processed as needed
11 }catch(const std::exception&){
12 // Handle error
13 }
14});
15

קבלת סטטיסטיקות פוסטים Internal Link

פרמטרים

שםסוגחובהתיאור
tenantIdstringכן
postIdsvector<stringכן
ssostringלא

תגובה

מחזיר: FeedPostsStatsResponse

דוגמה

דוגמת getFeedPostsStats
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3std::vector<utility::string_t> postIds = {
4 utility::conversions::to_string_t("post-001"),
5 utility::conversions::to_string_t("post-002")
6};
7boost::optional<utility::string_t> sso = utility::conversions::to_string_t("user@example.com");
8
9api->getFeedPostsStats(tenantId, postIds, sso)
10 .then([](std::shared_ptr<FeedPostsStatsResponse> response) {
11 (void)response;
12 });
13

קבלת ריאקציות של משתמש (ציבורי) Internal Link


פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
optionsconst GetUserReactsPublicOptions&כן

תגובה

מחזיר: UserReactsResponse

דוגמה

getUserReactsPublic דוגמה
Copy Copy
1
2auto options = GetUserReactsPublicOptions{};
3options.userId = boost::optional<utility::string_t>(U("user@example.com"));
4options.limit = boost::optional<int>(50);
5api->getUserReactsPublic(U("my-tenant-123"), options).then([](pplx::task<std::shared_ptr<UserReactsResponse>> t){
6 auto response = t.get();
7});
8

הוספת ריאקציה לפוסט (ציבורי) Internal Link

Parameters

שםסוגנדרשתיאור
tenantIdstringכן
postIdstringכן
reactBodyParamsReactBodyParamsכן
optionsconst ReactFeedPostPublicOptions&כן

Response

מחזיר: ReactFeedPostResponse

Example

דוגמת reactFeedPostPublic
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto postId = utility::conversions::to_string_t("post-987");
4ReactBodyParams reactBody;
5reactBody.reaction = utility::conversions::to_string_t("love");
6reactBody.userId = utility::conversions::to_string_t("user@example.com");
7ReactFeedPostPublicOptions options;
8options.metadata = boost::optional<utility::string_t>(utility::conversions::to_string_t("mobile"));
9api->reactFeedPostPublic(tenantId, postId, reactBody, options)
10 .then([](std::shared_ptr<ReactFeedPostResponse> resp) {
11 });
12

עדכון פוסט Internal Link

פרמטרים

NameTypeRequiredDescription
tenantIdstringYes
idstringYes
feedPostFeedPostYes

תגובה

Returns: APIEmptyResponse

דוגמה

דוגמת updateFeedPost
Copy Copy
1
2utility::string_t tenantId = U"my-tenant-123";
3utility::string_t postId = U"post-456";
4
5FeedPost feedPost;
6feedPost.title = U"Breaking News";
7feedPost.content = U"Details of the update go here.";
8feedPost.imageUrl = boost::optional<utility::string_t>(U"https://example.com/image.jpg");
9
10api->updateFeedPost(tenantId, postId, feedPost)
11 .then([](pplx::task<std::shared_ptr<APIEmptyResponse>> task) {
12 try {
13 auto response = task.get();
14 } catch (const std::exception& ex) {
15 }
16 });
17

עדכון פוסט (ציבורי) Internal Link

פרמטרים

NameTypeRequiredDescription
tenantIdstringYes
postIdstringYes
updateFeedPostParamsUpdateFeedPostParamsYes
optionsconst UpdateFeedPostPublicOptions&Yes

תשובה

מחזיר: CreateFeedPostResponse

דוגמה

דוגמת updateFeedPostPublic
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3utility::string_t postId = U("post-456");
4UpdateFeedPostParams params;
5params.title = boost::optional<utility::string_t>(U("Updated Title"));
6params.body = boost::optional<utility::string_t>(U("Updated content of the post."));
7UpdateFeedPostPublicOptions options;
8options.notifyFollowers = boost::optional<bool>(true);
9api->updateFeedPostPublic(tenantId, postId, params, options)
10 .then([](std::shared_ptr<CreateFeedPostResponse> resp) {
11 auto result = resp;
12 });
13

סימון תגובה (ציבורי) Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
commentIdstringכן
isFlaggedboolכן
ssostringלא

תגובה

מחזיר: APIEmptyResponse

דוגמה

דוגמת flagCommentPublic
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto commentId = utility::conversions::to_string_t("cmt-456789");
4bool isFlagged = true;
5boost::optional<utility::string_t> sso = utility::conversions::to_string_t("sso-token-abc");
6
7api->flagCommentPublic(tenantId, commentId, isFlagged, sso)
8 .then([](pplx::task<std::shared_ptr<APIEmptyResponse>> t){
9 try{
10 auto resp = t.get();
11 }catch(const std::exception&){
12 }
13 });
14

קבלת GIF גדול Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
largeInternalURLSanitizedstringYes

תגובה

מחזיר: GifGetLargeResponse

דוגמה

דוגמה getGifLarge
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto largeUrl = utility::conversions::to_string_t("https://cdn.example.com/gifs/large/abc123.gif");
4
5api->getGifLarge(tenantId, largeUrl)
6 .then([&](std::shared_ptr<GifGetLargeResponse> resp) {
7 boost::optional<utility::string_t> maybeUrl;
8 if (resp && resp->url) {
9 maybeUrl = resp->url;
10 }
11 if (maybeUrl) {
12 std::wcout << *maybeUrl << std::endl;
13 }
14 });
15

חיפוש גיפים Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
searchstringכן
optionsconst GetGifsSearchOptions&כן

תגובה

מחזירה: GetGifsSearchResponse

דוגמה

דוגמת getGifsSearch
Copy Copy
1
2auto tenantId = U("my-tenant-123");
3auto search = U("funny cats");
4GetGifsSearchOptions options;
5options.limit = boost::optional<int>(10);
6options.rating = boost::optional<utility::string_t>(U("pg"));
7api->getGifsSearch(tenantId, search, options).then([](pplx::task<std::shared_ptr<GetGifsSearchResponse>> task){
8 try{
9 auto response = task.get();
10 }catch(const std::exception&){
11 }
12});
13

גיפים חמים Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
optionsconst GetGifsTrendingOptions&Yes

תגובה

מחזיר: GetGifsTrendingResponse

דוגמה

דוגמה getGifsTrending
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3GetGifsTrendingOptions options;
4options.limit = 10;
5options.rating = boost::optional<utility::string_t>(U("G"));
6api->getGifsTrending(tenantId, options).then([](std::shared_ptr<GetGifsTrendingResponse> response) {
7 for (const auto& gif : response->gifs) {
8 auto url = gif.url;
9 }
10});
11

הוספת האשטאג Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
createHashTagBodyCreateHashTagBodyכן

תגובה

מחזיר: CreateHashTagResponse

דוגמה

addHashTag דוגמה
Copy Copy
1
2CreateHashTagBody request;
3request.tag = utility::conversions::to_string_t("feature-request");
4request.description = utility::conversions::to_string_t("Requests for new features");
5request.relatedUrl = boost::optional<utility::string_t>(utility::conversions::to_string_t("https://example.com/feature-request"));
6
7api->addHashTag(utility::conversions::to_string_t("my-tenant-123"), request)
8 .then([](std::shared_ptr<CreateHashTagResponse> resp) {
9 (void)resp;
10 });
11

הוספת האשטאגים בכמות גדולה Internal Link

פרמטרים

שםסוגחובהתיאור
tenantIdstringכן
bulkCreateHashTagsBodyBulkCreateHashTagsBodyכן

תגובה

מחזיר: BulkCreateHashTagsResponse

דוגמה

addHashTagsBulk דוגמה
Copy Copy
1
2auto tenantId = utility::string_t(U("my-tenant-123"));
3BulkCreateHashTagsBody bulkBody;
4bulkBody.tags = { utility::string_t(U("announcement")), utility::string_t(U("feature-request")) };
5bulkBody.description = boost::optional<utility::string_t>(U("Bulk tag creation"));
6api->addHashTagsBulk(tenantId, bulkBody).then([](pplx::task<std::shared_ptr<BulkCreateHashTagsResponse>> task){
7 try{
8 auto resp = task.get();
9 }catch(const std::exception&){
10 }
11});
12

מחיקת האשטאג Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
tagstringYes
deleteHashTagRequestBodyDeleteHashTagRequestBodyYes

תשובה

מחזיר: APIEmptyResponse

דוגמה

דוגמת deleteHashTag
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-001");
3auto tag = utility::conversions::to_string_t("news");
4DeleteHashTagRequestBody requestBody;
5requestBody.userId = utility::conversions::to_string_t("user-42");
6requestBody.reason = boost::optional<utility::string_t>(utility::conversions::to_string_t("User request"));
7api->deleteHashTag(tenantId, tag, requestBody)
8 .then([](std::shared_ptr<APIEmptyResponse> resp) {
9 });
10

קבלת האשטאגים Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
pagedoubleלא

תגובה

מחזיר: GetHashTagsResponse

דוגמה

דוגמת getHashTags
Copy Copy
1
2auto tenantId = utility::string_t(U("my-tenant-123"));
3boost::optional<double> page = 2.0;
4
5api->getHashTags(tenantId, page).then([](pplx::task<std::shared_ptr<GetHashTagsResponse>> task) {
6 try {
7 auto resultPtr = task.get();
8 auto response = std::make_shared<GetHashTagsResponse>(*resultPtr);
9 // השתמש בתגובה
10 } catch (const std::exception&) {
11 // טיפול בשגיאה
12 }
13});
14

שינוי חלקי של האשטאג Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
tagstringכן
updateHashTagBodyUpdateHashTagBodyכן

תגובה

מחזיר: UpdateHashTagResponse

דוגמה

דוגמת patchHashTag
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3utility::string_t tag = U("important");
4auto body = std::make_shared<UpdateHashTagBody>();
5body->name = U("important-updated");
6body->description = boost::optional<utility::string_t>(U("Updated description"));
7api->patchHashTag(tenantId, tag, *body)
8 .then([](pplx::task<std::shared_ptr<UpdateHashTagResponse>> t){
9 try{
10 auto response = t.get();
11 std::cout << "Updated tag ID: " << response->id << std::endl;
12 }catch(const std::exception& e){
13 std::cerr << "Patch failed: " << e.what() << std::endl;
14 }
15 });
16

מחיקת הצבעת מתן מענה למודרציה Internal Link

Parameters

שםסוגנדרשתיאור
tenantIdstringYes
commentIdstringYes
voteIdstringYes
optionsconst DeleteModerationVoteOptions&Yes

תגובה

מחזירה: VoteDeleteResponse

דוגמה

דוגמה deleteModerationVote
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto commentId = utility::conversions::to_string_t("comment-abc123");
4auto voteId = utility::conversions::to_string_t("vote-xyz789");
5DeleteModerationVoteOptions opts;
6opts.reason = utility::conversions::to_string_t("Offensive language");
7opts.hardDelete = boost::optional<bool>(true);
8api->deleteModerationVote(tenantId, commentId, voteId, opts)
9 .then([](std::shared_ptr<VoteDeleteResponse> resp){});
10

קבלת תגובות דרך API Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
optionsconst GetApiCommentsOptions&Yes

תגובה

מחזיר: ModerationAPIGetCommentsResponse

דוגמה

דוגמת getApiComments
Copy Copy
1
2auto options = GetApiCommentsOptions{};
3options.page = boost::make_optional(2);
4options.authorEmail = boost::make_optional<utility::string_t>(U("user@example.com"));
5options.includeDeleted = boost::make_optional(false);
6
7api->getApiComments(U("my-tenant-123"), options).then([](pplx::task<std::shared_ptr<ModerationAPIGetCommentsResponse>> task){
8 try{
9 auto response = task.get();
10 }catch(const std::exception&){
11 }
12});
13

קבלת מצב יצוא API Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
optionsconst GetApiExportStatusOptions&כן

תגובה

מחזיר: ModerationExportStatusResponse

דוגמה

getApiExportStatus דוגמה
Copy Copy
1
2auto opts = GetApiExportStatusOptions{};
3opts.exportId = boost::make_optional<utility::string_t>(U("export-456"));
4api->getApiExportStatus(U("my-tenant-123"), opts)
5 .then([](pplx::task<std::shared_ptr<ModerationExportStatusResponse>> t){
6 try{
7 auto status = t.get();
8 }catch(const std::exception&){
9 }
10 });
11

קבלת מזהי API Internal Link

פרמטרים

NameTypeRequiredDescription
tenantIdstringYes
optionsconst GetApiIdsOptions&Yes

תגובה

Returns: ModerationAPIGetCommentIdsResponse

דוגמה

דוגמת getApiIds
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3GetApiIdsOptions options;
4options.limit = boost::optional<int>(100);
5options.cursor = boost::optional<utility::string_t>(U("next-page-token"));
6api->getApiIds(tenantId, options).then([](pplx::task<std::shared_ptr<ModerationAPIGetCommentIdsResponse>> t){
7 try{
8 auto response = t.get();
9 auto ids = response->commentIds;
10 }catch(const std::exception&){
11 }
12});
13

קבלת משתמשים שהורחקו מתוך תגובה Internal Link

פרמטרים

שםסוגחובהתיאור
tenantIdstringכן
commentIdstringכן
ssostringלא

תגובה

מחזיר: GetBannedUsersFromCommentResponse

דוגמה

דוגמת getBanUsersFromComment
Copy Copy
1
2auto tenantId = utility::string_t(U("my-tenant-123"));
3auto commentId = utility::string_t(U("comment-456"));
4boost::optional<utility::string_t> sso = boost::make_optional(utility::string_t(U("sso-token-abc")));
5
6api->getBanUsersFromComment(tenantId, commentId, sso).then([](pplx::task<std::shared_ptr<GetBannedUsersFromCommentResponse>> task) {
7 try {
8 auto response = task.get();
9 } catch (const std::exception&) {
10 }
11});
12

קבלת סטטוס חרימת תגובה Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
commentIdstringכן
ssostringלא

תגובה

מחזיר: GetCommentBanStatusResponse

דוגמה

דוגמה getCommentBanStatus
Copy Copy
1
2auto tenantId = utility::string_t(U"my-tenant-123");
3auto commentId = utility::string_t(U"comment-456");
4boost::optional<utility::string_t> sso = utility::string_t(U"user@example.com");
5
6api->getCommentBanStatus(tenantId, commentId, sso).then([](pplx::task<std::shared_ptr<GetCommentBanStatusResponse>> t){
7 try{
8 auto response = t.get();
9 }catch(const std::exception&){ }
10});
11

קבלת תגיות-ילדים של תגובה Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
commentIdstringכן
ssostringלא

תגובה

מחזיר: ModerationAPIChildCommentsResponse

דוגמה

getCommentChildren דוגמה
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3utility::string_t commentId = U("comment-456");
4boost::optional<utility::string_t> sso = U("sso-token-abc");
5
6api->getCommentChildren(tenantId, commentId, sso)
7 .then([](pplx::task<std::shared_ptr<ModerationAPIChildCommentsResponse>> task) {
8 try {
9 auto response = task.get();
10 } catch (const std::exception&) {
11 }
12 });
13

קבלת ספירה Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
optionsconst GetCountOptions&כן

תגובה

מחזיר: ModerationAPICountCommentsResponse

דוגמה

דוגמת getCount
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3GetCountOptions options;
4options.userEmail = boost::optional<utility::string_t>(U("user@example.com"));
5options.maxResults = boost::optional<int>(100);
6api->getCount(tenantId, options).then([](pplx::task<std::shared_ptr<ModerationAPICountCommentsResponse>> task){
7 try{
8 auto resp = task.get();
9 auto copy = std::make_shared<ModerationAPICountCommentsResponse>(*resp);
10 std::cout << "Count: " << copy->count << std::endl;
11 }catch(const std::exception& e){
12 std::cerr << "Error: " << e.what() << std::endl;
13 }
14});
15

קבלת ספירות Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
ssostringNo

תגובה

מחזיר: GetBannedUsersCountResponse

דוגמה

דוגמת getCounts
Copy Copy
1
2api->getCounts(
3 utility::conversions::to_string_t("my-tenant-123"),
4 boost::optional<utility::string_t>(utility::conversions::to_string_t("john.doe@example.com"))
5).then([](pplx::task<std::shared_ptr<GetBannedUsersCountResponse>> t){
6 try{
7 auto response = t.get();
8 }catch(const std::exception&){
9 }
10});
11

קבלת לוגים Internal Link

פרמטרים

NameTypeRequiredDescription
tenantIdstringYes
commentIdstringYes
ssostringNo

תגובה

מחזיר: ModerationAPIGetLogsResponse

דוגמה

דוגמת getLogs
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3utility::string_t commentId = U("comment-456");
4boost::optional<utility::string_t> sso = U("sso-token-abc");
5
6api->getLogs(tenantId, commentId, sso).then([](pplx::task<std::shared_ptr<ModerationAPIGetLogsResponse>> t){
7 try{
8 auto response = t.get();
9 }catch(...){
10 }
11});
12

קבלת תגי ידניים Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
ssostringNo

תגובה

מחזיר: GetTenantManualBadgesResponse

דוגמה

דוגמת getManualBadges
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3boost::optional<utility::string_t> sso = boost::make_optional(U("user@example.com"));
4
5api->getManualBadges(tenantId, sso)
6 .then([](pplx::task<std::shared_ptr<GetTenantManualBadgesResponse>> t) {
7 try {
8 auto response = t.get();
9 // עיבוד תגובה, למשל response->badgeList
10 } catch (const std::exception& ex) {
11 // טיפול בשגיאה
12 }
13 });
14

קבלת תגי ידניים עבור משתמש Internal Link

פרמטרים

שםסוגחובהתיאור
tenantIdstringYes
optionsconst GetManualBadgesForUserOptions&Yes

תגובה

מחזיר: GetUserManualBadgesResponse

דוגמה

דוגמת getManualBadgesForUser
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3GetManualBadgesForUserOptions options;
4options.userEmail = boost::optional<utility::string_t>(U("user@example.com"));
5options.includeInactive = boost::optional<bool>(true);
6api->getManualBadgesForUser(tenantId, options).then([](pplx::task<std::shared_ptr<GetUserManualBadgesResponse>> task){
7 try{
8 auto response = task.get();
9 }catch(const std::exception&){
10 }
11});
12

קבלת תג מידור Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
commentIdstringכן
optionsconst GetModerationCommentOptions&כן

תשובה

מחזיר: ModerationAPICommentResponse

דוגמה

getModerationComment דוגמה
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto commentId = utility::conversions::to_string_t("comment-456");
4GetModerationCommentOptions options;
5options.includeDeleted = boost::optional<bool>(true);
6options.locale = boost::optional<utility::string_t>(utility::conversions::to_string_t("en-US"));
7api->getModerationComment(tenantId, commentId, options)
8 .then([](pplx::task<std::shared_ptr<ModerationAPICommentResponse>> task) {
9 try {
10 auto response = task.get();
11 // לעבד את התגובה לפי הצורך
12 } catch (const std::exception& ex) {
13 // טיפול בשגיאה
14 }
15 });
16

קבלת טקסט תג מידור Internal Link

פרמטרים

שםסוגחובהתיאור
tenantIdstringYes
commentIdstringYes
ssostringNo

תשובה

מחזיר: GetCommentTextResponse

דוגמה

דוגמה של getModerationCommentText
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3utility::string_t commentId = U("cmt-987654");
4boost::optional<utility::string_t> sso = U("sso-token-abc");
5
6api->getModerationCommentText(tenantId, commentId, sso)
7 .then([](pplx::task<std::shared_ptr<GetCommentTextResponse>> t) {
8 try {
9 auto resp = t.get();
10 auto text = std::make_shared<std::string>(resp->commentText);
11 } catch (const std::exception&) {
12 }
13 });
14

קבלת סיכום טרום-חרימה Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
commentIdstringYes
optionsconst GetPreBanSummaryOptions&Yes

תגובה

מחזיר: PreBanSummary

דוגמה

דוגמת getPreBanSummary
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto commentId = utility::conversions::to_string_t("cmt-456789");
4GetPreBanSummaryOptions options;
5options.locale = boost::optional<utility::string_t>{utility::conversions::to_string_t("en-US")};
6
7api->getPreBanSummary(tenantId, commentId, options)
8 .then([](pplx::task<std::shared_ptr<PreBanSummary>> t) {
9 try {
10 auto summary = t.get();
11 // עיבוד סיכום
12 } catch (const std::exception&) {
13 // טיפול בשגיאה
14 }
15 });
16

קבלת סיכום חיפוש תגובות Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
optionsconst GetSearchCommentsSummaryOptions&כן

תגובה

מחזיר: ModerationCommentSearchResponse

דוגמה

דוגמת getSearchCommentsSummary
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto options = std::make_shared<GetSearchCommentsSummaryOptions>();
4options->query = utility::conversions::to_string_t("spam");
5options->pageSize = boost::optional<int>(50);
6options->pageNumber = boost::optional<int>(1);
7options->fromDate = boost::none;
8api->getSearchCommentsSummary(tenantId, *options).then([](pplx::task<std::shared_ptr<ModerationCommentSearchResponse>> task){
9 try{
10 auto response = task.get();
11 }catch(const std::exception&){
12 }
13});
14

קבלת דפי חיפוש Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
optionsconst GetSearchPagesOptions&כן

תגובה

מחזיר: ModerationPageSearchResponse

דוגמה

getSearchPages דוגמה
Copy Copy
1
2GetSearchPagesOptions options;
3options.pageNumber = boost::optional<int>(1);
4options.pageSize = boost::optional<int>(50);
5options.searchTerm = boost::optional<utility::string_t>(U("spam"));
6
7api->getSearchPages(U("my-tenant-123"), options)
8 .then([](pplx::task<std::shared_ptr<ModerationPageSearchResponse>> task) {
9 try {
10 auto response = task.get();
11 // השתמש בתגובה
12 } catch (const std::exception& e) {
13 // טיפול בשגיאה
14 }
15 });
16

קבלת אתרים בחיפוש Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
optionsconst GetSearchSitesOptions&כן

תגובה

מחזיר: ModerationSiteSearchResponse

דוגמה

דוגמת getSearchSites
Copy Copy
1
2auto tenantId = utility::string_t(U("my-tenant-123"));
3GetSearchSitesOptions options;
4options.query = boost::make_optional(utility::string_t(U("example query")));
5options.limit = boost::make_optional(25);
6
7api->getSearchSites(tenantId, options)
8 .then([](pplx::task<std::shared_ptr<ModerationSiteSearchResponse>> t) {
9 try {
10 auto response = t.get();
11 auto respPtr = std::make_shared<ModerationSiteSearchResponse>(*response);
12 for (const auto& site : respPtr->sites) {
13 // לוגיקת עיבוד
14 }
15 } catch (const std::exception&) {
16 // טיפול בשגיאה
17 }
18 });
19

קבלת הצעות חיפוש Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
optionsconst GetSearchSuggestOptions&כן

תגובה

מחזיר: ModerationSuggestResponse

דוגמה

דוגמת getSearchSuggest
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3GetSearchSuggestOptions opts;
4opts.query = U("search term");
5opts.limit = boost::optional<int>(5);
6opts.includeInactive = boost::optional<bool>(false);
7api->getSearchSuggest(tenantId, opts).then([](pplx::task<std::shared_ptr<ModerationSuggestResponse>> t){
8 try{
9 auto resp = t.get();
10 }catch(const std::exception&){ }
11}).wait();
12

קבלת משתמשים בחיפוש Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
optionsconst GetSearchUsersOptions&כן

תגובה

מחזיר: ModerationUserSearchResponse

דוגמה

דוגמת getSearchUsers
Copy Copy
1
2auto tenantId = utility::string_t(U("my-tenant-123"));
3GetSearchUsersOptions opts;
4opts.query = utility::string_t(U("john.doe@example.com"));
5opts.page = boost::optional<int>(1);
6opts.pageSize = boost::optional<int>(20);
7
8api->getSearchUsers(tenantId, opts)
9 .then([](std::shared_ptr<ModerationUserSearchResponse> resp) {
10 for (const auto& user : resp->users) {
11 std::wcout << user.id << L" - " << user.email << std::endl;
12 }
13 });
14

קבלת גורם אמון Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
optionsconst GetTrustFactorOptions&Yes

תגובה

מחזיר: GetUserTrustFactorResponse

דוגמה

getTrustFactor דוגמה
Copy Copy
1
2auto tenantId = utility::string_t(U("my-tenant-123"));
3GetTrustFactorOptions options;
4options.userEmail = boost::optional<utility::string_t>(U("user@example.com"));
5options.ipAddress = boost::optional<utility::string_t>(U("203.0.113.42"));
6api->getTrustFactor(tenantId, options).then([](std::shared_ptr<GetUserTrustFactorResponse> resp) {
7 if (resp) {
8 std::cout << "Trust factor: " << resp->trustFactor << std::endl;
9 }
10});
11

קבלת העדפת חרימת משתמש Internal Link

פרמטרים

שםסוגחובהתיאור
tenantIdstringYes
ssostringNo

תשובה

מחזיר: APIModerateGetUserBanPreferencesResponse

דוגמה

דוגמת getUserBanPreference
Copy Copy
1
2auto tenantId = utility::string_t(U("my-tenant-123"));
3boost::optional<utility::string_t> sso = boost::optional<utility::string_t>(U("user@example.com"));
4
5api->getUserBanPreference(tenantId, sso)
6 .then([](pplx::task<std::shared_ptr<APIModerateGetUserBanPreferencesResponse>> t) {
7 try {
8 auto resp = t.get();
9 } catch (const std::exception&) {
10 }
11 });
12

קבלת פרופיל פנימי של משתמש Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
optionsconst GetUserInternalProfileOptions&Yes

תגובה

מחזיר: GetUserInternalProfileResponse

דוגמה

דוגמה של getUserInternalProfile
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3GetUserInternalProfileOptions options;
4options.email = boost::optional<utility::string_t>(U("user@example.com"));
5options.includeDetails = boost::optional<bool>(true);
6
7api->getUserInternalProfile(tenantId, options)
8 .then([](std::shared_ptr<GetUserInternalProfileResponse> response) {
9 if (response) {
10 auto name = response->displayName;
11 auto id = response->userId;
12 }
13 });
14

התאמת הצבעות על תגובות Internal Link

Parameters

NameTypeRequiredDescription
tenantIdstringYes
commentIdstringYes
adjustCommentVotesParamsAdjustCommentVotesParamsYes
optionsconst PostAdjustCommentVotesOptions&Yes

Response

מחזיר: AdjustVotesResponse

Example

דוגמת postAdjustCommentVotes
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto commentId = utility::conversions::to_string_t("cmt-456789");
4AdjustCommentVotesParams params;
5params.voteDelta = 1;
6params.userIdentifier = utility::conversions::to_string_t("user@example.com");
7params.reason = boost::optional<utility::string_t>(utility::conversions::to_string_t("Helpful"));
8PostAdjustCommentVotesOptions opts;
9opts.timeout = boost::optional<int>(30);
10api->postAdjustCommentVotes(tenantId, commentId, params, opts).then([](pplx::task<std::shared_ptr<AdjustVotesResponse>> t){
11 try{
12 auto resp = t.get();
13 }catch(const std::exception& e){
14 }
15});
16

שליחת בקשת יצוא API Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
optionsconst PostApiExportOptions&כן

תגובה

מחזיר: ModerationExportResponse

דוגמה

postApiExport דוגמה
Copy Copy
1
2auto tenantId = utility::string_t(U("my-tenant-123"));
3PostApiExportOptions options;
4options.format = utility::string_t(U("json"));
5options.email = utility::string_t(U("reports@example.com"));
6options.startDate = boost::optional<utility::datetime>(utility::datetime::from_string(U("2023-01-01T00:00:00Z")));
7options.endDate = boost::optional<utility::datetime>(utility::datetime::from_string(U("2023-01-31T23:59:59Z")));
8
9api->postApiExport(tenantId, options)
10 .then([](std::shared_ptr<ModerationExportResponse> response) {
11 if (response) {
12 // טיפול בתגובה מוצלחת של הייצוא
13 }
14 })
15 .wait();
16

חרימת משתמש מתוך תגובה Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
commentIdstringכן
optionsconst PostBanUserFromCommentOptions&כן

תגובה

מחזיר: BanUserFromCommentResult

דוגמה

דוגמת postBanUserFromComment
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3utility::string_t commentId = U("comment-456789");
4PostBanUserFromCommentOptions options;
5options.reason = boost::optional<utility::string_t>(U("spam"));
6options.durationDays = boost::optional<int>(30);
7
8api->postBanUserFromComment(tenantId, commentId, options)
9 .then([](std::shared_ptr<BanUserFromCommentResult> result) {
10 // טיפול בתוצאה
11 })
12 .then([](pplx::task<void> t) {
13 try { t.get(); } catch (const std::exception& e) { /* טיפול בשגיאה */ }
14 });
15

ביטול חרימת משתמש Internal Link

פרמטרים

שםסוגחובהתיאור
tenantIdstringYes
banUserUndoParamsBanUserUndoParamsYes
ssostringNo

תגובה

מחזיר: APIEmptyResponse

דוגמה

postBanUserUndo דוגמה
Copy Copy
1
2auto tenantId = utility::string_t(U("my-tenant-123"));
3BanUserUndoParams banParams;
4banParams.userId = utility::string_t(U("user-567"));
5banParams.reason = utility::string_t(U("reinstated"));
6boost::optional<utility::string_t> sso = utility::string_t(U("sso-token-abc"));
7
8api->postBanUserUndo(tenantId, banParams, sso).then([](std::shared_ptr<APIEmptyResponse> resp){
9 // טיפול בהצלחה
10});
11

שליחת סיכום טרום-חרימה בכמות גדולה Internal Link

Parameters

שםסוגדרושתיאור
tenantIdstringכן
bulkPreBanParamsBulkPreBanParamsכן
optionsconst PostBulkPreBanSummaryOptions&כן

תגובה

מחזיר: BulkPreBanSummary

דוגמה

postBulkPreBanSummary דוגמה
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3BulkPreBanParams bulkPreBanParams;
4bulkPreBanParams.emails = {
5 utility::conversions::to_string_t("spam1@example.com"),
6 utility::conversions::to_string_t("spam2@example.com")
7};
8bulkPreBanParams.reason = utility::conversions::to_string_t("spam");
9PostBulkPreBanSummaryOptions options;
10options.requestId = boost::optional<utility::string_t>(utility::conversions::to_string_t("req-456"));
11api->postBulkPreBanSummary(tenantId, bulkPreBanParams, options)
12 .then([](std::shared_ptr<BulkPreBanSummary> result) {
13 (void)result;
14 });
15

קבלת תגובות לפי מזהים Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
commentsByIdsParamsCommentsByIdsParamsYes
ssostringNo

תגובה

מחזיר: ModerationAPIChildCommentsResponse

דוגמה

postCommentsByIds דוגמה
Copy Copy
1
2auto tenantId = utility::string_t(U("my-tenant-123"));
3CommentsByIdsParams params;
4params.commentIds = {U("cmt-001"), U("cmt-002")};
5boost::optional<utility::string_t> sso = U("sso-token-abc");
6api->postCommentsByIds(tenantId, params, sso).then([](pplx::task<std::shared_ptr<ModerationAPIChildCommentsResponse>> t){
7 try{
8 auto resp = t.get();
9 auto copy = std::make_shared<ModerationAPIChildCommentsResponse>(*resp);
10 }catch(const std::exception&){ }
11});
12

סימון תג למודרציה Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
commentIdstringYes
optionsconst PostFlagCommentOptions&Yes

תגובה

מחזיר: APIEmptyResponse

דוגמה

דוגמת postFlagComment
Copy Copy
1
2PostFlagCommentOptions options;
3options.reason = boost::optional<utility::string_t>(U("spam"));
4options.reportedBy = boost::optional<utility::string_t>(U("moderator@example.com"));
5
6api->postFlagComment(U("my-tenant-123"), U("comment-456"), options)
7 .then([](std::shared_ptr<APIEmptyResponse> resp){
8 (void)resp;
9 })
10 .then([](pplx::task<void> t){
11 try{
12 t.get();
13 }catch(const std::exception&){
14 }
15 });
16

הסרת תגודה Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
commentIdstringYes
optionsconst PostRemoveCommentOptions&Yes

תגובה

מחזיר: PostRemoveCommentApiResponse

דוגמה

דוגמת postRemoveComment
Copy Copy
1
2auto tenantId = utility::string_t(U("my-tenant-123"));
3auto commentId = utility::string_t(U("cmt-456789"));
4PostRemoveCommentOptions options;
5options.permanent = boost::optional<bool>(true);
6api->postRemoveComment(tenantId, commentId, options)
7 .then([](pplx::task<std::shared_ptr<PostRemoveCommentApiResponse>> task) {
8 try {
9 auto response = task.get();
10 // עיבוד תגובה
11 } catch (const std::exception& ex) {
12 // טיפול בשגיאה
13 }
14 });
15

שחזור תג שהוסר Internal Link

פרמטרים

NameTypeRequiredDescription
tenantIdstringכן
commentIdstringכן
optionsconst PostRestoreDeletedCommentOptions&כן

תגובה

מחזיר: APIEmptyResponse

דוגמה

דוגמת postRestoreDeletedComment
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3utility::string_t commentId = U("cmt-987654");
4PostRestoreDeletedCommentOptions options;
5options.reason = boost::optional<utility::string_t>(U("Restoring after accidental delete"));
6options.notifyUser = boost::optional<bool>(true);
7api->postRestoreDeletedComment(tenantId, commentId, options)
8 .then([](std::shared_ptr<APIEmptyResponse> resp){
9 });
10

הגדרת סטטוס אישור תג Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
commentIdstringYes
optionsconst PostSetCommentApprovalStatusOptions&Yes

תגובה

מחזיר: SetCommentApprovedResponse

דוגמה

דוגמת postSetCommentApprovalStatus
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto commentId = utility::conversions::to_string_t("comment-abc123");
4auto options = std::make_shared<PostSetCommentApprovalStatusOptions>();
5options->approved = boost::optional<bool>(true);
6options->reason = boost::optional<utility::string_t>(utility::conversions::to_string_t("Inappropriate content"));
7api->postSetCommentApprovalStatus(tenantId, commentId, *options)
8 .then([](pplx::task<std::shared_ptr<SetCommentApprovedResponse>> task) {
9 try {
10 auto response = task.get();
11 } catch (const std::exception& ex) {
12 }
13 });
14

הגדרת סטטוס סקירת תג Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
commentIdstringYes
optionsconst PostSetCommentReviewStatusOptions&Yes

תגובה

מחזירה: APIEmptyResponse

דוגמה

דוגמת postSetCommentReviewStatus
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto commentId = utility::conversions::to_string_t("cmt-456789");
4PostSetCommentReviewStatusOptions opts;
5opts.status = utility::conversions::to_string_t("approved");
6opts.note = boost::optional<utility::string_t>(utility::conversions::to_string_t("Looks good"));
7api->postSetCommentReviewStatus(tenantId, commentId, opts)
8 .then([](pplx::task<std::shared_ptr<APIEmptyResponse>> t){
9 try{
10 auto resp = t.get();
11 }catch(const std::exception& e){
12 }
13 });
14

הגדרת סטטוס ספאם לתג Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
commentIdstringכן
optionsconst PostSetCommentSpamStatusOptions&כן

תגובה

מחזיר: APIEmptyResponse

דוגמה

postSetCommentSpamStatus דוגמה
Copy Copy
1
2auto options = PostSetCommentSpamStatusOptions{};
3options.isSpam = true;
4options.reason = boost::optional<utility::string_t>{U"User reported spam"};
5
6api->postSetCommentSpamStatus(U("my-tenant-123"), U("comment-789"), options)
7 .then([](std::shared_ptr<APIEmptyResponse> resp) {
8 auto copy = std::make_shared<APIEmptyResponse>(*resp);
9 })
10 .then([](pplx::task<void> t) {
11 try { t.get(); } catch(const std::exception&) {}
12 });
13

הגדרת טקסט תג Internal Link

פרמטרים

שםסוגחובהתיאור
tenantIdstringYes
commentIdstringYes
setCommentTextParamsSetCommentTextParamsYes
optionsconst PostSetCommentTextOptions&Yes

תגובה

מחזיר: SetCommentTextResponse

דוגמה

postSetCommentText דוגמה
Copy Copy
1
2auto tenantId = U("my-tenant-123");
3auto commentId = U("comment-456");
4SetCommentTextParams params;
5params.text = U("Revised comment content");
6PostSetCommentTextOptions options;
7options.requestId = boost::optional<utility::string_t>(U("req-987"));
8api->postSetCommentText(tenantId, commentId, params, options)
9 .then([](std::shared_ptr<SetCommentTextResponse> resp) {
10 auto updatedId = resp->commentId;
11 })
12 .then([](pplx::task<void> t) {
13 try { t.get(); } catch (const std::exception&) {}
14 });
15

ביטול סימון תג Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
commentIdstringYes
optionsconst PostUnFlagCommentOptions&Yes

תגובה

מחזיר: APIEmptyResponse

דוגמה

דוגמה של postUnFlagComment
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3utility::string_t commentId = U("cmt-456789");
4PostUnFlagCommentOptions opts;
5opts.notifyUser = boost::optional<bool>(true);
6api->postUnFlagComment(tenantId, commentId, opts)
7 .then([](std::shared_ptr<APIEmptyResponse> resp) {
8 // ניתן לבצע עיבוד כאן
9 })
10 .then([](pplx::task<void> t) {
11 try { t.get(); } catch (const std::exception&) {}
12 });
13

הצבעה (מודרציה) Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
commentIdstringכן
optionsconst PostVoteOptions&כן

תגובה

מחזיר: VoteResponse

דוגמה

דוגמת postVote
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3utility::string_t commentId = U("cmt-456789");
4PostVoteOptions options;
5options.upvote = boost::make_optional(true);
6options.reason = boost::make_optional<std::string>("Inappropriate content");
7api->postVote(tenantId, commentId, options)
8 .then([](pplx::task<std::shared_ptr<VoteResponse>> t) {
9 try {
10 auto resp = t.get();
11 auto count = resp->voteCount;
12 } catch (const std::exception& e) {
13 }
14 });
15

הענקת סמל Internal Link

פרמטרים

NameTypeRequiredDescription
tenantIdstringYes
badgeIdstringYes
optionsconst PutAwardBadgeOptions&Yes

תגובה

מחזיר: AwardUserBadgeResponse

דוגמה

putAwardBadge דוגמה
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto badgeId = utility::conversions::to_string_t("badge-456");
4PutAwardBadgeOptions opts;
5opts.userId = utility::conversions::to_string_t("user-42");
6opts.note = boost::optional<utility::string_t>(utility::conversions::to_string_t("Excellent comment"));
7api->putAwardBadge(tenantId, badgeId, opts).then([](pplx::task<std::shared_ptr<AwardUserBadgeResponse>> t){
8 try{
9 auto resp = t.get();
10 auto respCopy = std::make_shared<AwardUserBadgeResponse>(*resp);
11 }catch(const std::exception& e){
12 }
13});
14

סגירת השרשור Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
urlIdstringYes
ssostringNo

תגובה

מחזיר: APIEmptyResponse

דוגמה

דוגמת putCloseThread
Copy Copy
1
2auto tenantId = utility::string_t(U("my-tenant-4321"));
3auto urlId = utility::string_t(U("article-9876"));
4boost::optional<utility::string_t> sso = boost::make_optional<utility::string_t>(U("user@example.com"));
5
6api->putCloseThread(tenantId, urlId, sso).then([](pplx::task<std::shared_ptr<APIEmptyResponse>> task){
7 try{
8 auto response = task.get();
9 }catch(const std::exception&){
10 }
11});
12

הסרת סמל Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
badgeIdstringYes
optionsconst PutRemoveBadgeOptions&Yes

תגובה

מחזירה: RemoveUserBadgeResponse

דוגמה

דוגמת putRemoveBadge
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3utility::string_t badgeId = U("badge-abc-456");
4PutRemoveBadgeOptions options;
5options.reason = boost::optional<utility::string_t>(U("Spamming"));
6api->putRemoveBadge(tenantId, badgeId, options).then([](std::shared_ptr<RemoveUserBadgeResponse> resp) {
7 (void)resp;
8});
9

פתיחת שרשור מחדש Internal Link

Parameters

שםסוגחובהתיאור
tenantIdstringכן
urlIdstringכן
ssostringלא

Response

מחזיר: APIEmptyResponse

Example

דוגמת putReopenThread
Copy Copy
1
2api->putReopenThread(utility::string_t(U("my-tenant-123")), utility::string_t(U("thread-456")), boost::make_optional<utility::string_t>(U("user@example.com")))
3 .then([](std::shared_ptr<APIEmptyResponse> result){
4 std::cout << "Thread reopened" << std::endl;
5 });
6

קביעת גורם אמון Internal Link

פרמטרים

שםסוגחובהתיאור
tenantIdstringכן
optionsconst SetTrustFactorOptions&כן

תגובה

מחזיר: SetUserTrustFactorResponse

דוגמה

דוגמת setTrustFactor
Copy Copy
1
2SetTrustFactorOptions opts;
3opts.userId = utility::conversions::to_string_t("user@example.com");
4opts.trustFactor = 8;
5opts.reason = boost::optional<utility::string_t>(utility::conversions::to_string_t("Spam check passed"));
6api->setTrustFactor(utility::conversions::to_string_t("my-tenant-123"), opts)
7 .then([](pplx::task<std::shared_ptr<SetUserTrustFactorResponse>> task) {
8 try {
9 auto response = task.get();
10 } catch (const std::exception&) {
11 }
12 });
13

יצירת ממונה Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
createModeratorBodyCreateModeratorBodyYes

תגובה

מחזיר: CreateModeratorResponse

דוגמה

דוגמת createModerator
Copy Copy
1
2CreateModeratorBody moderatorBody;
3moderatorBody.email = utility::conversions::to_string_t("moderator@example.com");
4moderatorBody.name = utility::conversions::to_string_t("John Moderator");
5moderatorBody.notes = boost::optional<utility::string_t>(utility::conversions::to_string_t("Community moderator"));
6api->createModerator(utility::conversions::to_string_t("my-tenant-123"), moderatorBody)
7 .then([](std::shared_ptr<CreateModeratorResponse> resp) {});
8

מחיקת ממונה Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
idstringYes
sendEmailstringNo

תגובה

מחזיר: APIEmptyResponse

דוגמה

דוגמת deleteModerator
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto moderatorId = utility::conversions::to_string_t("mod-456");
4boost::optional<utility::string_t> sendEmail = utility::conversions::to_string_t("admin@example.com");
5api->deleteModerator(tenantId, moderatorId, sendEmail)
6 .then([](std::shared_ptr<APIEmptyResponse> resp) {
7 // טיפול בהצלחה
8 });
9

קבלת ממונה Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
idstringכן

תשובה

מחזיר: GetModeratorResponse

דוגמה

getModerator דוגמה
Copy Copy
1
2auto tenantId = utility::string_t(U("my-tenant-123"));
3auto moderatorId = utility::string_t(U("moderator-789"));
4api->getModerator(tenantId, moderatorId)
5 .then([](pplx::task<std::shared_ptr<GetModeratorResponse>> t) {
6 try {
7 auto response = t.get();
8 } catch (const std::exception&) {
9 }
10 });
11

קבלת ממונים Internal Link

פרמטרים

NameTypeRequiredDescription
tenantIdstringכן
skipdoubleלא

תגובה

מחזיר: GetModeratorsResponse

דוגמה

דוגמת getModerators
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3boost::optional<double> skip = 10.0;
4api->getModerators(tenantId, skip).then([](pplx::task<std::shared_ptr<GetModeratorsResponse>> t){
5 auto response = t.get();
6});
7

שליחת הזמנה Internal Link

פרמטרים

שםסוגחובהתיאור
tenantIdstringכן
idstringכן
fromNamestringכן

תגובה

מחזיר: APIEmptyResponse

דוגמה

דוגמת sendInvite
Copy Copy
1
2boost::optional<utility::string_t> cc = utility::conversions::to_string_t("cc@example.com");
3api->sendInvite(
4 utility::conversions::to_string_t("my-tenant-123"),
5 utility::conversions::to_string_t("invitee@example.com"),
6 utility::conversions::to_string_t("John Doe")
7).then([](std::shared_ptr<APIEmptyResponse> resp) {
8 // טיפול בהזמנה מוצלחת
9});
10

עדכון ממונה Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
idstringYes
updateModeratorBodyUpdateModeratorBodyYes

תגובה

מחזיר: APIEmptyResponse

דוגמה

updateModerator דוגמה
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto moderatorId = utility::conversions::to_string_t("mod-789");
4UpdateModeratorBody body;
5body.email = utility::conversions::to_string_t("moderator@example.com");
6body.isActive = true;
7body.notes = boost::optional<utility::string_t>(utility::conversions::to_string_t("Senior moderator"));
8api->updateModerator(tenantId, moderatorId, body)
9 .then([](std::shared_ptr<APIEmptyResponse>) {})
10 .then([](pplx::task<void> t) { try { t.get(); } catch (const std::exception&) {} });
11

מחיקת ספירת התראות Internal Link

פרמטרים

NameTypeRequiredDescription
tenantIdstringYes
idstringYes

תגובה

מחזיר: APIEmptyResponse

דוגמה

deleteNotificationCount דוגמה
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto notificationId = utility::conversions::to_string_t("notif-789");
4
5api->deleteNotificationCount(tenantId, notificationId)
6 .then([](std::shared_ptr<APIEmptyResponse> resp) {})
7 .then([](pplx::task<void> t) { try { t.get(); } catch (const std::exception&) {} });
8

קבלת ספירת התראות משמורת Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
idstringכן

תגובה

מחזיר: GetCachedNotificationCountResponse

דוגמה

דוגמה ל‑getCachedNotificationCount
Copy Copy
1
2auto tenantId = boost::optional<utility::string_t>(utility::conversions::to_string_t("my-tenant-123"));
3auto userId = boost::optional<utility::string_t>(utility::conversions::to_string_t("user-456"));
4
5api->getCachedNotificationCount(tenantId.value(), userId.value())
6 .then([](pplx::task<std::shared_ptr<GetCachedNotificationCountResponse>> task) {
7 try {
8 auto response = task.get();
9 // לעבד תגובה
10 } catch (const std::exception&) {
11 // טיפול ב‑שגיאה
12 }
13 });
14

קבלת ספירת התראות Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
optionsconst GetNotificationCountOptions&Yes

תגובה

מחזיר: GetNotificationCountResponse

דוגמה

דוגמת getNotificationCount
Copy Copy
1
2auto tenantId = U("my-tenant-123");
3GetNotificationCountOptions options;
4options.filter = boost::optional<utility::string_t>(U("unread"));
5options.maxCount = boost::optional<int>(10);
6api->getNotificationCount(tenantId, options)
7 .then([](pplx::task<std::shared_ptr<GetNotificationCountResponse>> t) {
8 try {
9 auto response = t.get();
10 } catch (const std::exception& ex) {
11 }
12 });
13

קבלת התראות Internal Link

פרמטרים

שםסוגחובהתיאור
tenantIdstringכן
optionsconst GetNotificationsOptions&כן

תגובה

מחזירה: GetNotificationsResponse

דוגמה

דוגמת getNotifications
Copy Copy
1
2GetNotificationsOptions options;
3options.limit = 20;
4options.after = U("cursor-123");
5api->getNotifications(U("my-tenant-123"), options)
6 .then([](std::shared_ptr<GetNotificationsResponse> resp) {
7 (void)resp;
8 });
9

עדכון התראה Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
idstringכן
updateNotificationBodyUpdateNotificationBodyכן
userIdstringלא

תגובה

מחזיר: APIEmptyResponse

דוגמה

דוגמת updateNotification
Copy Copy
1
2auto updateBody = std::make_shared<UpdateNotificationBody>();
3updateBody->title = utility::conversions::to_string_t("System Maintenance");
4updateBody->message = utility::conversions::to_string_t("Scheduled downtime at 02:00 UTC.");
5api->updateNotification(
6 utility::conversions::to_string_t("my-tenant-123"),
7 utility::conversions::to_string_t("notif-456"),
8 updateBody,
9 boost::optional<utility::string_t>(utility::conversions::to_string_t("admin-user"))
10).then([](std::shared_ptr<APIEmptyResponse>){});
11

יצירת ריאקציה בעמוד V1 Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
urlIdstringכן
titlestringלא

תגובה

Returns: CreateV1PageReact

דוגמא

createV1PageReact דוגמא
Copy Copy
1
2auto tenantId = utility::string_t(U("my-tenant-123"));
3auto urlId = utility::string_t(U("https://example.com/articles/789"));
4boost::optional<utility::string_t> title = utility::string_t(U("Understanding Async C++"));
5api->createV1PageReact(tenantId, urlId, title).then([](pplx::task<std::shared_ptr<CreateV1PageReact>> task) {
6 try {
7 auto response = task.get();
8 } catch (const std::exception&) {
9 }
10});
11

יצירת ריאקציה בעמוד V2 Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
urlIdstringכן
idstringכן
titlestringלא

תגובה

מחזיר: CreateV1PageReact

דוגמה

createV2PageReact דוגמה
Copy Copy
1
2api->createV2PageReact(
3 utility::string_t(U("my-tenant-789")),
4 utility::string_t(U("https://example.com/articles/12345")),
5 utility::string_t(U("user-42")),
6 boost::optional<utility::string_t>(U("Helpful"))
7).then([](pplx::task<std::shared_ptr<CreateV1PageReact>> task){
8 try{
9 auto response = task.get();
10 }catch(const std::exception&){ }
11});
12

מחיקת ריאקציה בעמוד V1 Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
urlIdstringכן

תגובה

מחזיר: CreateV1PageReact

דוגמה

deleteV1PageReact דוגמה
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto urlId = utility::conversions::to_string_t("page-abc-456");
4api->deleteV1PageReact(tenantId, urlId).then([](pplx::task<std::shared_ptr<CreateV1PageReact>> task){
5 try{
6 auto response = task.get();
7 boost::optional<std::shared_ptr<CreateV1PageReact>> optResponse = response;
8 }catch(...){
9 }
10});
11

מחיקת ריאקציה בעמוד V2 Internal Link

פרמטרים

NameTypeRequiredDescription
tenantIdstringכן
urlIdstringכן
idstringכן

תגובה

מחזיר: CreateV1PageReact

דוגמה

deleteV2PageReact דוגמה
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto urlId = utility::conversions::to_string_t("page-456");
4auto reactId = utility::conversions::to_string_t("react-789");
5boost::optional<utility::string_t> correlationId = utility::conversions::to_string_t("corr-001");
6
7api->deleteV2PageReact(tenantId, urlId, reactId)
8 .then([](pplx::task<std::shared_ptr<CreateV1PageReact>> t) {
9 auto result = t.get();
10 });
11

קבלת לייקים בעמוד V1 Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
urlIdstringYes

תגובה

מחזיר: GetV1PageLikes

דוגמה

דוגמת getV1PageLikes
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto urlId = utility::conversions::to_string_t("article-789");
4boost::optional<utility::string_t> filter;
5
6api->getV1PageLikes(tenantId, urlId).then([=](pplx::task<std::shared_ptr<GetV1PageLikes>> task){
7 try{
8 auto raw = task.get();
9 auto likes = std::make_shared<GetV1PageLikes>(*raw);
10 auto total = likes->totalLikes;
11 }catch(...){
12 }
13});
14

קבלת ריאקציות בעמוד V2 Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
urlIdstringYes

תגובה

מחזיר: GetV2PageReacts

דוגמה

דוגמת getV2PageReacts
Copy Copy
1
2auto tenantId = utility::string_t("my-tenant-123");
3auto urlId = utility::string_t("https://example.com/article/42");
4boost::optional<utility::string_t> locale = utility::string_t("en-US");
5api->getV2PageReacts(tenantId, urlId)
6 .then([locale](std::shared_ptr<GetV2PageReacts> reacts){
7 if (locale) {}
8 })
9 .then([](pplx::task<void> t){
10 try { t.get(); } catch (...) {}
11 });
12

קבלת משתמשי ריאקציה בעמוד V2 Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
urlIdstringYes
idstringYes

תגובה

מחזיר: GetV2PageReactUsersResponse

דוגמה

דוגמת getV2PageReactUsers
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto urlId = utility::conversions::to_string_t("page-456");
4auto id = utility::conversions::to_string_t("react-789");
5boost::optional<utility::string_t> maybeFilter;
6api->getV2PageReactUsers(tenantId, urlId, id).then([](pplx::task<std::shared_ptr<GetV2PageReactUsersResponse>> task){
7 try{
8 auto response = task.get();
9 // השתמש בתגובה לפי הצורך
10 }catch(const std::exception&){
11 // טפל בשגיאה
12 }
13});
14

הוספת עמוד Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
createAPIPageDataCreateAPIPageDataכן

תשובה

מחזיר: AddPageAPIResponse

דוגמה

דוגמה של addPage
Copy Copy
1
2auto createData = CreateAPIPageData{};
3createData.title = utility::string_t(U("Welcome Page"));
4createData.url = utility::string_t(U("https://example.com/welcome"));
5createData.description = boost::optional<utility::string_t>(utility::string_t(U("Landing page for new users")));
6
7api->addPage(utility::string_t(U("my-tenant-123")), createData)
8 .then([](std::shared_ptr<AddPageAPIResponse> response) {
9 if (response && response->success) {
10 // טיפול בהוספה מוצלחת
11 } else {
12 // טיפול בשגיאה
13 }
14 });
15

מחיקת עמוד Internal Link

פרמטרים

שםסוגחובהתיאור
tenantIdstringYes
idstringYes

תגובה

מחזיר: DeletePageAPIResponse

דוגמה

deletePage דוגמה
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto pageId = utility::conversions::to_string_t("page-456");
4
5api->deletePage(tenantId, pageId)
6 .then([](pplx::task<std::shared_ptr<DeletePageAPIResponse>> t) {
7 try {
8 auto response = t.get();
9 // לעבד את התגובה לפי הצורך
10 } catch (const std::exception& ex) {
11 // טיפול בשגיאה
12 }
13 });
14

קבלת משתמשים לא מקוונים Internal Link

Past commenters on the page who are NOT currently online. Sorted by displayName.
המגיבים הקודמים בעמוד שאינם מחוברים כעת. ממוין לפי displayName.

Use this after exhausting /users/online to render a "Members" section.
השתמש בזה אחרי שמיצינו את /users/online כדי להציג סעיף "Members".

Cursor pagination on commenterName: server walks the partial {tenantId, urlId, commenterName} index from afterName forward via $gt, no $skip cost.
דפדוף עם סמן על commenterName: השרת נע דרך החלק {tenantId, urlId, commenterName} מהאינדקס אחרי afterName קדימה באמצעות $gt, ללא עלות של $skip.

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
urlIdstringYes
optionsconst GetOfflineUsersOptions&Yes

תגובה

מחזיר: PageUsersOfflineResponse

דוגמה

דוגמת getOfflineUsers
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3utility::string_t urlId = U("page-456");
4GetOfflineUsersOptions options;
5options.limit = boost::optional<int>(50);
6options.includeDetails = boost::optional<bool>(true);
7
8api->getOfflineUsers(tenantId, urlId, options)
9 .then([](pplx::task<std::shared_ptr<PageUsersOfflineResponse>> t) {
10 try {
11 auto response = t.get();
12 } catch (const std::exception&) {
13 }
14 });
15

קבלת משתמשים מקוונים Internal Link

צופים מקוונים כרגע של דף: אנשים שהחיבור WebSocket שלהם מנוי לדף ברגע זה.
מחזיר anonCount + totalCount (מנויים ברמת החדר, כולל צופים אנונימיים שאינם נרשמים).

פרמטרים

NameTypeRequiredDescription
tenantIdstringYes
urlIdstringYes
optionsconst GetOnlineUsersOptions&Yes

תשובה

מחזיר: PageUsersOnlineResponse

דוגמה

דוגמת getOnlineUsers
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3utility::string_t urlId = U("article-456");
4auto options = std::make_shared<GetOnlineUsersOptions>();
5options->maxResults = boost::optional<int>(100);
6options->includeInactive = boost::optional<bool>(false);
7api->getOnlineUsers(tenantId, urlId, *options).then([](pplx::task<std::shared_ptr<PageUsersOnlineResponse>> task){
8 try{
9 auto response = task.get();
10 }catch(const std::exception&){
11 }
12});
13

קבלת עמוד לפי URL/Id Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
urlIdstringYes

תגובה

מחזיר: GetPageByURLIdAPIResponse

דוגמה

דוגמת getPageByURLId
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto urlId = utility::conversions::to_string_t("page-456");
4boost::optional<utility::string_t> correlationId = boost::make_optional(utility::conversions::to_string_t("corr-789"));
5
6api->getPageByURLId(tenantId, urlId)
7 .then([correlationId](pplx::task<std::shared_ptr<GetPageByURLIdAPIResponse>> task) {
8 try {
9 auto response = task.get();
10 } catch (const std::exception&) {
11 }
12 });
13

קבלת עמודים Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן

תגובה

מחזיר: GetPagesAPIResponse

דוגמה

דוגמת getPages
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3api->getPages(tenantId)
4 .then([](pplx::task<std::shared_ptr<GetPagesAPIResponse>> task) {
5 try {
6 auto response = task.get();
7 boost::optional<utility::string_t> nextCursor = response->nextCursor;
8 } catch (const std::exception&) {
9 }
10 });
11

קבלת עמודים (ציבורי) Internal Link

List pages for a tenant. Used by the FChat desktop client to populate its room list. Requires enableFChat to be true on the resolved custom config for each page. Pages that require SSO are filtered against the requesting user's group access.

Parameters

שםסוגנדרשתיאור
tenantIdstringכן
optionsconst GetPagesPublicOptions&כן

Response

מחזיר: GetPublicPagesResponse

Example

דוגמת getPagesPublic
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3GetPagesPublicOptions options;
4options.limit = boost::optional<int>(50);
5options.cursor = boost::optional<utility::string_t>(U("cursor-token"));
6api->getPagesPublic(tenantId, options).then([](pplx::task<std::shared_ptr<GetPublicPagesResponse>> task){
7 try{
8 auto response = task.get();
9 // process response if needed
10 }catch(const std::exception&){
11 // handle error if needed
12 }
13});
14

קבלת מידע על משתמשים Internal Link

Bulk user info for a tenant. Given userIds, return display info from User / SSOUser.
Used by the comment widget to enrich users that just appeared via a presence event.
No page context: privacy is enforced uniformly (private profiles are masked).

Parameters

NameTypeRequiredDescription
tenantIdstringYes
idsstringYes

Response

Returns: PageUsersInfoResponse

Example

getUsersInfo דוגמה
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3utility::string_t ids = U("alice@example.com,bob@example.com");
4boost::optional<utility::string_t> locale = boost::make_optional(U("en-US"));
5
6api->getUsersInfo(tenantId, ids).then([](pplx::task<std::shared_ptr<PageUsersInfoResponse>> t){
7 try{
8 auto response = t.get();
9 // עיבוד התגובה
10 }catch(const std::exception&){
11 // טיפול בשגיאה
12 }
13});
14

שינוי חלקי של עמוד Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
idstringכן
updateAPIPageDataUpdateAPIPageDataכן

תגובה

מחזיר: PatchPageAPIResponse

דוגמה

patchPage דוגמה
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3utility::string_t pageId = U("page-789");
4UpdateAPIPageData update;
5update.title = boost::optional<utility::string_t>(U("Updated Page Title"));
6update.metadata = boost::optional<utility::string_t>(U("{\"author\":\"jane.doe@example.com\"}"));
7api->patchPage(tenantId, pageId, update)
8 .then([](std::shared_ptr<PatchPageAPIResponse> response) {
9 if (response && response->isSuccess) {
10 // טיפול בהצלחה
11 }
12 })
13 .then([](pplx::task<void> t) {
14 try { t.get(); } catch (const std::exception&) {}
15 });
16

מחיקת אירוע webhook מושהה Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
idstringכן

תגובה

מחזירה: APIEmptyResponse

דוגמה

דוגמת deletePendingWebhookEvent
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto eventId = utility::conversions::to_string_t("event-987654");
4boost::optional<utility::string_t> optTenant = tenantId;
5
6api->deletePendingWebhookEvent(optTenant.value(), eventId)
7 .then([](std::shared_ptr<APIEmptyResponse> resp) {
8 (void)resp;
9 })
10 .then([](pplx::task<void> t) {
11 try { t.get(); } catch (const std::exception& e) { }
12 });
13

קבלת ספירת אירועי webhook בהמתנה Internal Link

פרמטרים

NameTypeRequiredDescription
tenantIdstringYes
optionsconst GetPendingWebhookEventCountOptions&Yes

תגובה

מחזיר: GetPendingWebhookEventCountResponse

דוגמה

דוגמת getPendingWebhookEventCount
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3GetPendingWebhookEventCountOptions opts;
4opts.filter = boost::optional<utility::string_t>(utility::conversions::to_string_t("active"));
5api->getPendingWebhookEventCount(tenantId, opts)
6 .then([](std::shared_ptr<GetPendingWebhookEventCountResponse> resp){
7 auto count = resp->getCount();
8 });
9

קבלת אירועי webhook בהמתנה Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
optionsconst GetPendingWebhookEventsOptions&Yes

תשובה

מחזירה: GetPendingWebhookEventsResponse

דוגמה

דוגמה getPendingWebhookEvents
Copy Copy
1
2auto tenantId = utility::string_t(U("my-tenant-123"));
3GetPendingWebhookEventsOptions opts;
4opts.pageSize = boost::optional<int>(100);
5opts.startAfter = boost::optional<utility::string_t>(U("event-abc-456"));
6api->getPendingWebhookEvents(tenantId, opts)
7 .then([](pplx::task<std::shared_ptr<GetPendingWebhookEventsResponse>> task) {
8 try {
9 auto resp = task.get();
10 auto copy = std::make_shared<GetPendingWebhookEventsResponse>(*resp);
11 } catch (const std::exception&) {}
12 });
13

יצירת הגדרת שאלה Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
createQuestionConfigBodyCreateQuestionConfigBodyכן

תגובה

מחזיר: CreateQuestionConfigResponse

דוגמה

createQuestionConfig דוגמה
Copy Copy
1
2auto tenantId = utility::string_t(U("my-tenant-123"));
3CreateQuestionConfigBody configBody;
4configBody.question = utility::string_t(U("How satisfied are you with our service?"));
5configBody.required = true;
6configBody.defaultAnswer = boost::optional<utility::string_t>(utility::string_t(U("Very satisfied")));
7api->createQuestionConfig(tenantId, configBody).then([](pplx::task<std::shared_ptr<CreateQuestionConfigResponse>> task){
8 try{
9 auto response = task.get();
10 }catch(const std::exception&){}
11});
12

מחיקת הגדרת שאלה Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
idstringכן

תגובה

מחזיר: APIEmptyResponse

דוגמה

דוגמה למחיקת תצורת שאלה
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto configId = utility::conversions::to_string_t("question-config-456");
4
5api->deleteQuestionConfig(tenantId, configId)
6 .then([](std::shared_ptr<APIEmptyResponse> resp) {
7 // טיפול במחיקה מוצלחת
8 })
9 .then([](pplx::task<void> t) {
10 try {
11 t.get();
12 } catch (const std::exception&) {
13 // טיפול בשגיאה
14 }
15 });
16

קבלת הגדרת שאלה Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
idstringכן

תגובה

מחזיר: GetQuestionConfigResponse

דוגמה

דוגמת getQuestionConfig
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto questionId = utility::conversions::to_string_t("question-456");
4
5api->getQuestionConfig(tenantId, questionId)
6 .then([](pplx::task<std::shared_ptr<GetQuestionConfigResponse>> task) {
7 try {
8 auto response = task.get();
9 // השתמש בתגובה לפי הצורך
10 } catch (const std::exception&) {
11 // טיפול בשגיאה
12 }
13 });
14

קבלת הגדרות שאלות Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
skipdoubleלא

תשובה

מחזיר: GetQuestionConfigsResponse

דוגמה

דוגמת getQuestionConfigs
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3boost::optional<double> skip = 10.0;
4api->getQuestionConfigs(tenantId, skip).then([](std::shared_ptr<GetQuestionConfigsResponse> resp){
5 auto config = std::make_shared<GetQuestionConfigsResponse>(*resp);
6});
7

עדכון הגדרת שאלה Internal Link

פרמטרים

שםסוגחובהתיאור
tenantIdstringYes
idstringYes
updateQuestionConfigBodyUpdateQuestionConfigBodyYes

תגובה

מחזיר: APIEmptyResponse

דוגמה

דוגמת updateQuestionConfig
Copy Copy
1
2UpdateQuestionConfigBody updateBody;
3updateBody.enabled = true;
4updateBody.maxResponses = boost::optional<int>{10};
5updateBody.notes = boost::optional<utility::string_t>{U("Config updated via SDK")};
6
7api->updateQuestionConfig(U("my-tenant-123"), U("config-789"), updateBody)
8 .then([](std::shared_ptr<APIEmptyResponse> resp) {
9 })
10 .then([](pplx::task<void> t) {
11 try { t.get(); } catch (const std::exception&) {}
12 });
13

יצירת תוצאת שאלה Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
createQuestionResultBodyCreateQuestionResultBodyכן

תגובה

מחזיר: CreateQuestionResultResponse

דוגמה

createQuestionResult דוגמה
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3CreateQuestionResultBody body;
4body.questionId = U("question-456");
5body.result = U("approved");
6body.comment = boost::optional<utility::string_t>(U("Looks good"));
7api->createQuestionResult(tenantId, body)
8 .then([=](pplx::task<std::shared_ptr<CreateQuestionResultResponse>> t) {
9 try {
10 auto resp = t.get();
11 } catch (const std::exception&) {
12 }
13 });
14

מחיקת תוצאת שאלה Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
idstringכן

תגובה

מחזיר: APIEmptyResponse

דוגמה

דוגמה של deleteQuestionResult
Copy Copy
1
2boost::optional<utility::string_t> optTenant = utility::conversions::to_string_t( "my-tenant-123" );
3utility::string_t questionId = utility::conversions::to_string_t( "question-456" );
4
5if ( optTenant )
6{
7 api->deleteQuestionResult( *optTenant, questionId )
8 .then( []( pplx::task<std::shared_ptr<APIEmptyResponse>> t )
9 {
10 try
11 {
12 auto resp = t.get();
13 // טיפול בהצלחה
14 }
15 catch ( const std::exception& e )
16 {
17 // טיפול בשגיאה
18 }
19 } );
20}
21

קבלת תוצאת שאלה Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
idstringכן

תגובה

מחזיר: GetQuestionResultResponse

דוגמה

getQuestionResult דוגמה
Copy Copy
1
2auto tenantId = utility::string_t(U("my-tenant-123"));
3auto questionId = utility::string_t(U("question-789"));
4boost::optional<utility::string_t> optionalParam = boost::none;
5
6api->getQuestionResult(tenantId, questionId)
7 .then([](pplx::task<std::shared_ptr<GetQuestionResultResponse>> task) {
8 try {
9 auto response = task.get();
10 } catch (const std::exception&) {
11 }
12 });
13

קבלת תוצאות שאלון Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
optionsconst GetQuestionResultsOptions&Yes

תשובה

מחזיר: GetQuestionResultsResponse

דוגמה

דוגמה getQuestionResults
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3GetQuestionResultsOptions options;
4options.questionId = boost::optional<utility::string_t>(U("question-456"));
5options.includeDeleted = boost::optional<bool>(false);
6api->getQuestionResults(tenantId, options)
7 .then([](pplx::task<std::shared_ptr<GetQuestionResultsResponse>> t) {
8 auto response = t.get();
9 // טיפול בתגובה
10 });
11

עדכון תוצאת שאלה Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
idstringכן
updateQuestionResultBodyUpdateQuestionResultBodyכן

תגובה

מחזיר: APIEmptyResponse

דוגמה

updateQuestionResult דוגמה
Copy Copy
1
2auto tenantId = utility::string_t(U("my-tenant-123"));
3auto questionId = utility::string_t(U("question-456"));
4UpdateQuestionResultBody body;
5body.result = U("approved");
6body.note = boost::optional<utility::string_t>(U("Reviewed by admin"));
7api->updateQuestionResult(tenantId, questionId, body)
8 .then([](pplx::task<std::shared_ptr<APIEmptyResponse>> t) {
9 try {
10 auto respPtr = std::make_shared<APIEmptyResponse>(*t.get());
11 } catch (const std::exception&) {
12 }
13 });
14

אגרגציית תוצאות שאלון Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
optionsconst AggregateQuestionResultsOptions&Yes

תגובה

מחזיר: AggregateQuestionResultsResponse

דוגמה

דוגמת aggregateQuestionResults
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3AggregateQuestionResultsOptions opts;
4opts.questionId = utility::conversions::to_string_t("question-789");
5opts.startDate = boost::optional<utility::datetime>(utility::datetime::from_string(U("2023-01-01T00:00:00Z"), utility::datetime::ISO_8601));
6opts.endDate = boost::optional<utility::datetime>(utility::datetime::from_string(U("2023-01-31T23:59:59Z"), utility::datetime::ISO_8601));
7api->aggregateQuestionResults(tenantId, opts)
8 .then([](std::shared_ptr<AggregateQuestionResultsResponse> resp) {
9 static_cast<void>(resp);
10 });
11

אגרגציית תוצאות שאלון בכמות גדולה Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
bulkAggregateQuestionResultsRequestBulkAggregateQuestionResultsRequestYes
forceRecalculateboolNo

תשובה

מחזיר: BulkAggregateQuestionResultsResponse

דוגמה

bulkAggregateQuestionResults דוגמה
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3BulkAggregateQuestionResultsRequest request;
4request.questionIds = {
5 utility::conversions::to_string_t("q123"),
6 utility::conversions::to_string_t("q456")
7};
8request.startDate = utility::datetime::from_string(U("2023-01-01T00:00:00Z"));
9request.endDate = utility::datetime::from_string(U("2023-01-31T23:59:59Z"));
10boost::optional<bool> forceRecalc = true;
11api->bulkAggregateQuestionResults(tenantId, request, forceRecalc)
12 .then([](pplx::task<std::shared_ptr<BulkAggregateQuestionResultsResponse>> t) {
13 auto resp = t.get();
14 });
15

שילוב תגובות עם תוצאות שאלון Internal Link

פרמטרים

שםסוגחובהתיאור
tenantIdstringYes
optionsconst CombineCommentsWithQuestionResultsOptions&Yes

תגובה

מחזיר: CombineQuestionResultsWithCommentsResponse

דוגמה

דוגמה של combineCommentsWithQuestionResults
Copy Copy
1
2utility::string_t tenantId = utility::string_t("my-tenant-123");
3CombineCommentsWithQuestionResultsOptions options;
4options.questionId = utility::string_t("question-789");
5options.maxComments = boost::optional<int>(50);
6api->combineCommentsWithQuestionResults(tenantId, options).then(
7 [](pplx::task<std::shared_ptr<CombineQuestionResultsWithCommentsResponse>> task){
8 try{
9 auto respPtr = task.get();
10 auto combined = std::make_shared<CombineQuestionResultsWithCommentsResponse>(*respPtr);
11 // השתמש ב‑combined לפי הצורך
12 }catch(const std::exception&){
13 }
14 });
15

הוספת משתמש SSO Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
createAPISSOUserDataCreateAPISSOUserDataכן

תגובה

מחזיר: AddSSOUserAPIResponse

דוגמה

addSSOUser דוגמה
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3CreateAPISSOUserData createAPISSOUserData;
4createAPISSOUserData.email = utility::conversions::to_string_t("john.doe@example.com");
5createAPISSOUserData.externalId = utility::conversions::to_string_t("ext-9876");
6createAPISSOUserData.firstName = boost::optional<utility::string_t>(utility::conversions::to_string_t("John"));
7createAPISSOUserData.lastName = boost::optional<utility::string_t>(utility::conversions::to_string_t("Doe"));
8api->addSSOUser(tenantId, createAPISSOUserData)
9 .then([](std::shared_ptr<AddSSOUserAPIResponse> resp) {
10 });
11

מחיקת משתמש SSO Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
idstringכן
optionsconst DeleteSSOUserOptions&כן

תגובה

מחזיר: DeleteSSOUserAPIResponse

דוגמה

דוגמה deleteSSOUser
Copy Copy
1
2auto tenantId = U("my-tenant-123");
3auto userId = U("user-456");
4DeleteSSOUserOptions options;
5options.dryRun = boost::optional<bool>(true);
6api->deleteSSOUser(tenantId, userId, options).then([](std::shared_ptr<DeleteSSOUserAPIResponse> resp) {
7 if (resp) {
8 (void)resp;
9 }
10});
11

קבלת משתמש SSO לפי אימייל Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
emailstringYes

תגובה

מחזיר: GetSSOUserByEmailAPIResponse

דוגמה

getSSOUserByEmail דוגמה
Copy Copy
1
2auto correlationId = boost::optional<utility::string_t>(utility::conversions::to_string_t("corr-001"));
3
4api->getSSOUserByEmail(
5 utility::conversions::to_string_t("my-tenant-123"),
6 utility::conversions::to_string_t("user@example.com")
7).then([](pplx::task<std::shared_ptr<GetSSOUserByEmailAPIResponse>> t) {
8 try {
9 auto response = t.get();
10 } catch (const std::exception&) {
11 }
12});
13

קבלת משתמש SSO לפי Id Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
idstringYes

תגובה

מחזיר: GetSSOUserByIdAPIResponse

דוגמה

דוגמת getSSOUserById
Copy Copy
1
2auto tenantId = U("my-tenant-123");
3auto ssoUserId = U("user-789");
4api->getSSOUserById(tenantId, ssoUserId)
5 .then([](std::shared_ptr<GetSSOUserByIdAPIResponse> resp) {
6 boost::optional<utility::string_t> email;
7 if (resp && resp->email) email = resp->email;
8 if (email) {
9 auto e = *email;
10 }
11 });
12

קבלת משתמשי SSO Internal Link


פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
skipint32_tלא

תגובה

מחזיר: GetSSOUsersResponse

דוגמה

דוגמת getSSOUsers
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3boost::optional<int32_t> skip = 25;
4api->getSSOUsers(tenantId, skip).then([](pplx::task<std::shared_ptr<GetSSOUsersResponse>> t) {
5 try {
6 auto response = t.get();
7 } catch (const std::exception&) {
8 }
9});
10

שינוי חלקי של משתמש SSO Internal Link

Parameters

שםסוגנדרשתיאור
tenantIdstringכן
idstringכן
updateAPISSOUserDataUpdateAPISSOUserDataכן
updateCommentsboolלא

Response

מחזיר: PatchSSOUserAPIResponse

דוגמה

patchSSOUser דוגמה
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3utility::string_t userId = U("user-456");
4UpdateAPISSOUserData updateData;
5updateData.email = U("jane.doe@example.com");
6updateData.displayName = U("Jane Doe");
7boost::optional<bool> updateComments = true;
8
9api->patchSSOUser(tenantId, userId, updateData, updateComments)
10 .then([](pplx::task<std::shared_ptr<PatchSSOUserAPIResponse>> t){
11 try{
12 auto resp = t.get();
13 (void)resp;
14 }catch(const std::exception&){
15 }
16 });
17

החלפת משתמש SSO Internal Link

פרמטרים

שםסוגדרושתיאור
tenantIdstringכן
idstringכן
updateAPISSOUserDataUpdateAPISSOUserDataכן
updateCommentsboolלא

תגובה

מחזיר: PutSSOUserAPIResponse

דוגמה

דוגמת putSSOUser
Copy Copy
1
2UpdateAPISSOUserData userData;
3userData.email = utility::conversions::to_string_t("alice@example.com");
4userData.first_name = utility::conversions::to_string_t("Alice");
5userData.last_name = utility::conversions::to_string_t("Smith");
6userData.role = utility::conversions::to_string_t("moderator");
7
8api->putSSOUser(
9 utility::conversions::to_string_t("my-tenant-123"),
10 utility::conversions::to_string_t("alice.smith"),
11 userData,
12 boost::optional<bool>(true)
13).then([](pplx::task<std::shared_ptr<PutSSOUserAPIResponse>> t) {
14 auto response = t.get();
15});
16

יצירת מנוי Internal Link

Parameters

שםסוגחובהתיאור
tenantIdstringYes
createAPIUserSubscriptionDataCreateAPIUserSubscriptionDataYes

תגובה

מחזיר: CreateSubscriptionAPIResponse

דוגמה

createSubscription דוגמה
Copy Copy
1
2auto tenantId = U("my-tenant-123");
3CreateAPIUserSubscriptionData subscriptionData;
4subscriptionData.email = U("user@example.com");
5subscriptionData.planId = U("premium-plan");
6subscriptionData.couponCode = boost::optional<utility::string_t>(U("WELCOME10"));
7api->createSubscription(tenantId, subscriptionData)
8 .then([](pplx::task<std::shared_ptr<CreateSubscriptionAPIResponse>> task) {
9 try {
10 auto response = task.get();
11 } catch (const std::exception&) {
12 }
13 });
14

מחיקת מנוי Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
idstringYes
userIdstringNo

תגובה

מחזירה: DeleteSubscriptionAPIResponse

דוגמה

דוגמה למחיקת מנוי
Copy Copy
1
2api->deleteSubscription(utility::string_t(U("my-tenant-123")), utility::string_t(U("sub-456")), boost::optional<utility::string_t>(utility::string_t(U("user@example.com"))))
3 .then([](std::shared_ptr<DeleteSubscriptionAPIResponse> resp){
4 if (resp) {
5 }
6 });
7

קבלת מנויים Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
userIdstringNo

תגובה

מחזיר: GetSubscriptionsAPIResponse

דוגמה

דוגמת getSubscriptions
Copy Copy
1
2auto tenant = utility::conversions::to_string_t("my-tenant-123");
3boost::optional<utility::string_t> user = utility::conversions::to_string_t("user@example.com");
4
5api->getSubscriptions(tenant, user).then(
6 [](pplx::task<std::shared_ptr<GetSubscriptionsAPIResponse>> t) {
7 try {
8 auto response = t.get();
9 // לעבד תגובה
10 } catch (const std::exception& e) {
11 // לטפל בשגיאה
12 }
13 }
14);
15

עדכון מנוי Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
idstringYes
updateAPIUserSubscriptionDataUpdateAPIUserSubscriptionDataYes
userIdstringNo

תגובה

מחזיר: UpdateSubscriptionAPIResponse

דוגמה

דוגמת updateSubscription
Copy Copy
1
2UpdateAPIUserSubscriptionData subscriptionData;
3subscriptionData.plan = utility::conversions::to_string_t("premium");
4subscriptionData.active = true;
5
6api->updateSubscription(
7 utility::conversions::to_string_t("my-tenant-123"),
8 utility::conversions::to_string_t("sub-987654"),
9 subscriptionData,
10 boost::optional<utility::string_t>(utility::conversions::to_string_t("admin-user-456"))
11).then([](std::shared_ptr<UpdateSubscriptionAPIResponse> response){
12 bool ok = response && response->isSuccess;
13 (void)ok;
14});
15

קבלת שימוש יומי של שוכר Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
optionsconst GetTenantDailyUsagesOptions&כן

תגובה

מחזיר: GetTenantDailyUsagesResponse

דוגמה

דוגמה ל‑getTenantDailyUsages
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3GetTenantDailyUsagesOptions opts;
4opts.startDate = boost::optional<utility::datetime>(utility::datetime::from_string(U("2023-01-01T00:00:00Z")));
5opts.endDate = boost::optional<utility::datetime>(utility::datetime::from_string(U("2023-01-31T23:59:59Z")));
6api->getTenantDailyUsages(tenantId, opts).then([](std::shared_ptr<GetTenantDailyUsagesResponse> resp){
7 auto result = std::make_shared<GetTenantDailyUsagesResponse>(*resp);
8}).wait();
9

יצירת חבילת שוכר Internal Link

Parameters

שםסוגנדרשתיאור
tenantIdstringכן
createTenantPackageBodyCreateTenantPackageBodyכן

Response

מחזיר: CreateTenantPackageResponse

Example

דוגמת createTenantPackage
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3CreateTenantPackageBody body;
4body.name = utility::conversions::to_string_t("Pro Plan");
5body.maxUsers = 100;
6body.expiryDate = boost::optional<utility::datetime>(utility::datetime::utc_now() + std::chrono::hours(24 * 30));
7body.notes = boost::none;
8api->createTenantPackage(tenantId, body).then([](pplx::task<std::shared_ptr<CreateTenantPackageResponse>> t){
9 try{
10 auto resp = t.get();
11 }catch(const std::exception&){
12 }
13});
14

מחיקת חבילת שוכר Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
idstringכן

תגובה

מחזיר: APIEmptyResponse

דוגמה

דוגמת deleteTenantPackage
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto packageId = utility::conversions::to_string_t("pkg-456");
4boost::optional<utility::string_t> optTenant = tenantId;
5boost::optional<utility::string_t> optPackage = packageId;
6api->deleteTenantPackage(optTenant.value(), optPackage.value())
7 .then([](std::shared_ptr<APIEmptyResponse>){ })
8 .then([](pplx::task<void> t){ try{ t.get(); }catch(const std::exception&){ } });
9

קבלת חבילת שוכר Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
idstringכן

תגובה

מחזיר: GetTenantPackageResponse

דוגמה

דוגמת getTenantPackage
Copy Copy
1
2auto tenantId = U("my-tenant-123");
3auto packageId = U("pkg-456");
4api->getTenantPackage(tenantId, packageId).then([](pplx::task<std::shared_ptr<GetTenantPackageResponse>> task){
5 try{
6 auto resp = task.get();
7 auto result = std::make_shared<GetTenantPackageResponse>(*resp);
8 }catch(...){}
9});
10

קבלת חבילות שוכר Internal Link

Parameters

NameTypeRequiredDescription
tenantIdstringכן
skipdoubleלא

Response

מחזיר: GetTenantPackagesResponse

Example

דוגמת getTenantPackages
Copy Copy
1
2auto tenantId = utility::string_t(U("my-tenant-123"));
3boost::optional<double> skip = 20.0;
4api->getTenantPackages(tenantId, skip)
5 .then([](std::shared_ptr<GetTenantPackagesResponse> resp) {
6 (void)resp;
7 });
8

החלפת חבילת שוכר Internal Link

פרמטרים

שםסוגחובהתיאור
tenantIdstringכן
idstringכן
replaceTenantPackageBodyReplaceTenantPackageBodyכן

תגובה

מחזיר: APIEmptyResponse

דוגמה

replaceTenantPackage דוגמה
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto pkgId = utility::conversions::to_string_t("pkg-456");
4ReplaceTenantPackageBody body;
5body.planId = utility::conversions::to_string_t("enterprise");
6body.notes = boost::optional<utility::string_t>(utility::conversions::to_string_t("Upgrade request"));
7api->replaceTenantPackage(tenantId, pkgId, body)
8 .then([](std::shared_ptr<APIEmptyResponse>) { })
9 .then([](pplx::task<void> t) {
10 try { t.get(); } catch (const std::exception&) { }
11 });
12

עדכון חבילת שוכר Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
idstringYes
updateTenantPackageBodyUpdateTenantPackageBodyYes

תגובה

מחזיר: APIEmptyResponse

דוגמה

דוגמה ל‑updateTenantPackage
Copy Copy
1
2auto body = std::make_shared<UpdateTenantPackageBody>();
3body->packageId = utility::conversions::to_string_t("premium-plan");
4body->expirationDate = utility::conversions::to_string_t("2025-12-31");
5body->notes = boost::optional<utility::string_t>(utility::conversions::to_string_t("Upgraded package"));
6
7api->updateTenantPackage(utility::conversions::to_string_t("my-tenant-123"),
8 utility::conversions::to_string_t("pkg-456"),
9 body)
10 .then([](pplx::task<std::shared_ptr<APIEmptyResponse>> task) {
11 try {
12 auto response = task.get();
13 // טיפול בהצלחה
14 } catch (const std::exception& ex) {
15 // טיפול בשגיאה
16 }
17 });
18

יצירת משתמש שוכר Internal Link

פרמטרים

NameTypeRequiredDescription
tenantIdstringכן
createTenantUserBodyCreateTenantUserBodyכן

תגובה

Returns: CreateTenantUserResponse

דוגמה

createTenantUser דוגמה
Copy Copy
1
2auto body = CreateTenantUserBody{};
3body.email = utility::conversions::to_string_t("newuser@example.com");
4body.firstName = utility::conversions::to_string_t("Alice");
5body.lastName = utility::conversions::to_string_t("Smith");
6body.role = boost::optional<utility::string_t>(utility::conversions::to_string_t("moderator"));
7
8api->createTenantUser(utility::conversions::to_string_t("my-tenant-123"), body)
9 .then([](pplx::task<std::shared_ptr<CreateTenantUserResponse>> task) {
10 try {
11 auto response = task.get();
12 } catch (const std::exception&) {
13 }
14 });
15

מחיקת משתמש שוכר Internal Link

פרמטרים

NameTypeRequiredDescription
tenantIdstringכן
idstringכן
optionsconst DeleteTenantUserOptions&כן

תגובה

מחזיר: APIEmptyResponse

דוגמה

דוגמת deleteTenantUser
Copy Copy
1
2DeleteTenantUserOptions options;
3options.reason = boost::optional<utility::string_t>(U("User requested deletion"));
4
5api->deleteTenantUser(U("my-tenant-123"), U("user@example.com"), options)
6 .then([](std::shared_ptr<APIEmptyResponse> resp){
7 (void)resp;
8 });
9

קבלת משתמש שוכר Internal Link


פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
idstringכן

תגובה

מחזיר: GetTenantUserResponse

דוגמה

דוגמת getTenantUser
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto userId = utility::conversions::to_string_t("user@example.com");
4api->getTenantUser(tenantId, userId)
5 .then([](pplx::task<std::shared_ptr<GetTenantUserResponse>> task) {
6 try {
7 auto response = task.get();
8 // השתמש בתשובה לפי הצורך
9 } catch (const std::exception&) {
10 // טיפול בשגיאה
11 }
12 });
13

קבלת משתמשי שוכר Internal Link


פרמטרים

שםסוגחובהתיאור
tenantIdstringכן
skipdoubleלא

תגובה

מחזיר: GetTenantUsersResponse

דוגמה

דוגמת getTenantUsers
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3boost::optional<double> skip = 10;
4
5api->getTenantUsers(tenantId, skip).then([](pplx::task<std::shared_ptr<GetTenantUsersResponse>> t){
6 try {
7 auto resp = t.get();
8 } catch (const std::exception&) {
9 }
10});
11

החלפת משתמש שוכר Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
idstringYes
replaceTenantUserBodyReplaceTenantUserBodyYes
updateCommentsstringNo

תגובה

מחזיר: APIEmptyResponse

דוגמה

replaceTenantUser דוגמה
Copy Copy
1
2auto tenantId = utility::string_t(U("my-tenant-123"));
3auto userId = utility::string_t(U("john.doe@example.com"));
4ReplaceTenantUserBody replaceBody;
5replaceBody.email = utility::string_t(U("john.doe@example.com"));
6replaceBody.role = utility::string_t(U("admin"));
7boost::optional<utility::string_t> updateComments = utility::string_t(U("Promoted to admin"));
8api->replaceTenantUser(tenantId, userId, replaceBody, updateComments)
9 .then([](std::shared_ptr<APIEmptyResponse> resp){ });
10

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
idstringYes
redirectURLstringNo

תגובה

מחזיר: APIEmptyResponse

דוגמה

דוגמת sendLoginLink
Copy Copy
1
2api->sendLoginLink(
3 U("my-tenant-123"),
4 U("user@example.com"),
5 boost::make_optional(U("https://myapp.com/auth/callback"))
6).then([](std::shared_ptr<APIEmptyResponse> resp) {
7});
8

עדכון משתמש שוכר Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
idstringYes
updateTenantUserBodyUpdateTenantUserBodyYes
updateCommentsstringNo

תשובה

מחזיר: APIEmptyResponse

דוגמה

דוגמת updateTenantUser
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3utility::string_t userId = U("user-456");
4UpdateTenantUserBody body;
5body.email = U("john.doe@example.com");
6body.role = U("admin");
7boost::optional<utility::string_t> updateComments = U("Promoted to admin");
8
9api->updateTenantUser(tenantId, userId, body, updateComments)
10 .then([](std::shared_ptr<APIEmptyResponse>){ });
11

יצירת שוכר Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
createTenantBodyCreateTenantBodyכן

תגובה

מחזיר: CreateTenantResponse

דוגמה

דוגמת createTenant
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3CreateTenantBody body;
4body.setName(utility::conversions::to_string_t("Acme Corp"));
5body.setAdminEmail(utility::conversions::to_string_t("admin@acme.com"));
6body.setPlan(utility::conversions::to_string_t("enterprise"));
7body.setDescription(boost::optional<utility::string_t>(utility::conversions::to_string_t("Primary tenant for Acme")));
8
9api->createTenant(tenantId, body).then([](pplx::task<std::shared_ptr<CreateTenantResponse>> t){
10 auto resp = t.get();
11});
12

מחיקת שוכר Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
idstringYes
surestringNo

תגובה

מחזיר: APIEmptyResponse

דוגמה

דוגמה למחיקת deleteTenant
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto userId = utility::conversions::to_string_t("user@example.com");
4boost::optional<utility::string_t> sure = utility::conversions::to_string_t("true");
5api->deleteTenant(tenantId, userId, sure)
6 .then([](pplx::task<std::shared_ptr<APIEmptyResponse>> t){
7 try{
8 auto resp = t.get();
9 auto result = std::make_shared<APIEmptyResponse>(*resp);
10 }catch(const std::exception&){})
11

קבלת שוכר Internal Link

Parameters

שםסוגנדרשתיאור
tenantIdstringכן
idstringכן

תגובה

מחזיר: GetTenantResponse

דוגמה

דוגמת getTenant
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto id = utility::conversions::to_string_t("tenant-admin-456");
4boost::optional<utility::string_t> includeDetails = utility::conversions::to_string_t("full");
5api->getTenant(tenantId, id)
6 .then([](std::shared_ptr<GetTenantResponse> resp) {
7 if (resp) {
8 std::wcout << resp->toString() << std::endl;
9 }
10 });
11

קבלת שוכרים Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
optionsconst GetTenantsOptions&כן

תגובה

מחזיר: GetTenantsResponse

דוגמה

דוגמה getTenants
Copy Copy
1
2GetTenantsOptions options;
3options.includeDeleted = boost::make_optional(false);
4options.searchTerm = boost::make_optional(utility::string_t(U("enterprise")));
5
6api->getTenants(utility::string_t(U("my-tenant-123")), options)
7 .then([](std::shared_ptr<GetTenantsResponse> response) {
8 })
9 .then([](pplx::task<void> t){ try{ t.get(); }catch(...){} });
10

עדכון שוכר Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
idstringYes
updateTenantBodyUpdateTenantBodyYes

תגובה

מחזיר: APIEmptyResponse

דוגמה

דוגמת updateTenant
Copy Copy
1
2auto tenantId = utility::string_t(U("my-tenant-123"));
3auto recordId = utility::string_t(U("tenant-456"));
4UpdateTenantBody body;
5body.name = boost::optional<utility::string_t>(U("Acme Corp"));
6body.contactEmail = boost::optional<utility::string_t>(U("admin@acme.com"));
7api->updateTenant(tenantId, recordId, body).then([](std::shared_ptr<APIEmptyResponse> resp) {
8 auto log = std::make_shared<utility::string_t>(U("Tenant update succeeded"));
9 (void)resp;
10 (void)log;
11});
12

שינוי סטטוס כרטיס Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
userIdstringכן
idstringכן
changeTicketStateBodyChangeTicketStateBodyכן

תגובה

מחזיר: ChangeTicketStateResponse

דוגמה

דוגמת changeTicketState
Copy Copy
1
2auto body = std::make_shared<ChangeTicketStateBody>();
3body->state = U("closed");
4body->comment = boost::optional<utility::string_t>(U("Ticket resolved"));
5api->changeTicketState(U("my-tenant-123"), U("user@example.com"), U("ticket-456"), *body)
6 .then([](std::shared_ptr<ChangeTicketStateResponse>) {});
7

יצירת כרטיס Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
userIdstringYes
createTicketBodyCreateTicketBodyYes

תשובה

מחזיר: CreateTicketResponse

דוגמה

דוגמה createTicket
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto userId = utility::conversions::to_string_t("john.doe@example.com");
4CreateTicketBody ticketBody;
5ticketBody.setSubject(utility::conversions::to_string_t("Login Issue"));
6ticketBody.setDescription(utility::conversions::to_string_t("Cannot log in after password reset."));
7boost::optional<int> priority = 2;
8ticketBody.setPriority(priority);
9api->createTicket(tenantId, userId, ticketBody).then([](pplx::task<std::shared_ptr<CreateTicketResponse>> task){
10 try{
11 auto response = task.get();
12 // השתמש בתגובה לפי הצורך
13 }catch(const std::exception&){
14 // טיפול בשגיאה
15 }
16});
17

קבלת כרטיס Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
idstringYes
userIdstringNo

תגובה

מחזיר: GetTicketResponse

דוגמה

getTicket דוגמה
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3utility::string_t ticketId = U("ticket-789");
4boost::optional<utility::string_t> userId = U("alice@example.com");
5api->getTicket(tenantId, ticketId, userId).then([](pplx::task<std::shared_ptr<GetTicketResponse>> task){
6 try{
7 auto resp = task.get();
8 }catch(const std::exception&){
9 }
10});
11

קבלת כרטיסים Internal Link

פרמטרים

שםסוגנחוץתיאור
tenantIdstringYes
optionsconst GetTicketsOptions&Yes

תגובה

מחזיר: GetTicketsResponse

דוגמה

דוגמת getTickets
Copy Copy
1
2auto options = GetTicketsOptions{};
3options.page = boost::optional<int>(1);
4options.status = boost::optional<utility::string_t>(U("open"));
5api->getTickets(U("my-tenant-123"), options).then([](pplx::task<std::shared_ptr<GetTicketsResponse>> task) {
6 try {
7 auto response = task.get();
8 auto responseCopy = std::make_shared<GetTicketsResponse>(*response);
9 } catch (const std::exception&) {
10 }
11});
12

קבלת תרגומים Internal Link

Parameters

שםסוגחובהתיאור
r_namespacestringYes
componentstringYes
optionsconst GetTranslationsOptions&Yes

תגובה

מחזיר: GetTranslationsResponse

דוגמה

דוגמה getTranslations
Copy Copy
1
2utility::string_t ns = U("my-tenant-123");
3utility::string_t comp = U("comments");
4auto optsPtr = std::make_shared<GetTranslationsOptions>();
5optsPtr->language = boost::make_optional(U("en"));
6optsPtr->fallback = boost::none;
7api->getTranslations(ns, comp, *optsPtr)
8 .then([](pplx::task<std::shared_ptr<GetTranslationsResponse>> t) {
9 try {
10 auto resp = t.get();
11 } catch (const std::exception& e) {
12 }
13 });
14

העלאת תמונה Internal Link

העלאת ושינוי גודל של תמונה

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
fileHttpContentכן
optionsconst UploadImageOptions&כן

תגובה

מחזיר: UploadImageResponse

דוגמה

דוגמת uploadImage
Copy Copy
1
2auto fileStream = concurrency::streams::fstream::open_istream(U("avatar.png"), std::ios::in).get();
3HttpContent file(fileStream, U("image/png"));
4UploadImageOptions options;
5options.description = boost::optional<utility::string_t>(U("Profile picture"));
6options.width = boost::optional<int>(256);
7options.height = boost::optional<int>(256);
8api->uploadImage(U("my-tenant-123"), file, options).then([](pplx::task<std::shared_ptr<UploadImageResponse>> t){
9 auto resp = t.get();
10});
11

קבלת התקדמות תג משתמש לפי Id Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
idstringYes

תגובה

מחזיר: APIGetUserBadgeProgressResponse

דוגמה

דוגמה ל‑getUserBadgeProgressById
Copy Copy
1
2auto tenantId = U("my-tenant-123");
3auto userId = U("user-456");
4api->getUserBadgeProgressById(tenantId, userId)
5 .then([=](pplx::task<std::shared_ptr<APIGetUserBadgeProgressResponse>> t){
6 try{
7 auto resp = t.get();
8 boost::optional<std::shared_ptr<APIGetUserBadgeProgressResponse>> optResp = resp;
9 if(optResp){}
10 }catch(const std::exception&){}
11 });
12

קבלת התקדמות תג משתמש לפי מזהה משתמש Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
userIdstringכן

תגובה

מחזיר: APIGetUserBadgeProgressResponse

דוגמה

דוגמת getUserBadgeProgressByUserId
Copy Copy
1
2boost::optional<std::shared_ptr<APIGetUserBadgeProgressResponse>> responseOpt;
3api->getUserBadgeProgressByUserId(
4 utility::conversions::to_string_t("my-tenant-123"),
5 utility::conversions::to_string_t("user@example.com"))
6 .then([&responseOpt](pplx::task<std::shared_ptr<APIGetUserBadgeProgressResponse>> t) {
7 try {
8 responseOpt = t.get();
9 } catch (...) {
10 responseOpt = boost::none;
11 }
12 });
13

קבלת רשימת התקדמות תג משתמש Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
optionsconst GetUserBadgeProgressListOptions&Yes

תגובה

מחזיר: APIGetUserBadgeProgressListResponse

דוגמה

דוגמת getUserBadgeProgressList
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3GetUserBadgeProgressListOptions options;
4options.userId = U("user@example.com");
5options.page = boost::optional<int>(1);
6options.pageSize = boost::optional<int>(20);
7api->getUserBadgeProgressList(tenantId, options)
8 .then([](std::shared_ptr<APIGetUserBadgeProgressListResponse> resp) {
9 if (!resp) return;
10 for (const auto& badge : resp->badges) {
11 // לעבד תג
12 }
13 });
14

יצירת תג משתמש Internal Link

פרמטרים

שםסוגחובהתיאור
tenantIdstringYes
createUserBadgeParamsCreateUserBadgeParamsYes

תגובה

מחזיר: APICreateUserBadgeResponse

דוגמה

דוגמת createUserBadge
Copy Copy
1
2auto tenantId = U("my-tenant-123");
3CreateUserBadgeParams badgeParams;
4badgeParams.userEmail = U("user@example.com");
5badgeParams.badgeCode = U("gold");
6badgeParams.expirationDate = boost::optional<utility::datetime>(utility::datetime::utc_now() + utility::datetime::from_seconds(2592000));
7api->createUserBadge(tenantId, badgeParams).then([](std::shared_ptr<APICreateUserBadgeResponse> resp){
8 if (resp && resp->success) {
9 auto result = std::make_shared<APICreateUserBadgeResponse>(*resp);
10 }
11});
12

מחיקת תג משתמש Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
idstringכן

תגובה

מחזיר: APIEmptySuccessResponse

דוגמה

דוגמת deleteUserBadge
Copy Copy
1
2auto tenantId = boost::optional<utility::string_t>(U("my-tenant-123"));
3auto badgeId = utility::string_t(U("badge-789"));
4api->deleteUserBadge(tenantId.value(), badgeId)
5 .then([](std::shared_ptr<APIEmptySuccessResponse> resp){
6 auto copy = std::make_shared<APIEmptySuccessResponse>(*resp);
7 })
8 .then([](pplx::task<void> t){
9 try{ t.get(); } catch(const std::exception&){ }
10 });
11

קבלת תג משתמש Internal Link

פרמטרים

שםסוגחובהתיאור
tenantIdstringכן
idstringכן

תגובה

מחזיר: APIGetUserBadgeResponse

דוגמה

דוגמת getUserBadge
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3utility::string_t userId = U("user-456");
4api->getUserBadge(tenantId, userId).then([](pplx::task<std::shared_ptr<APIGetUserBadgeResponse>> t){
5 try{
6 auto resp = t.get();
7 boost::optional<std::string> badgeUrl = resp->badge_url ? boost::optional<std::string>(*resp->badge_url) : boost::none;
8 }catch(const std::exception&){
9 }
10});
11

קבלת תגי משתמש Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
optionsconst GetUserBadgesOptions&Yes

תגובה

מחזיר: APIGetUserBadgesResponse

דוגמה

getUserBadges דוגמה
Copy Copy
1
2GetUserBadgesOptions opts;
3opts.userId = boost::make_optional(U("user@example.com"));
4opts.includeExpired = boost::make_optional(false);
5
6api->getUserBadges(U("my-tenant-123"), opts)
7 .then([](pplx::task<std::shared_ptr<APIGetUserBadgesResponse>> t) {
8 try {
9 auto response = t.get();
10 } catch (const std::exception&) {
11 }
12 });
13

עדכון תג משתמש Internal Link

פרמטרים

שםסוגחובהתיאור
tenantIdstringכן
idstringכן
updateUserBadgeParamsUpdateUserBadgeParamsכן

תגובה

מחזיר: APIEmptySuccessResponse

דוגמה

דוגמת updateUserBadge
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto userId = utility::conversions::to_string_t("user@example.com");
4UpdateUserBadgeParams params;
5params.badgeId = utility::conversions::to_string_t("vip-badge");
6params.expiration = boost::optional<utility::datetime>(utility::datetime::from_string(U("2024-12-31T23:59:59Z")));
7api->updateUserBadge(tenantId, userId, params)
8 .then([](std::shared_ptr<APIEmptySuccessResponse> resp){
9 std::cout << "Badge updated successfully\n";
10 })
11 .catch([](std::exception const& e){
12 std::cerr << "Error updating badge: " << e.what() << "\n";
13 });
14

קבלת ספירת התראות למשתמש Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
ssostringלא

תגובה

מחזיר: GetUserNotificationCountResponse

דוגמה

דוגמה getUserNotificationCount
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3boost::optional<utility::string_t> sso = utility::conversions::to_string_t("user@example.com");
4api->getUserNotificationCount(tenantId, sso).then([](pplx::task<std::shared_ptr<GetUserNotificationCountResponse>> t){
5 try{
6 auto resp = t.get();
7 // השתמש ב‑resp לפי הצורך
8 }catch(const std::exception&){
9 // טיפול בשגיאה
10 }
11});
12

קבלת התראות משתמש Internal Link

פרמטרים

NameTypeRequiredDescription
tenantIdstringYes
optionsconst GetUserNotificationsOptions&Yes

תגובה

מחזיר: GetMyNotificationsResponse

דוגמה

דוגמת getUserNotifications
Copy Copy
1
2utility::string_t tenantId = utility::string_t("my-tenant-123");
3GetUserNotificationsOptions options;
4options.limit = boost::optional<int>(20);
5options.unreadOnly = boost::optional<bool>(true);
6api->getUserNotifications(tenantId, options)
7 .then([](pplx::task<std::shared_ptr<GetMyNotificationsResponse>> task){
8 auto resp = task.get();
9 auto notifications = std::make_shared<GetMyNotificationsResponse>(*resp);
10 });
11

איפוס ספירת התראות משתמש Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
ssostringלא

תגובה

מחזיר: ResetUserNotificationsResponse

דוגמה

resetUserNotificationCount דוגמה
Copy Copy
1
2auto resetTask = api->resetUserNotificationCount(
3 U("my-tenant-123"),
4 boost::optional<utility::string_t>(U("user@example.com"))
5).then([](std::shared_ptr<ResetUserNotificationsResponse> resp){
6});
7

איפוס התראות משתמש Internal Link

פרמטרים

NameTypeRequiredDescription
tenantIdstringYes
optionsconst ResetUserNotificationsOptions&Yes

תגובה

מחזיר: ResetUserNotificationsResponse

דוגמה

דוגמת resetUserNotifications
Copy Copy
1
2auto tenantId = utility::string_t(U("my-tenant-123"));
3ResetUserNotificationsOptions options;
4options.email = boost::optional<utility::string_t>(U("user@example.com"));
5api->resetUserNotifications(tenantId, options)
6 .then([](std::shared_ptr<ResetUserNotificationsResponse> resp) {
7 // עיבוד תגובה
8 });
9

עדכון סטטוס מנוי להודעות על תגובות עבור משתמש Internal Link

הפעל או בטל התראות לתגובה ספציפית.

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
notificationIdstringYes
optedInOrOutstringYes
commentIdstringYes
ssostringNo

תגובה

מחזיר: UpdateUserNotificationCommentSubscriptionStatusResponse

דוגמה

דוגמה ל‑updateUserNotificationCommentSubscriptionStatus
Copy Copy
1
2auto updateTask = api->updateUserNotificationCommentSubscriptionStatus(
3 utility::conversions::to_string_t("my-tenant-123"),
4 utility::conversions::to_string_t("notif-456"),
5 utility::conversions::to_string_t("optedIn"),
6 utility::conversions::to_string_t("comment-789"),
7 boost::optional<utility::string_t>(utility::conversions::to_string_t("sso-token-abc"))
8).then([](std::shared_ptr<UpdateUserNotificationCommentSubscriptionStatusResponse> resp){
9 (void)resp;
10});
11

עדכון סטטוס מנוי להודעות על עמוד עבור משתמש Internal Link

אפשר או בטל התראות עבור דף. כאשר משתמשים מנויים לדף, נוצרות התראות עבור תגובות שורש חדשות, וגם

פרמטרים

שםסוגחובהתיאור
tenantIdstringYes
urlIdstringYes
urlstringYes
pageTitlestringYes
subscribedOrUnsubscribedstringYes
ssostringNo

תגובה

מחזיר: UpdateUserNotificationPageSubscriptionStatusResponse

דוגמה

updateUserNotificationPageSubscriptionStatus דוגמה
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3utility::string_t urlId = U("page-456");
4utility::string_t url = U("https://example.com/articles/awesome-article");
5utility::string_t pageTitle = U("Awesome Article");
6utility::string_t subscription = U("subscribed");
7boost::optional<utility::string_t> sso = boost::make_optional<utility::string_t>(U("sso-token-789"));
8
9api->updateUserNotificationPageSubscriptionStatus(tenantId, urlId, url, pageTitle, subscription, sso)
10 .then([](std::shared_ptr<UpdateUserNotificationPageSubscriptionStatusResponse> resp) {
11 // עיבוד resp אם נדרש
12 });
13

עדכון סטטוס התראה למשתמש Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringכן
notificationIdstringכן
newStatusstringכן
ssostringלא

תגובה

מחזיר: UpdateUserNotificationStatusResponse

דוגמה

updateUserNotificationStatus דוגמה
Copy Copy
1
2api->updateUserNotificationStatus(
3 U("my-tenant-123"),
4 U("notif-456"),
5 U("read"),
6 boost::optional<utility::string_t>(U("sso-token-abc"))
7).then([](std::shared_ptr<UpdateUserNotificationStatusResponse> resp) {
8}).wait();
9

קבלת מצבי נוכחות של משתמשים Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
urlIdWSstringYes
userIdsstringYes

תגובה

מחזירה: GetUserPresenceStatusesResponse

דוגמה

דוגמת getUserPresenceStatuses
Copy Copy
1
2auto tenantId = U("my-tenant-123");
3auto urlIdWS = U("article-789");
4auto userIds = U("alice@example.com,bob@example.com");
5boost::optional<utility::string_t> optionalFilter = boost::none;
6api->getUserPresenceStatuses(tenantId, urlIdWS, userIds)
7 .then([](pplx::task<std::shared_ptr<GetUserPresenceStatusesResponse>> t){
8 try{
9 auto response = t.get();
10 }catch(...){
11 }
12 });
13

חיפוש משתמשים Internal Link

Parameters

NameTypeRequiredDescription
tenantIdstringכן
urlIdstringכן
optionsconst SearchUsersOptions&כן

Response

מחזיר: SearchUsersResult

Example

דוגמת searchUsers
Copy Copy
1
2utility::string_t tenantId = U("my-tenant-123");
3utility::string_t urlId = U("article-456");
4SearchUsersOptions options;
5options.query = U("john.doe@example.com");
6options.page = boost::optional<int>(1);
7options.pageSize = boost::optional<int>(20);
8api->searchUsers(tenantId, urlId, options).then([](pplx::task<std::shared_ptr<SearchUsersResult>> task){
9 try{
10 auto result = task.get();
11 }catch(const std::exception&){}
12});
13

קבלת משתמש Internal Link

Parameters

NameTypeRequiredDescription
tenantIdstringYes
idstringYes

תגובה

מחזיר: GetUserResponse

דוגמה

דוגמת getUser
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto userId = utility::conversions::to_string_t("user-789");
4boost::optional<utility::string_t> optTag = boost::none;
5
6api->getUser(tenantId, userId)
7 .then([=](pplx::task<std::shared_ptr<GetUserResponse>> task) {
8 try {
9 auto response = task.get();
10 if (!response) {
11 response = std::make_shared<GetUserResponse>();
12 }
13 // עיבוד התגובה לפי הצורך
14 } catch (const std::exception&) {
15 // טיפול בשגיאה
16 }
17 });
18

יצירת הצבעה Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
commentIdstringYes
directionstringYes
optionsconst CreateVoteOptions&Yes

תגובה

מחזיר: VoteResponse

דוגמה

createVote דוגמה
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto commentId = utility::conversions::to_string_t("cmt-456");
4auto direction = utility::conversions::to_string_t("up");
5auto optionsPtr = std::make_shared<CreateVoteOptions>();
6optionsPtr->userId = utility::conversions::to_string_t("user-789");
7optionsPtr->ipAddress = boost::optional<utility::string_t>(utility::conversions::to_string_t("192.168.1.100"));
8api->createVote(tenantId, commentId, direction, *optionsPtr)
9 .then([](std::shared_ptr<VoteResponse> resp){});
10

מחיקת הצבעה Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
idstringYes
editKeystringNo

תגובה

מחזיר: VoteDeleteResponse

דוגמה

דוגמת deleteVote
Copy Copy
1
2auto tenantId = utility::conversions::to_string_t("my-tenant-123");
3auto voteId = utility::conversions::to_string_t("vote-9876");
4boost::optional<utility::string_t> editKey = utility::conversions::to_string_t("edit-abc123");
5
6api->deleteVote(tenantId, voteId, editKey).then([](pplx::task<std::shared_ptr<VoteDeleteResponse>> task) {
7 try {
8 auto response = task.get();
9 // יש לעבד את התגובה כנדרש
10 } catch (const std::exception&) {
11 // טיפול ב‑שגיאה
12 }
13});
14

קבלת הצבעות Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
urlIdstringYes

תגובה

מחזיר: GetVotesResponse

דוגמה

דוגמת getVotes
Copy Copy
1
2auto tenantId = utility::string_t(U("my-tenant-123"));
3auto urlId = utility::string_t(U("article-456"));
4boost::optional<utility::string_t> extraHeader = boost::none;
5
6api->getVotes(tenantId, urlId).then([=](pplx::task<std::shared_ptr<GetVotesResponse>> task) {
7 try {
8 auto original = task.get();
9 auto response = std::make_shared<GetVotesResponse>(*original);
10 } catch (...) {
11 // טיפול בשגיאה
12 }
13});
14

קבלת הצבעות עבור משתמש Internal Link

פרמטרים

שםסוגנדרשתיאור
tenantIdstringYes
urlIdstringYes
optionsconst GetVotesForUserOptions&Yes

תגובה

מחזיר: GetVotesForUserResponse

דוגמה

דוגמת getVotesForUser
Copy Copy
1
2auto tenantId = utility::string_t(U("my-tenant-123"));
3auto urlId = utility::string_t(U("post-456"));
4GetVotesForUserOptions options;
5options.page = boost::optional<int>(2);
6options.pageSize = boost::optional<int>(50);
7api->getVotesForUser(tenantId, urlId, options).then([](std::shared_ptr<GetVotesForUserResponse> response) {
8 if (response) {
9 // לטפל בתגובה, למשל, לעבור על הקולות
10 }
11});
12

צריכים עזרה?

אם תיתקלו בבעיות או יש לכם שאלות לגבי ה-SDK של C++, נא:

תרומה

תרומות מתקבלות בברכה! אנא בקרו ב-מאגר GitHub לקבלת הנחיות לתרומה.