@productcraft/social 1.1.1 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +10 -0
- package/api.md +250 -246
- package/dist/index.cjs +257 -247
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +270 -249
- package/dist/index.d.ts +270 -249
- package/dist/index.js +257 -247
- package/dist/index.js.map +1 -1
- package/manifest.json +198 -198
- package/package.json +25 -8
package/api.md
CHANGED
|
@@ -20,7 +20,7 @@ Community-level analytics rollup: total active actors, published posts, publishe
|
|
|
20
20
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
21
21
|
|
|
22
22
|
```ts
|
|
23
|
-
const communityAnalytics = await social.communities.analytics("
|
|
23
|
+
const communityAnalytics = await social.communities.analytics("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
24
24
|
```
|
|
25
25
|
|
|
26
26
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-workspaces-workspace-id-communities-community-id-analytics)
|
|
@@ -62,7 +62,7 @@ Delete a community. Cascades to every actor, post, comment, edge, flag, and noti
|
|
|
62
62
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
63
63
|
|
|
64
64
|
```ts
|
|
65
|
-
await social.communities.delete("
|
|
65
|
+
await social.communities.delete("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
66
66
|
```
|
|
67
67
|
|
|
68
68
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#delete-v1-workspaces-workspace-id-communities-community-id)
|
|
@@ -104,7 +104,7 @@ Get one community by id.
|
|
|
104
104
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
105
105
|
|
|
106
106
|
```ts
|
|
107
|
-
const community = await social.communities.retrieve("
|
|
107
|
+
const community = await social.communities.retrieve("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
108
108
|
```
|
|
109
109
|
|
|
110
110
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-workspaces-workspace-id-communities-community-id)
|
|
@@ -125,7 +125,7 @@ Update community display name, description, settings, or status. Status transiti
|
|
|
125
125
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
126
126
|
|
|
127
127
|
```ts
|
|
128
|
-
const community = await social.communities.update("
|
|
128
|
+
const community = await social.communities.update("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", { description: "string" });
|
|
129
129
|
```
|
|
130
130
|
|
|
131
131
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#patch-v1-workspaces-workspace-id-communities-community-id)
|
|
@@ -148,10 +148,10 @@ Every comment an actor authored, all statuses (published / hidden / removed) —
|
|
|
148
148
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
149
149
|
|
|
150
150
|
```ts
|
|
151
|
-
for await (const comment of social.communities.actors.comments.list("
|
|
151
|
+
for await (const comment of social.communities.actors.comments.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
152
152
|
console.log(comment);
|
|
153
153
|
}
|
|
154
|
-
const page = await social.communities.actors.comments.list("
|
|
154
|
+
const page = await social.communities.actors.comments.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
155
155
|
```
|
|
156
156
|
|
|
157
157
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-workspaces-workspace-id-communities-community-id-actors-actor-id-comments)
|
|
@@ -174,10 +174,10 @@ Every reaction an actor has given — post reactions and comment reactions unifi
|
|
|
174
174
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
175
175
|
|
|
176
176
|
```ts
|
|
177
|
-
for await (const reaction of social.communities.actors.reactions.list("
|
|
177
|
+
for await (const reaction of social.communities.actors.reactions.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
178
178
|
console.log(reaction);
|
|
179
179
|
}
|
|
180
|
-
const page = await social.communities.actors.reactions.list("
|
|
180
|
+
const page = await social.communities.actors.reactions.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
181
181
|
```
|
|
182
182
|
|
|
183
183
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-workspaces-workspace-id-communities-community-id-actors-actor-id-reactions)
|
|
@@ -202,7 +202,7 @@ Apply a moderation action directly, without a preceding flag (task 017). Acts on
|
|
|
202
202
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
203
203
|
|
|
204
204
|
```ts
|
|
205
|
-
const moderationAction = await social.communities.moderation.actions.create("
|
|
205
|
+
const moderationAction = await social.communities.moderation.actions.create("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {
|
|
206
206
|
action: "remove",
|
|
207
207
|
target_id: "bbbbbbbb-0000-0000-0000-000000000001",
|
|
208
208
|
target_kind: "direct_message",
|
|
@@ -231,7 +231,7 @@ Apply a shadow ban to an actor. The actor sees their own content normally; every
|
|
|
231
231
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
232
232
|
|
|
233
233
|
```ts
|
|
234
|
-
const moderationActor = await social.communities.moderation.actors.shadowBan("
|
|
234
|
+
const moderationActor = await social.communities.moderation.actors.shadowBan("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", { duration_hours: 168 });
|
|
235
235
|
```
|
|
236
236
|
|
|
237
237
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-workspaces-workspace-id-communities-community-id-moderation-actors-actor-id-shadow-ban)
|
|
@@ -249,7 +249,7 @@ Remove a shadow ban. No-op if not currently shadow-banned.
|
|
|
249
249
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
250
250
|
|
|
251
251
|
```ts
|
|
252
|
-
const moderationActor = await social.communities.moderation.actors.unshadowBan("
|
|
252
|
+
const moderationActor = await social.communities.moderation.actors.unshadowBan("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
253
253
|
```
|
|
254
254
|
|
|
255
255
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#delete-v1-workspaces-workspace-id-communities-community-id-moderation-actors-actor-id-shadow-ban)
|
|
@@ -273,10 +273,10 @@ Append-only audit of moderator actions in this community. 50/page (max 200), cur
|
|
|
273
273
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
274
274
|
|
|
275
275
|
```ts
|
|
276
|
-
for await (const audit of social.communities.moderation.audit.list("
|
|
276
|
+
for await (const audit of social.communities.moderation.audit.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
277
277
|
console.log(audit);
|
|
278
278
|
}
|
|
279
|
-
const page = await social.communities.moderation.audit.list("
|
|
279
|
+
const page = await social.communities.moderation.audit.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
280
280
|
```
|
|
281
281
|
|
|
282
282
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-workspaces-workspace-id-communities-community-id-moderation-audit)
|
|
@@ -300,7 +300,7 @@ Add a hidden word to the community lexicon. A comment whose body contains the te
|
|
|
300
300
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
301
301
|
|
|
302
302
|
```ts
|
|
303
|
-
const blockedTerm = await social.communities.moderation.blockedTerms.create("
|
|
303
|
+
const blockedTerm = await social.communities.moderation.blockedTerms.create("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", { term: "spoiler" });
|
|
304
304
|
```
|
|
305
305
|
|
|
306
306
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-workspaces-workspace-id-communities-community-id-moderation-blocked-terms)
|
|
@@ -317,7 +317,7 @@ Remove a hidden word. Idempotent — 204 whether or not it existed.
|
|
|
317
317
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
318
318
|
|
|
319
319
|
```ts
|
|
320
|
-
await social.communities.moderation.blockedTerms.delete("
|
|
320
|
+
await social.communities.moderation.blockedTerms.delete("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "spoiler");
|
|
321
321
|
```
|
|
322
322
|
|
|
323
323
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#delete-v1-workspaces-workspace-id-communities-community-id-moderation-blocked-terms-term)
|
|
@@ -338,10 +338,10 @@ List the community hidden-words lexicon, newest-first. Cursor-paginated (50/page
|
|
|
338
338
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
339
339
|
|
|
340
340
|
```ts
|
|
341
|
-
for await (const blockedTerm of social.communities.moderation.blockedTerms.list("
|
|
341
|
+
for await (const blockedTerm of social.communities.moderation.blockedTerms.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
342
342
|
console.log(blockedTerm);
|
|
343
343
|
}
|
|
344
|
-
const page = await social.communities.moderation.blockedTerms.list("
|
|
344
|
+
const page = await social.communities.moderation.blockedTerms.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
345
345
|
```
|
|
346
346
|
|
|
347
347
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-workspaces-workspace-id-communities-community-id-moderation-blocked-terms)
|
|
@@ -364,10 +364,10 @@ List every conversation in the community, most-recent-activity first. Moderation
|
|
|
364
364
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
365
365
|
|
|
366
366
|
```ts
|
|
367
|
-
for await (const conversation of social.communities.moderation.conversations.list("
|
|
367
|
+
for await (const conversation of social.communities.moderation.conversations.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
368
368
|
console.log(conversation);
|
|
369
369
|
}
|
|
370
|
-
const page = await social.communities.moderation.conversations.list("
|
|
370
|
+
const page = await social.communities.moderation.conversations.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
371
371
|
```
|
|
372
372
|
|
|
373
373
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-workspaces-workspace-id-communities-community-id-moderation-conversations)
|
|
@@ -390,10 +390,10 @@ List every message in a conversation. Moderation-only.
|
|
|
390
390
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
391
391
|
|
|
392
392
|
```ts
|
|
393
|
-
for await (const message of social.communities.moderation.conversations.messages.list("
|
|
393
|
+
for await (const message of social.communities.moderation.conversations.messages.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
394
394
|
console.log(message);
|
|
395
395
|
}
|
|
396
|
-
const page = await social.communities.moderation.conversations.messages.list("
|
|
396
|
+
const page = await social.communities.moderation.conversations.messages.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
397
397
|
```
|
|
398
398
|
|
|
399
399
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-workspaces-workspace-id-communities-community-id-moderation-conversations-conversation-id-messages)
|
|
@@ -417,10 +417,10 @@ List flags in this community. Filter by ?status=open|dismissed|actioned. 50/page
|
|
|
417
417
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
418
418
|
|
|
419
419
|
```ts
|
|
420
|
-
for await (const flag of social.communities.moderation.flags.list("
|
|
420
|
+
for await (const flag of social.communities.moderation.flags.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
421
421
|
console.log(flag);
|
|
422
422
|
}
|
|
423
|
-
const page = await social.communities.moderation.flags.list("
|
|
423
|
+
const page = await social.communities.moderation.flags.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
424
424
|
```
|
|
425
425
|
|
|
426
426
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-workspaces-workspace-id-communities-community-id-moderation-flags)
|
|
@@ -443,7 +443,7 @@ Apply a moderation action to a flag. Records an audit entry and updates the targ
|
|
|
443
443
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
444
444
|
|
|
445
445
|
```ts
|
|
446
|
-
const actOnFlag = await social.communities.moderation.flags.resolve("
|
|
446
|
+
const actOnFlag = await social.communities.moderation.flags.resolve("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", { action: "hide" });
|
|
447
447
|
```
|
|
448
448
|
|
|
449
449
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-workspaces-workspace-id-communities-community-id-moderation-flags-flag-id-actions)
|
|
@@ -467,10 +467,10 @@ List currently shadow-banned actors in this community. 50/page (max 200), cursor
|
|
|
467
467
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
468
468
|
|
|
469
469
|
```ts
|
|
470
|
-
for await (const shadowBanned of social.communities.moderation.shadowBanned.list("
|
|
470
|
+
for await (const shadowBanned of social.communities.moderation.shadowBanned.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
471
471
|
console.log(shadowBanned);
|
|
472
472
|
}
|
|
473
|
-
const page = await social.communities.moderation.shadowBanned.list("
|
|
473
|
+
const page = await social.communities.moderation.shadowBanned.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
474
474
|
```
|
|
475
475
|
|
|
476
476
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-workspaces-workspace-id-communities-community-id-moderation-shadow-banned)
|
|
@@ -499,7 +499,7 @@ Deliveries are signed with the Standard Webhooks headers `webhook-id`, `webhook-
|
|
|
499
499
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
500
500
|
|
|
501
501
|
```ts
|
|
502
|
-
const webhookEndpointWithSecret = await social.communities.webhooks.endpoints.create("
|
|
502
|
+
const webhookEndpointWithSecret = await social.communities.webhooks.endpoints.create("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", { url: "https://api.acme.com/webhooks" });
|
|
503
503
|
```
|
|
504
504
|
|
|
505
505
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-workspaces-workspace-id-communities-community-id-webhooks-endpoints)
|
|
@@ -521,7 +521,7 @@ Queued retries are dropped. Its past attempts stay in the event log until the ev
|
|
|
521
521
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
522
522
|
|
|
523
523
|
```ts
|
|
524
|
-
await social.communities.webhooks.endpoints.delete("
|
|
524
|
+
await social.communities.webhooks.endpoints.delete("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
525
525
|
```
|
|
526
526
|
|
|
527
527
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#delete-v1-workspaces-workspace-id-communities-community-id-webhooks-endpoints-endpoint-id)
|
|
@@ -545,7 +545,7 @@ At most 10, so this is always one page. Signing secrets are never returned here,
|
|
|
545
545
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
546
546
|
|
|
547
547
|
```ts
|
|
548
|
-
for await (const endpoint of social.communities.webhooks.endpoints.list("
|
|
548
|
+
for await (const endpoint of social.communities.webhooks.endpoints.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
549
549
|
console.log(endpoint);
|
|
550
550
|
}
|
|
551
551
|
```
|
|
@@ -569,7 +569,7 @@ The endpoint's URL, subscription, on/off state, failure streak and the last 4 ch
|
|
|
569
569
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
570
570
|
|
|
571
571
|
```ts
|
|
572
|
-
const webhookEndpoint = await social.communities.webhooks.endpoints.retrieve("
|
|
572
|
+
const webhookEndpoint = await social.communities.webhooks.endpoints.retrieve("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
573
573
|
```
|
|
574
574
|
|
|
575
575
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-workspaces-workspace-id-communities-community-id-webhooks-endpoints-endpoint-id)
|
|
@@ -595,7 +595,7 @@ For `grace_hours` (default 24) the previous secret keeps signing too: `webhook-s
|
|
|
595
595
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
596
596
|
|
|
597
597
|
```ts
|
|
598
|
-
const webhookEndpointWithSecret = await social.communities.webhooks.endpoints.rotateSecret("
|
|
598
|
+
const webhookEndpointWithSecret = await social.communities.webhooks.endpoints.rotateSecret("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", { grace_hours: 24 });
|
|
599
599
|
```
|
|
600
600
|
|
|
601
601
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-workspaces-workspace-id-communities-community-id-webhooks-endpoints-endpoint-id-rotate-secret)
|
|
@@ -621,7 +621,7 @@ Delivers the catalogue example of `event_type`, signed like any delivery, with `
|
|
|
621
621
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
622
622
|
|
|
623
623
|
```ts
|
|
624
|
-
const webhookDeliveryAttempt = await social.communities.webhooks.endpoints.test("
|
|
624
|
+
const webhookDeliveryAttempt = await social.communities.webhooks.endpoints.test("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", { event_type: "post.created" });
|
|
625
625
|
```
|
|
626
626
|
|
|
627
627
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-workspaces-workspace-id-communities-community-id-webhooks-endpoints-endpoint-id-test)
|
|
@@ -648,7 +648,7 @@ Only the fields sent change. `enabled: true` (or a new URL) also clears an autom
|
|
|
648
648
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
649
649
|
|
|
650
650
|
```ts
|
|
651
|
-
const webhookEndpoint = await social.communities.webhooks.endpoints.update("
|
|
651
|
+
const webhookEndpoint = await social.communities.webhooks.endpoints.update("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", { description: "Production receiver" });
|
|
652
652
|
```
|
|
653
653
|
|
|
654
654
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#patch-v1-workspaces-workspace-id-communities-community-id-webhooks-endpoints-endpoint-id)
|
|
@@ -671,7 +671,7 @@ Each type with a plain description, its group and an example `data` object (what
|
|
|
671
671
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
672
672
|
|
|
673
673
|
```ts
|
|
674
|
-
const listWebhookEventTypes = await social.communities.webhooks.eventTypes.list("
|
|
674
|
+
const listWebhookEventTypes = await social.communities.webhooks.eventTypes.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
675
675
|
```
|
|
676
676
|
|
|
677
677
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-workspaces-workspace-id-communities-community-id-webhooks-event-types)
|
|
@@ -698,10 +698,10 @@ Every event logged while at least one endpoint existed, with the latest state pe
|
|
|
698
698
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
699
699
|
|
|
700
700
|
```ts
|
|
701
|
-
for await (const event of social.communities.webhooks.events.list("
|
|
701
|
+
for await (const event of social.communities.webhooks.events.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
702
702
|
console.log(event);
|
|
703
703
|
}
|
|
704
|
-
const page = await social.communities.webhooks.events.list("
|
|
704
|
+
const page = await social.communities.webhooks.events.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
705
705
|
```
|
|
706
706
|
|
|
707
707
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-workspaces-workspace-id-communities-community-id-webhooks-events)
|
|
@@ -727,7 +727,7 @@ Same body and `webhook-id`, freshly signed, to every switched-on endpoint that r
|
|
|
727
727
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
728
728
|
|
|
729
729
|
```ts
|
|
730
|
-
const replayWebhookEvent = await social.communities.webhooks.events.replay("
|
|
730
|
+
const replayWebhookEvent = await social.communities.webhooks.events.replay("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "evt_3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
731
731
|
```
|
|
732
732
|
|
|
733
733
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-workspaces-workspace-id-communities-community-id-webhooks-events-event-id-replay)
|
|
@@ -749,7 +749,7 @@ The event as it was sent (`type`, `data`) and every delivery attempt to every en
|
|
|
749
749
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
750
750
|
|
|
751
751
|
```ts
|
|
752
|
-
const webhookEventDetail = await social.communities.webhooks.events.retrieve("
|
|
752
|
+
const webhookEventDetail = await social.communities.webhooks.events.retrieve("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "evt_3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
753
753
|
```
|
|
754
754
|
|
|
755
755
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-workspaces-workspace-id-communities-community-id-webhooks-events-event-id)
|
|
@@ -789,6 +789,10 @@ const socialWorkspaceStats = await social.stats.retrieve();
|
|
|
789
789
|
|
|
790
790
|
Verifies the signature and returns `Social.UnwrapWebhookEvent`. Events: `actor.updated`, `asset.failed`, `asset.ready`, `comment.created`, `comment.deleted`, `comment.reaction.created`, `comment.updated`, `dm.message.created`, `edge.follow.created`, `edge.follow.deleted`, `edge.follow.request_approved`, `edge.follow.requested`, `flag.created`, `flag.updated`, `moderation.action.applied`, `post.created`, `post.deleted`, `post.reaction.created`, `post.updated`, `repost.created`, `tag.created`, plus `UnknownWebhookEvent` for types added later.
|
|
791
791
|
|
|
792
|
+
### `social.webhooks.sign({ payload, secret?, id?, timestamp? })`
|
|
793
|
+
|
|
794
|
+
Signs a test event exactly as ProductCraft signs deliveries (Standard Webhooks) and returns `{ payload, headers }`, ready for `unwrap` or a request to your handler. For tests; real deliveries come signed.
|
|
795
|
+
|
|
792
796
|
## webhooks.endpoints
|
|
793
797
|
|
|
794
798
|
### `social.webhooks.endpoints.create(params, options?)`
|
|
@@ -835,7 +839,7 @@ Queued retries are dropped. Its past attempts stay in the event log until the ev
|
|
|
835
839
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
836
840
|
|
|
837
841
|
```ts
|
|
838
|
-
await social.webhooks.endpoints.delete("
|
|
842
|
+
await social.webhooks.endpoints.delete("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
839
843
|
```
|
|
840
844
|
|
|
841
845
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#delete-v1-workspaces-workspace-id-webhooks-endpoints-endpoint-id)
|
|
@@ -883,7 +887,7 @@ The endpoint's URL, subscription, on/off state, failure streak and the last 4 ch
|
|
|
883
887
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
884
888
|
|
|
885
889
|
```ts
|
|
886
|
-
const webhookEndpoint = await social.webhooks.endpoints.retrieve("
|
|
890
|
+
const webhookEndpoint = await social.webhooks.endpoints.retrieve("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
887
891
|
```
|
|
888
892
|
|
|
889
893
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-workspaces-workspace-id-webhooks-endpoints-endpoint-id)
|
|
@@ -909,7 +913,7 @@ For `grace_hours` (default 24) the previous secret keeps signing too: `webhook-s
|
|
|
909
913
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
910
914
|
|
|
911
915
|
```ts
|
|
912
|
-
const webhookEndpointWithSecret = await social.webhooks.endpoints.rotateSecret("
|
|
916
|
+
const webhookEndpointWithSecret = await social.webhooks.endpoints.rotateSecret("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", { grace_hours: 24 });
|
|
913
917
|
```
|
|
914
918
|
|
|
915
919
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-workspaces-workspace-id-webhooks-endpoints-endpoint-id-rotate-secret)
|
|
@@ -935,7 +939,7 @@ Delivers the catalogue example of `event_type`, signed like any delivery, with `
|
|
|
935
939
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
936
940
|
|
|
937
941
|
```ts
|
|
938
|
-
const webhookDeliveryAttempt = await social.webhooks.endpoints.test("
|
|
942
|
+
const webhookDeliveryAttempt = await social.webhooks.endpoints.test("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", { event_type: "post.created" });
|
|
939
943
|
```
|
|
940
944
|
|
|
941
945
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-workspaces-workspace-id-webhooks-endpoints-endpoint-id-test)
|
|
@@ -962,7 +966,7 @@ Only the fields sent change. `enabled: true` (or a new URL) also clears an autom
|
|
|
962
966
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
963
967
|
|
|
964
968
|
```ts
|
|
965
|
-
const webhookEndpoint = await social.webhooks.endpoints.update("
|
|
969
|
+
const webhookEndpoint = await social.webhooks.endpoints.update("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", { description: "Production receiver" });
|
|
966
970
|
```
|
|
967
971
|
|
|
968
972
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#patch-v1-workspaces-workspace-id-webhooks-endpoints-endpoint-id)
|
|
@@ -1041,7 +1045,7 @@ Same body and `webhook-id`, freshly signed, to every switched-on endpoint that r
|
|
|
1041
1045
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1042
1046
|
|
|
1043
1047
|
```ts
|
|
1044
|
-
const replayWebhookEvent = await social.webhooks.events.replay("
|
|
1048
|
+
const replayWebhookEvent = await social.webhooks.events.replay("evt_3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
1045
1049
|
```
|
|
1046
1050
|
|
|
1047
1051
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-workspaces-workspace-id-webhooks-events-event-id-replay)
|
|
@@ -1063,7 +1067,7 @@ The event as it was sent (`type`, `data`) and every delivery attempt to every en
|
|
|
1063
1067
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1064
1068
|
|
|
1065
1069
|
```ts
|
|
1066
|
-
const webhookEventDetail = await social.webhooks.events.retrieve("
|
|
1070
|
+
const webhookEventDetail = await social.webhooks.events.retrieve("evt_3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
1067
1071
|
```
|
|
1068
1072
|
|
|
1069
1073
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-workspaces-workspace-id-webhooks-events-event-id)
|
|
@@ -1086,7 +1090,7 @@ Bulk actor upsert (max 200 per call) — the import lane. Each item runs the exa
|
|
|
1086
1090
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1087
1091
|
|
|
1088
1092
|
```ts
|
|
1089
|
-
const batchActors = await social.community("
|
|
1093
|
+
const batchActors = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.batch({ actors: [{ external_id: "user_abc123" }] });
|
|
1090
1094
|
```
|
|
1091
1095
|
|
|
1092
1096
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-actors-batch)
|
|
@@ -1104,7 +1108,7 @@ Denormalised counters for one actor (followers, following, posts, comments, bloc
|
|
|
1104
1108
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1105
1109
|
|
|
1106
1110
|
```ts
|
|
1107
|
-
const actorCounters = await social.community("
|
|
1111
|
+
const actorCounters = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.counters("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
1108
1112
|
```
|
|
1109
1113
|
|
|
1110
1114
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-actors-actor-id-counters)
|
|
@@ -1127,7 +1131,7 @@ Upsert an actor by external_id. Creates on first call, updates on subsequent cal
|
|
|
1127
1131
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1128
1132
|
|
|
1129
1133
|
```ts
|
|
1130
|
-
const upsertActor = await social.community("
|
|
1134
|
+
const upsertActor = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.create({ external_id: "user_abc123" });
|
|
1131
1135
|
```
|
|
1132
1136
|
|
|
1133
1137
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-actors)
|
|
@@ -1145,7 +1149,7 @@ Delete an actor. Hard delete — cascades to every post, comment, edge, flag, an
|
|
|
1145
1149
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1146
1150
|
|
|
1147
1151
|
```ts
|
|
1148
|
-
await social.community("
|
|
1152
|
+
await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.delete("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
1149
1153
|
```
|
|
1150
1154
|
|
|
1151
1155
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#delete-v1-communities-community-id-actors-actor-id)
|
|
@@ -1166,7 +1170,7 @@ An actor's follower time series: live follower_count plus a nightly-snapshot dai
|
|
|
1166
1170
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1167
1171
|
|
|
1168
1172
|
```ts
|
|
1169
|
-
const actorInsights = await social.community("
|
|
1173
|
+
const actorInsights = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.insights("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
1170
1174
|
```
|
|
1171
1175
|
|
|
1172
1176
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-actors-actor-id-insights)
|
|
@@ -1188,10 +1192,10 @@ List actors in a community. 50 per page by default (max 200) — paginate with t
|
|
|
1188
1192
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1189
1193
|
|
|
1190
1194
|
```ts
|
|
1191
|
-
for await (const actor of social.community("
|
|
1195
|
+
for await (const actor of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.list()) {
|
|
1192
1196
|
console.log(actor);
|
|
1193
1197
|
}
|
|
1194
|
-
const page = await social.community("
|
|
1198
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.list({}, { timeout: 5_000 });
|
|
1195
1199
|
```
|
|
1196
1200
|
|
|
1197
1201
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-actors)
|
|
@@ -1214,7 +1218,7 @@ Read-over-POST (the id list is too large for a query string) — no side effects
|
|
|
1214
1218
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1215
1219
|
|
|
1216
1220
|
```ts
|
|
1217
|
-
const postState = await social.community("
|
|
1221
|
+
const postState = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.postState("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {
|
|
1218
1222
|
post_ids: ["bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb", "cccccccc-cccc-cccc-cccc-cccccccccccc"],
|
|
1219
1223
|
});
|
|
1220
1224
|
```
|
|
@@ -1233,7 +1237,7 @@ Get an actor by its UUID.
|
|
|
1233
1237
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1234
1238
|
|
|
1235
1239
|
```ts
|
|
1236
|
-
const actor = await social.community("
|
|
1240
|
+
const actor = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.retrieve("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
1237
1241
|
```
|
|
1238
1242
|
|
|
1239
1243
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-actors-actor-id)
|
|
@@ -1254,7 +1258,7 @@ Update actor profile fields. Pass only the fields you want to change.
|
|
|
1254
1258
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1255
1259
|
|
|
1256
1260
|
```ts
|
|
1257
|
-
const actor = await social.community("
|
|
1261
|
+
const actor = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.update("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", { avatar_url: "string" });
|
|
1258
1262
|
```
|
|
1259
1263
|
|
|
1260
1264
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#patch-v1-communities-community-id-actors-actor-id)
|
|
@@ -1279,10 +1283,10 @@ Archived posts keep their engagement (reaction / comment counts intact) but fall
|
|
|
1279
1283
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1280
1284
|
|
|
1281
1285
|
```ts
|
|
1282
|
-
for await (const archived of social.community("
|
|
1286
|
+
for await (const archived of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.archived.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
1283
1287
|
console.log(archived);
|
|
1284
1288
|
}
|
|
1285
|
-
const page = await social.community("
|
|
1289
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.archived.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
1286
1290
|
```
|
|
1287
1291
|
|
|
1288
1292
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-actors-actor-id-archived)
|
|
@@ -1304,10 +1308,10 @@ List an actor's uploaded assets — the "your uploads" surface + GDPR export wal
|
|
|
1304
1308
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1305
1309
|
|
|
1306
1310
|
```ts
|
|
1307
|
-
for await (const asset of social.community("
|
|
1311
|
+
for await (const asset of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.assets.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
1308
1312
|
console.log(asset);
|
|
1309
1313
|
}
|
|
1310
|
-
const page = await social.community("
|
|
1314
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.assets.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
1311
1315
|
```
|
|
1312
1316
|
|
|
1313
1317
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-actors-actor-id-assets)
|
|
@@ -1331,10 +1335,10 @@ List actors this actor has blocked. Pass `?expand=dst_actor` to nest each blocke
|
|
|
1331
1335
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1332
1336
|
|
|
1333
1337
|
```ts
|
|
1334
|
-
for await (const block of social.community("
|
|
1338
|
+
for await (const block of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.blocks.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
1335
1339
|
console.log(block);
|
|
1336
1340
|
}
|
|
1337
|
-
const page = await social.community("
|
|
1341
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.blocks.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
1338
1342
|
```
|
|
1339
1343
|
|
|
1340
1344
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-actors-actor-id-blocks)
|
|
@@ -1359,10 +1363,10 @@ Bookmarks are private — only the bookmarker should see their own list. The PAK
|
|
|
1359
1363
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1360
1364
|
|
|
1361
1365
|
```ts
|
|
1362
|
-
for await (const bookmark of social.community("
|
|
1366
|
+
for await (const bookmark of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.bookmarks.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
1363
1367
|
console.log(bookmark);
|
|
1364
1368
|
}
|
|
1365
|
-
const page = await social.community("
|
|
1369
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.bookmarks.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
1366
1370
|
```
|
|
1367
1371
|
|
|
1368
1372
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-actors-actor-id-bookmarks)
|
|
@@ -1385,7 +1389,7 @@ Batch-resolve external_ids to actors (max 200 per call). POST-only — external_
|
|
|
1385
1389
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1386
1390
|
|
|
1387
1391
|
```ts
|
|
1388
|
-
const actorsByExternalBatch = await social.community("
|
|
1392
|
+
const actorsByExternalBatch = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.byExternal.batch({ external_ids: ["user_abc123", "user_def456"] });
|
|
1389
1393
|
```
|
|
1390
1394
|
|
|
1391
1395
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-actors-by-external-batch)
|
|
@@ -1403,7 +1407,7 @@ Look up an actor by the customer-supplied external_id.
|
|
|
1403
1407
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1404
1408
|
|
|
1405
1409
|
```ts
|
|
1406
|
-
const actor = await social.community("
|
|
1410
|
+
const actor = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.byExternal.retrieve("user_42");
|
|
1407
1411
|
```
|
|
1408
1412
|
|
|
1409
1413
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-actors-by-external-external-id)
|
|
@@ -1429,10 +1433,10 @@ Returns the actors on `external_id`'s close-friends list, with denormalised acto
|
|
|
1429
1433
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1430
1434
|
|
|
1431
1435
|
```ts
|
|
1432
|
-
for await (const closeFriend of social.community("
|
|
1436
|
+
for await (const closeFriend of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.closeFriends.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
1433
1437
|
console.log(closeFriend);
|
|
1434
1438
|
}
|
|
1435
|
-
const page = await social.community("
|
|
1439
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.closeFriends.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
1436
1440
|
```
|
|
1437
1441
|
|
|
1438
1442
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-actors-actor-id-close-friends)
|
|
@@ -1453,10 +1457,10 @@ List actors this actor has dismissed from suggestions. Pass `?expand=dst_actor`
|
|
|
1453
1457
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1454
1458
|
|
|
1455
1459
|
```ts
|
|
1456
|
-
for await (const dismissedSuggestion of social.community("
|
|
1460
|
+
for await (const dismissedSuggestion of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.dismissedSuggestions.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
1457
1461
|
console.log(dismissedSuggestion);
|
|
1458
1462
|
}
|
|
1459
|
-
const page = await social.community("
|
|
1463
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.dismissedSuggestions.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
1460
1464
|
```
|
|
1461
1465
|
|
|
1462
1466
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-actors-actor-id-dismissed-suggestions)
|
|
@@ -1481,10 +1485,10 @@ Drafts are visible only via this endpoint — they're stripped from public feeds
|
|
|
1481
1485
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1482
1486
|
|
|
1483
1487
|
```ts
|
|
1484
|
-
for await (const draft of social.community("
|
|
1488
|
+
for await (const draft of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.drafts.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
1485
1489
|
console.log(draft);
|
|
1486
1490
|
}
|
|
1487
|
-
const page = await social.community("
|
|
1491
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.drafts.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
1488
1492
|
```
|
|
1489
1493
|
|
|
1490
1494
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-actors-actor-id-drafts)
|
|
@@ -1508,10 +1512,10 @@ Feed for an actor: their own posts + posts from actors they follow, with blocks
|
|
|
1508
1512
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1509
1513
|
|
|
1510
1514
|
```ts
|
|
1511
|
-
for await (const feed of social.community("
|
|
1515
|
+
for await (const feed of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.feed.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
1512
1516
|
console.log(feed);
|
|
1513
1517
|
}
|
|
1514
|
-
const page = await social.community("
|
|
1518
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.feed.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
1515
1519
|
```
|
|
1516
1520
|
|
|
1517
1521
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-actors-actor-id-feed)
|
|
@@ -1533,10 +1537,10 @@ List incoming follow requests for a (private) actor, newest-first (task 014).
|
|
|
1533
1537
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1534
1538
|
|
|
1535
1539
|
```ts
|
|
1536
|
-
for await (const followRequest of social.community("
|
|
1540
|
+
for await (const followRequest of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.followRequests.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
1537
1541
|
console.log(followRequest);
|
|
1538
1542
|
}
|
|
1539
|
-
const page = await social.community("
|
|
1543
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.followRequests.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
1540
1544
|
```
|
|
1541
1545
|
|
|
1542
1546
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-actors-actor-id-follow-requests)
|
|
@@ -1560,10 +1564,10 @@ List the actors who follow this actor. Pass `?expand=src_actor` to nest each fol
|
|
|
1560
1564
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1561
1565
|
|
|
1562
1566
|
```ts
|
|
1563
|
-
for await (const follower of social.community("
|
|
1567
|
+
for await (const follower of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.followers.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
1564
1568
|
console.log(follower);
|
|
1565
1569
|
}
|
|
1566
|
-
const page = await social.community("
|
|
1570
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.followers.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
1567
1571
|
```
|
|
1568
1572
|
|
|
1569
1573
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-actors-actor-id-followers)
|
|
@@ -1587,10 +1591,10 @@ List the actors this actor follows. Pass `?expand=dst_actor` to nest each follow
|
|
|
1587
1591
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1588
1592
|
|
|
1589
1593
|
```ts
|
|
1590
|
-
for await (const following of social.community("
|
|
1594
|
+
for await (const following of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.following.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
1591
1595
|
console.log(following);
|
|
1592
1596
|
}
|
|
1593
|
-
const page = await social.community("
|
|
1597
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.following.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
1594
1598
|
```
|
|
1595
1599
|
|
|
1596
1600
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-actors-actor-id-following)
|
|
@@ -1615,7 +1619,7 @@ Follow a hashtag on behalf of an actor. Idempotent — re-follow refreshes the f
|
|
|
1615
1619
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1616
1620
|
|
|
1617
1621
|
```ts
|
|
1618
|
-
const hashtagFollow = await social.community("
|
|
1622
|
+
const hashtagFollow = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.hashtagFollows.create("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", { tag: "storymode" });
|
|
1619
1623
|
```
|
|
1620
1624
|
|
|
1621
1625
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-actors-actor-id-hashtag-follows)
|
|
@@ -1634,7 +1638,7 @@ Unfollow a hashtag. Idempotent — 204 either way.
|
|
|
1634
1638
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1635
1639
|
|
|
1636
1640
|
```ts
|
|
1637
|
-
await social.community("
|
|
1641
|
+
await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.hashtagFollows.delete("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "launch");
|
|
1638
1642
|
```
|
|
1639
1643
|
|
|
1640
1644
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#delete-v1-communities-community-id-actors-actor-id-hashtag-follows-tag)
|
|
@@ -1655,10 +1659,10 @@ List the hashtags an actor follows. Cursor-paginated newest-first by followed_at
|
|
|
1655
1659
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1656
1660
|
|
|
1657
1661
|
```ts
|
|
1658
|
-
for await (const hashtagFollow of social.community("
|
|
1662
|
+
for await (const hashtagFollow of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.hashtagFollows.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
1659
1663
|
console.log(hashtagFollow);
|
|
1660
1664
|
}
|
|
1661
|
-
const page = await social.community("
|
|
1665
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.hashtagFollows.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
1662
1666
|
```
|
|
1663
1667
|
|
|
1664
1668
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-actors-actor-id-hashtag-follows)
|
|
@@ -1679,10 +1683,10 @@ List the posts an actor has hidden, newest-first.
|
|
|
1679
1683
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1680
1684
|
|
|
1681
1685
|
```ts
|
|
1682
|
-
for await (const hide of social.community("
|
|
1686
|
+
for await (const hide of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.hides.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
1683
1687
|
console.log(hide);
|
|
1684
1688
|
}
|
|
1685
|
-
const page = await social.community("
|
|
1689
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.hides.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
1686
1690
|
```
|
|
1687
1691
|
|
|
1688
1692
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-actors-actor-id-hides)
|
|
@@ -1708,10 +1712,10 @@ Pinned posts appear here regardless of their `expires_at`. Visibility still appl
|
|
|
1708
1712
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1709
1713
|
|
|
1710
1714
|
```ts
|
|
1711
|
-
for await (const highlight of social.community("
|
|
1715
|
+
for await (const highlight of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.highlights.list("aaaaaaaa-0000-0000-0000-000000000001")) {
|
|
1712
1716
|
console.log(highlight);
|
|
1713
1717
|
}
|
|
1714
|
-
const page = await social.community("
|
|
1718
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.highlights.list("aaaaaaaa-0000-0000-0000-000000000001", {}, { timeout: 5_000 });
|
|
1715
1719
|
```
|
|
1716
1720
|
|
|
1717
1721
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-actors-owner-actor-id-highlights)
|
|
@@ -1736,10 +1740,10 @@ Cursor-paginated, newest-first. Interleaves post + comment mentions in a single
|
|
|
1736
1740
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1737
1741
|
|
|
1738
1742
|
```ts
|
|
1739
|
-
for await (const mention of social.community("
|
|
1743
|
+
for await (const mention of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.mentions.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
1740
1744
|
console.log(mention);
|
|
1741
1745
|
}
|
|
1742
|
-
const page = await social.community("
|
|
1746
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.mentions.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
1743
1747
|
```
|
|
1744
1748
|
|
|
1745
1749
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-actors-actor-id-mentions)
|
|
@@ -1764,7 +1768,7 @@ Add (or refresh) a muted term for the actor. Re-posting the same `term` updates
|
|
|
1764
1768
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1765
1769
|
|
|
1766
1770
|
```ts
|
|
1767
|
-
const mutedTerm = await social.community("
|
|
1771
|
+
const mutedTerm = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.mutedTerms.create("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", { term: "spoiler" });
|
|
1768
1772
|
```
|
|
1769
1773
|
|
|
1770
1774
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-actors-actor-id-muted-terms)
|
|
@@ -1782,7 +1786,7 @@ Remove a muted term. Idempotent — 204 either way.
|
|
|
1782
1786
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1783
1787
|
|
|
1784
1788
|
```ts
|
|
1785
|
-
await social.community("
|
|
1789
|
+
await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.mutedTerms.delete("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "spoiler");
|
|
1786
1790
|
```
|
|
1787
1791
|
|
|
1788
1792
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#delete-v1-communities-community-id-actors-actor-id-muted-terms-term)
|
|
@@ -1803,10 +1807,10 @@ List the actor's currently-active muted terms, newest-first. Cursor-paginated (t
|
|
|
1803
1807
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1804
1808
|
|
|
1805
1809
|
```ts
|
|
1806
|
-
for await (const mutedTerm of social.community("
|
|
1810
|
+
for await (const mutedTerm of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.mutedTerms.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
1807
1811
|
console.log(mutedTerm);
|
|
1808
1812
|
}
|
|
1809
|
-
const page = await social.community("
|
|
1813
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.mutedTerms.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
1810
1814
|
```
|
|
1811
1815
|
|
|
1812
1816
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-actors-actor-id-muted-terms)
|
|
@@ -1830,10 +1834,10 @@ List actors this actor has muted. Pass `?expand=dst_actor` to nest each muted ac
|
|
|
1830
1834
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1831
1835
|
|
|
1832
1836
|
```ts
|
|
1833
|
-
for await (const mute of social.community("
|
|
1837
|
+
for await (const mute of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.mutes.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
1834
1838
|
console.log(mute);
|
|
1835
1839
|
}
|
|
1836
|
-
const page = await social.community("
|
|
1840
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.mutes.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
1837
1841
|
```
|
|
1838
1842
|
|
|
1839
1843
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-actors-actor-id-mutes)
|
|
@@ -1855,7 +1859,7 @@ Returns one row per known NotificationKind so the client UI can render every tog
|
|
|
1855
1859
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1856
1860
|
|
|
1857
1861
|
```ts
|
|
1858
|
-
const notificationPrefList = await social.community("
|
|
1862
|
+
const notificationPrefList = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.notificationPrefs.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
1859
1863
|
```
|
|
1860
1864
|
|
|
1861
1865
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-actors-actor-id-notification-prefs)
|
|
@@ -1878,7 +1882,7 @@ Idempotent upsert. Pass `{ enabled: false }` to mute, `{ enabled: true }` to re-
|
|
|
1878
1882
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1879
1883
|
|
|
1880
1884
|
```ts
|
|
1881
|
-
const notificationPref = await social.community("
|
|
1885
|
+
const notificationPref = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.notificationPrefs.update("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "follow", { enabled: false });
|
|
1882
1886
|
```
|
|
1883
1887
|
|
|
1884
1888
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#patch-v1-communities-community-id-actors-actor-id-notification-prefs-kind)
|
|
@@ -1903,10 +1907,10 @@ Reverse-chronological inbox. Pass `unread_only=true` to filter to unread rows on
|
|
|
1903
1907
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1904
1908
|
|
|
1905
1909
|
```ts
|
|
1906
|
-
for await (const notification of social.community("
|
|
1910
|
+
for await (const notification of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.notifications.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
1907
1911
|
console.log(notification);
|
|
1908
1912
|
}
|
|
1909
|
-
const page = await social.community("
|
|
1913
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.notifications.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
1910
1914
|
```
|
|
1911
1915
|
|
|
1912
1916
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-actors-actor-id-notifications)
|
|
@@ -1929,7 +1933,7 @@ Single bulk write. Optional `before` ISO timestamp scopes to rows older than tha
|
|
|
1929
1933
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1930
1934
|
|
|
1931
1935
|
```ts
|
|
1932
|
-
const result = await social.community("
|
|
1936
|
+
const result = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.notifications.markAllRead("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", { before: "2026-05-01T00:00:00.000Z" });
|
|
1933
1937
|
```
|
|
1934
1938
|
|
|
1935
1939
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-actors-actor-id-notifications-read-all)
|
|
@@ -1949,7 +1953,7 @@ Cheap badge endpoint backed by a partial index — safe to poll at the cadence o
|
|
|
1949
1953
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1950
1954
|
|
|
1951
1955
|
```ts
|
|
1952
|
-
const result = await social.community("
|
|
1956
|
+
const result = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.notifications.unreadCount("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
1953
1957
|
```
|
|
1954
1958
|
|
|
1955
1959
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-actors-actor-id-notifications-unread-count)
|
|
@@ -1972,7 +1976,7 @@ Idempotent: marking an already-read row read again is a no-op 204. Returns 404 i
|
|
|
1972
1976
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1973
1977
|
|
|
1974
1978
|
```ts
|
|
1975
|
-
await social.community("
|
|
1979
|
+
await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.notifications.update("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "11111111-1111-1111-1111-111111111111", { read: true });
|
|
1976
1980
|
```
|
|
1977
1981
|
|
|
1978
1982
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#patch-v1-communities-community-id-actors-actor-id-notifications-notification-id)
|
|
@@ -1997,7 +2001,7 @@ One query resolves the seven pairwise flags for a whole profile header or member
|
|
|
1997
2001
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
1998
2002
|
|
|
1999
2003
|
```ts
|
|
2000
|
-
const relationshipList = await social.community("
|
|
2004
|
+
const relationshipList = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.relationships.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", { with: "0b1c2d3e-4f50-4a6b-8c7d-8e9f0a1b2c3d" });
|
|
2001
2005
|
```
|
|
2002
2006
|
|
|
2003
2007
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-actors-src-actor-id-relationships)
|
|
@@ -2021,10 +2025,10 @@ List actors this actor has restricted. Pass `?expand=dst_actor` to nest each res
|
|
|
2021
2025
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2022
2026
|
|
|
2023
2027
|
```ts
|
|
2024
|
-
for await (const restrict of social.community("
|
|
2028
|
+
for await (const restrict of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.restricts.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
2025
2029
|
console.log(restrict);
|
|
2026
2030
|
}
|
|
2027
|
-
const page = await social.community("
|
|
2031
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.restricts.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
2028
2032
|
```
|
|
2029
2033
|
|
|
2030
2034
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-actors-actor-id-restricts)
|
|
@@ -2049,10 +2053,10 @@ Scheduled posts are invisible to everyone except the author until the per-minute
|
|
|
2049
2053
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2050
2054
|
|
|
2051
2055
|
```ts
|
|
2052
|
-
for await (const scheduledPost of social.community("
|
|
2056
|
+
for await (const scheduledPost of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.scheduledPosts.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
2053
2057
|
console.log(scheduledPost);
|
|
2054
2058
|
}
|
|
2055
|
-
const page = await social.community("
|
|
2059
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.scheduledPosts.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
2056
2060
|
```
|
|
2057
2061
|
|
|
2058
2062
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-actors-actor-id-scheduled-posts)
|
|
@@ -2076,7 +2080,7 @@ Includes the requester themselves and every actor they follow. Ordered by latest
|
|
|
2076
2080
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2077
2081
|
|
|
2078
2082
|
```ts
|
|
2079
|
-
for await (const storyTray of social.community("
|
|
2083
|
+
for await (const storyTray of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.storyTray.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
2080
2084
|
console.log(storyTray);
|
|
2081
2085
|
}
|
|
2082
2086
|
```
|
|
@@ -2103,10 +2107,10 @@ Friend-of-a-friend signal first (people the requester's followees also follow),
|
|
|
2103
2107
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2104
2108
|
|
|
2105
2109
|
```ts
|
|
2106
|
-
for await (const suggestedFollow of social.community("
|
|
2110
|
+
for await (const suggestedFollow of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.suggestedFollows.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
2107
2111
|
console.log(suggestedFollow);
|
|
2108
2112
|
}
|
|
2109
|
-
const page = await social.community("
|
|
2113
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.suggestedFollows.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
2110
2114
|
```
|
|
2111
2115
|
|
|
2112
2116
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-actors-actor-id-suggested-follows)
|
|
@@ -2132,10 +2136,10 @@ Approved tags only, on published + unexpired posts, newest-tag-first. Visibility
|
|
|
2132
2136
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2133
2137
|
|
|
2134
2138
|
```ts
|
|
2135
|
-
for await (const tagged of social.community("
|
|
2139
|
+
for await (const tagged of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.tagged.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
2136
2140
|
console.log(tagged);
|
|
2137
2141
|
}
|
|
2138
|
-
const page = await social.community("
|
|
2142
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").actors.tagged.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
2139
2143
|
```
|
|
2140
2144
|
|
|
2141
2145
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-actors-tagged-actor-id-tagged)
|
|
@@ -2159,7 +2163,7 @@ Finalize a presigned-PUT video upload. Verifies the stored object (existence, si
|
|
|
2159
2163
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2160
2164
|
|
|
2161
2165
|
```ts
|
|
2162
|
-
const uploadAsset = await social.community("
|
|
2166
|
+
const uploadAsset = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").assets.complete("eeeeeeee-0000-0000-0000-000000000001");
|
|
2163
2167
|
```
|
|
2164
2168
|
|
|
2165
2169
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-assets-asset-id-complete)
|
|
@@ -2184,7 +2188,7 @@ Upload media. Images (multipart): processed synchronously, returns ready. Videos
|
|
|
2184
2188
|
| 429 | `RateLimitError` | `RATE_LIMITED`, `TOO_MANY_ACTIVE_UPLOADS` | `TOO_MANY_ACTIVE_UPLOADS` — the community already has the max videos uploading/processing. Per-IP limit: more than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2185
2189
|
|
|
2186
2190
|
```ts
|
|
2187
|
-
const uploadAsset = await social.community("
|
|
2191
|
+
const uploadAsset = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").assets.create();
|
|
2188
2192
|
```
|
|
2189
2193
|
|
|
2190
2194
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-assets)
|
|
@@ -2202,7 +2206,7 @@ Delete an asset — removes every stored rendition object, then the row.
|
|
|
2202
2206
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2203
2207
|
|
|
2204
2208
|
```ts
|
|
2205
|
-
await social.community("
|
|
2209
|
+
await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").assets.delete("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
2206
2210
|
```
|
|
2207
2211
|
|
|
2208
2212
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#delete-v1-communities-community-id-assets-asset-id)
|
|
@@ -2220,7 +2224,7 @@ Fetch one asset with freshly-minted presigned rendition URLs.
|
|
|
2220
2224
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2221
2225
|
|
|
2222
2226
|
```ts
|
|
2223
|
-
const asset = await social.community("
|
|
2227
|
+
const asset = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").assets.retrieve("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
2224
2228
|
```
|
|
2225
2229
|
|
|
2226
2230
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-assets-asset-id)
|
|
@@ -2247,7 +2251,7 @@ Block another actor. Removes any existing follows/mutes between the two in eithe
|
|
|
2247
2251
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2248
2252
|
|
|
2249
2253
|
```ts
|
|
2250
|
-
const createEdge = await social.community("
|
|
2254
|
+
const createEdge = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").blocks.create({ dst_actor_id: "aaaaaaaa-0000-0000-0000-000000000002" });
|
|
2251
2255
|
```
|
|
2252
2256
|
|
|
2253
2257
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-blocks)
|
|
@@ -2265,7 +2269,7 @@ Unblock. Idempotent — 204 either way. Does NOT restore prior follows / mutes (
|
|
|
2265
2269
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2266
2270
|
|
|
2267
2271
|
```ts
|
|
2268
|
-
await social.community("
|
|
2272
|
+
await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").blocks.delete("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
2269
2273
|
```
|
|
2270
2274
|
|
|
2271
2275
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#delete-v1-communities-community-id-blocks-src-actor-id-dst-actor-id)
|
|
@@ -2294,7 +2298,7 @@ Idempotent on `(community, owner, member)`. 422 on self-add. 409 if a block exis
|
|
|
2294
2298
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2295
2299
|
|
|
2296
2300
|
```ts
|
|
2297
|
-
await social.community("
|
|
2301
|
+
await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").closeFriends.create({ member_actor_id: "aaaaaaaa-0000-0000-0000-000000000002" });
|
|
2298
2302
|
```
|
|
2299
2303
|
|
|
2300
2304
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-close-friends)
|
|
@@ -2314,7 +2318,7 @@ Idempotent: 204 whether or not the edge exists. After removal, `close_friends`-v
|
|
|
2314
2318
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2315
2319
|
|
|
2316
2320
|
```ts
|
|
2317
|
-
await social.community("
|
|
2321
|
+
await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").closeFriends.delete("aaaaaaaa-0000-0000-0000-000000000001", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
2318
2322
|
```
|
|
2319
2323
|
|
|
2320
2324
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#delete-v1-communities-community-id-close-friends-owner-actor-id-member-actor-id)
|
|
@@ -2341,7 +2345,7 @@ Create a collection. Default kind `bookmark`, visibility `private`. Pass an Idem
|
|
|
2341
2345
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2342
2346
|
|
|
2343
2347
|
```ts
|
|
2344
|
-
const collection = await social.community("
|
|
2348
|
+
const collection = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").collections.create({ name: "Travel" });
|
|
2345
2349
|
```
|
|
2346
2350
|
|
|
2347
2351
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-collections)
|
|
@@ -2362,7 +2366,7 @@ Delete a collection (owner only). Items cascade; the posts themselves are untouc
|
|
|
2362
2366
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2363
2367
|
|
|
2364
2368
|
```ts
|
|
2365
|
-
await social.community("
|
|
2369
|
+
await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").collections.delete("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", { caller_actor_id: "aaaaaaaa-0000-0000-0000-000000000001" });
|
|
2366
2370
|
```
|
|
2367
2371
|
|
|
2368
2372
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#delete-v1-communities-community-id-collections-collection-id)
|
|
@@ -2382,10 +2386,10 @@ List collections. Public ones are visible to anyone; private ones surface only t
|
|
|
2382
2386
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2383
2387
|
|
|
2384
2388
|
```ts
|
|
2385
|
-
for await (const collection of social.community("
|
|
2389
|
+
for await (const collection of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").collections.list()) {
|
|
2386
2390
|
console.log(collection);
|
|
2387
2391
|
}
|
|
2388
|
-
const page = await social.community("
|
|
2392
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").collections.list({}, { timeout: 5_000 });
|
|
2389
2393
|
```
|
|
2390
2394
|
|
|
2391
2395
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-collections)
|
|
@@ -2405,7 +2409,7 @@ Fetch one collection. Private collections resolve only for their owner (via acto
|
|
|
2405
2409
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2406
2410
|
|
|
2407
2411
|
```ts
|
|
2408
|
-
const collection = await social.community("
|
|
2412
|
+
const collection = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").collections.retrieve("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
2409
2413
|
```
|
|
2410
2414
|
|
|
2411
2415
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-collections-collection-id)
|
|
@@ -2427,7 +2431,7 @@ Update a collection (owner only) — rename, cover, visibility, reorder position
|
|
|
2427
2431
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2428
2432
|
|
|
2429
2433
|
```ts
|
|
2430
|
-
const collection = await social.community("
|
|
2434
|
+
const collection = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").collections.update("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
2431
2435
|
```
|
|
2432
2436
|
|
|
2433
2437
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#patch-v1-communities-community-id-collections-collection-id)
|
|
@@ -2452,7 +2456,7 @@ Add a post to a collection (owner only). Idempotent per (collection, post).
|
|
|
2452
2456
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2453
2457
|
|
|
2454
2458
|
```ts
|
|
2455
|
-
const collectionItem = await social.community("
|
|
2459
|
+
const collectionItem = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").collections.items.create("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", { post_id: "bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb" });
|
|
2456
2460
|
```
|
|
2457
2461
|
|
|
2458
2462
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-collections-collection-id-items)
|
|
@@ -2472,7 +2476,7 @@ Remove a post from a collection (owner only).
|
|
|
2472
2476
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2473
2477
|
|
|
2474
2478
|
```ts
|
|
2475
|
-
await social.community("
|
|
2479
|
+
await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").collections.items.delete("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", { caller_actor_id: "aaaaaaaa-0000-0000-0000-000000000001" });
|
|
2476
2480
|
```
|
|
2477
2481
|
|
|
2478
2482
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#delete-v1-communities-community-id-collections-collection-id-items-post-id)
|
|
@@ -2493,10 +2497,10 @@ List a collection's posts in curator order. Highlight collections bypass story e
|
|
|
2493
2497
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2494
2498
|
|
|
2495
2499
|
```ts
|
|
2496
|
-
for await (const item of social.community("
|
|
2500
|
+
for await (const item of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").collections.items.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
2497
2501
|
console.log(item);
|
|
2498
2502
|
}
|
|
2499
|
-
const page = await social.community("
|
|
2503
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").collections.items.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
2500
2504
|
```
|
|
2501
2505
|
|
|
2502
2506
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-collections-collection-id-items)
|
|
@@ -2517,7 +2521,7 @@ Reorder a post within a collection (owner only).
|
|
|
2517
2521
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2518
2522
|
|
|
2519
2523
|
```ts
|
|
2520
|
-
const collectionItem = await social.community("
|
|
2524
|
+
const collectionItem = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").collections.items.update("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", { position: 3 });
|
|
2521
2525
|
```
|
|
2522
2526
|
|
|
2523
2527
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#patch-v1-communities-community-id-collections-collection-id-items-post-id)
|
|
@@ -2538,7 +2542,7 @@ Accept `src_actor_id`'s connection request as `dst_actor_id`: approves the follo
|
|
|
2538
2542
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2539
2543
|
|
|
2540
2544
|
```ts
|
|
2541
|
-
const connectionResult = await social.community("
|
|
2545
|
+
const connectionResult = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").connections.accept("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
2542
2546
|
```
|
|
2543
2547
|
|
|
2544
2548
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-connections-dst-actor-id-src-actor-id-accept)
|
|
@@ -2562,7 +2566,7 @@ Request a connection (mutual follow). Runs the standard follow path: a private d
|
|
|
2562
2566
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2563
2567
|
|
|
2564
2568
|
```ts
|
|
2565
|
-
const connectionResult = await social.community("
|
|
2569
|
+
const connectionResult = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").connections.create({
|
|
2566
2570
|
dst_actor_id: "aaaaaaaa-0000-0000-0000-000000000002",
|
|
2567
2571
|
src_actor_id: "aaaaaaaa-0000-0000-0000-000000000001",
|
|
2568
2572
|
});
|
|
@@ -2584,7 +2588,7 @@ Sever a connection COMPLETELY: deletes the follow edges in both directions and w
|
|
|
2584
2588
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2585
2589
|
|
|
2586
2590
|
```ts
|
|
2587
|
-
await social.community("
|
|
2591
|
+
await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").connections.delete("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
2588
2592
|
```
|
|
2589
2593
|
|
|
2590
2594
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#delete-v1-communities-community-id-connections-actor-id-other-actor-id)
|
|
@@ -2610,7 +2614,7 @@ Open a conversation. Default `kind="direct"` is the naturally-idempotent 1-on-1
|
|
|
2610
2614
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2611
2615
|
|
|
2612
2616
|
```ts
|
|
2613
|
-
const conversation = await social.community("
|
|
2617
|
+
const conversation = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").conversations.create({});
|
|
2614
2618
|
```
|
|
2615
2619
|
|
|
2616
2620
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-conversations)
|
|
@@ -2632,7 +2636,7 @@ Leave the conversation. Drops the caller's participant row; the conversation is
|
|
|
2632
2636
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2633
2637
|
|
|
2634
2638
|
```ts
|
|
2635
|
-
await social.community("
|
|
2639
|
+
await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").conversations.delete("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {});
|
|
2636
2640
|
```
|
|
2637
2641
|
|
|
2638
2642
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#delete-v1-communities-community-id-conversations-conversation-id)
|
|
@@ -2654,7 +2658,7 @@ List the caller's conversations in this community, most-recent-activity first.
|
|
|
2654
2658
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2655
2659
|
|
|
2656
2660
|
```ts
|
|
2657
|
-
for await (const conversation of social.community("
|
|
2661
|
+
for await (const conversation of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").conversations.list({})) {
|
|
2658
2662
|
console.log(conversation);
|
|
2659
2663
|
}
|
|
2660
2664
|
```
|
|
@@ -2678,7 +2682,7 @@ Mark messages as read up to a given timestamp (default: now()). Sets the caller'
|
|
|
2678
2682
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2679
2683
|
|
|
2680
2684
|
```ts
|
|
2681
|
-
await social.community("
|
|
2685
|
+
await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").conversations.markRead("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {});
|
|
2682
2686
|
```
|
|
2683
2687
|
|
|
2684
2688
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-conversations-conversation-id-read)
|
|
@@ -2699,7 +2703,7 @@ Get a single conversation by id.
|
|
|
2699
2703
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2700
2704
|
|
|
2701
2705
|
```ts
|
|
2702
|
-
const conversation = await social.community("
|
|
2706
|
+
const conversation = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").conversations.retrieve("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {});
|
|
2703
2707
|
```
|
|
2704
2708
|
|
|
2705
2709
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-conversations-conversation-id)
|
|
@@ -2720,7 +2724,7 @@ Global unread message count for the caller across every conversation in this com
|
|
|
2720
2724
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2721
2725
|
|
|
2722
2726
|
```ts
|
|
2723
|
-
const unreadCount = await social.community("
|
|
2727
|
+
const unreadCount = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").conversations.unreadCount({});
|
|
2724
2728
|
```
|
|
2725
2729
|
|
|
2726
2730
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-conversations-unread-count)
|
|
@@ -2743,7 +2747,7 @@ Conversation-level update (task 025). Pass `name` to rename a group (admin-only)
|
|
|
2743
2747
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2744
2748
|
|
|
2745
2749
|
```ts
|
|
2746
|
-
const conversation = await social.community("
|
|
2750
|
+
const conversation = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").conversations.update("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {});
|
|
2747
2751
|
```
|
|
2748
2752
|
|
|
2749
2753
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#patch-v1-communities-community-id-conversations-conversation-id)
|
|
@@ -2769,7 +2773,7 @@ Add a member to a group conversation. Admin-only. Refuses if the new member has
|
|
|
2769
2773
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2770
2774
|
|
|
2771
2775
|
```ts
|
|
2772
|
-
const conversation = await social.community("
|
|
2776
|
+
const conversation = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").conversations.members.create("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {});
|
|
2773
2777
|
```
|
|
2774
2778
|
|
|
2775
2779
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-conversations-conversation-id-members)
|
|
@@ -2792,7 +2796,7 @@ Remove a participant. Admin-only unless the acting `?actor_id=` equals the targe
|
|
|
2792
2796
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2793
2797
|
|
|
2794
2798
|
```ts
|
|
2795
|
-
await social.community("
|
|
2799
|
+
await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").conversations.members.delete("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {});
|
|
2796
2800
|
```
|
|
2797
2801
|
|
|
2798
2802
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#delete-v1-communities-community-id-conversations-conversation-id-members-member-actor-id)
|
|
@@ -2814,7 +2818,7 @@ Update a participant (task 025). Field-level authz: `role` is admin-only; `muted
|
|
|
2814
2818
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2815
2819
|
|
|
2816
2820
|
```ts
|
|
2817
|
-
const conversation = await social.community("
|
|
2821
|
+
const conversation = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").conversations.members.update("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
2818
2822
|
```
|
|
2819
2823
|
|
|
2820
2824
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#patch-v1-communities-community-id-conversations-conversation-id-members-member-actor-id)
|
|
@@ -2840,7 +2844,7 @@ Send a message in the conversation. Pass an `Idempotency-Key` header to make ret
|
|
|
2840
2844
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2841
2845
|
|
|
2842
2846
|
```ts
|
|
2843
|
-
const directMessage = await social.community("
|
|
2847
|
+
const directMessage = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").conversations.messages.create("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {});
|
|
2844
2848
|
```
|
|
2845
2849
|
|
|
2846
2850
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-conversations-conversation-id-messages)
|
|
@@ -2862,7 +2866,7 @@ Soft-delete a message. Reserved to the sender; the row stays so the conversation
|
|
|
2862
2866
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2863
2867
|
|
|
2864
2868
|
```ts
|
|
2865
|
-
await social.community("
|
|
2869
|
+
await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").conversations.messages.delete("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {});
|
|
2866
2870
|
```
|
|
2867
2871
|
|
|
2868
2872
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#delete-v1-communities-community-id-conversations-conversation-id-messages-message-id)
|
|
@@ -2884,7 +2888,7 @@ List messages in the conversation. Default newest-first cursor. Pass `since` (en
|
|
|
2884
2888
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2885
2889
|
|
|
2886
2890
|
```ts
|
|
2887
|
-
for await (const message of social.community("
|
|
2891
|
+
for await (const message of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").conversations.messages.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {})) {
|
|
2888
2892
|
console.log(message);
|
|
2889
2893
|
}
|
|
2890
2894
|
```
|
|
@@ -2907,7 +2911,7 @@ Fetch a single message (task 024) — resolves a reply target without paging the
|
|
|
2907
2911
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2908
2912
|
|
|
2909
2913
|
```ts
|
|
2910
|
-
const directMessage = await social.community("
|
|
2914
|
+
const directMessage = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").conversations.messages.retrieve("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {});
|
|
2911
2915
|
```
|
|
2912
2916
|
|
|
2913
2917
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-conversations-conversation-id-messages-message-id)
|
|
@@ -2930,7 +2934,7 @@ Edit a message body. Allowed within 5 minutes of send and only by the sender.
|
|
|
2930
2934
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2931
2935
|
|
|
2932
2936
|
```ts
|
|
2933
|
-
const directMessage = await social.community("
|
|
2937
|
+
const directMessage = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").conversations.messages.update("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", { body: "edited" });
|
|
2934
2938
|
```
|
|
2935
2939
|
|
|
2936
2940
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#patch-v1-communities-community-id-conversations-conversation-id-messages-message-id)
|
|
@@ -2956,7 +2960,7 @@ Add a reaction to a direct message. Idempotent — re-posting the same (actor, t
|
|
|
2956
2960
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2957
2961
|
|
|
2958
2962
|
```ts
|
|
2959
|
-
const directMessageReactionCreated = await social.community("
|
|
2963
|
+
const directMessageReactionCreated = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").conversations.messages.reactions.create("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", { type: "heart" });
|
|
2960
2964
|
```
|
|
2961
2965
|
|
|
2962
2966
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-conversations-conversation-id-messages-message-id-reactions)
|
|
@@ -2974,7 +2978,7 @@ Remove the (actor, type) reaction. Idempotent — calling on a missing reaction
|
|
|
2974
2978
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2975
2979
|
|
|
2976
2980
|
```ts
|
|
2977
|
-
const directMessageReactionRemoved = await social.community("
|
|
2981
|
+
const directMessageReactionRemoved = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").conversations.messages.reactions.delete("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "like");
|
|
2978
2982
|
```
|
|
2979
2983
|
|
|
2980
2984
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#delete-v1-communities-community-id-conversations-conversation-id-messages-message-id-reactions-actor-id-type)
|
|
@@ -2996,7 +3000,7 @@ List the reactions on a direct message. Cursor-paginated, newest-first.
|
|
|
2996
3000
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
2997
3001
|
|
|
2998
3002
|
```ts
|
|
2999
|
-
for await (const reaction of social.community("
|
|
3003
|
+
for await (const reaction of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").conversations.messages.reactions.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {})) {
|
|
3000
3004
|
console.log(reaction);
|
|
3001
3005
|
}
|
|
3002
3006
|
```
|
|
@@ -3021,7 +3025,7 @@ Batch counters (max 100 actors per call) — render a member list with follower
|
|
|
3021
3025
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3022
3026
|
|
|
3023
3027
|
```ts
|
|
3024
|
-
const batchCounters = await social.community("
|
|
3028
|
+
const batchCounters = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").counters.list({ actor_ids: "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f,0b1c2d3e-4f50-4a6b-8c7d-8e9f0a1b2c3d" });
|
|
3025
3029
|
```
|
|
3026
3030
|
|
|
3027
3031
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-counters)
|
|
@@ -3045,10 +3049,10 @@ Discover / explore feed (task 019). Ranked surface over every public post in the
|
|
|
3045
3049
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3046
3050
|
|
|
3047
3051
|
```ts
|
|
3048
|
-
for await (const discoverFeed of social.community("
|
|
3052
|
+
for await (const discoverFeed of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").discoverFeed.list()) {
|
|
3049
3053
|
console.log(discoverFeed);
|
|
3050
3054
|
}
|
|
3051
|
-
const page = await social.community("
|
|
3055
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").discoverFeed.list({}, { timeout: 5_000 });
|
|
3052
3056
|
```
|
|
3053
3057
|
|
|
3054
3058
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-discover-feed)
|
|
@@ -3073,7 +3077,7 @@ Dismiss an actor from your follow suggestions ("don't suggest"). Idempotent. The
|
|
|
3073
3077
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3074
3078
|
|
|
3075
3079
|
```ts
|
|
3076
|
-
const createEdge = await social.community("
|
|
3080
|
+
const createEdge = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").dismissedSuggestions.create({ dst_actor_id: "aaaaaaaa-0000-0000-0000-000000000002" });
|
|
3077
3081
|
```
|
|
3078
3082
|
|
|
3079
3083
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-dismissed-suggestions)
|
|
@@ -3089,7 +3093,7 @@ Un-dismiss a suggestion. Idempotent — 204 either way. The actor becomes eligib
|
|
|
3089
3093
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3090
3094
|
|
|
3091
3095
|
```ts
|
|
3092
|
-
await social.community("
|
|
3096
|
+
await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").dismissedSuggestions.delete("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
3093
3097
|
```
|
|
3094
3098
|
|
|
3095
3099
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#delete-v1-communities-community-id-dismissed-suggestions-src-actor-id-dst-actor-id)
|
|
@@ -3116,7 +3120,7 @@ File a moderation report against a post or comment. Idempotent per (reporter, ta
|
|
|
3116
3120
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3117
3121
|
|
|
3118
3122
|
```ts
|
|
3119
|
-
const createFlag = await social.community("
|
|
3123
|
+
const createFlag = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").flags.create({ target_id: "bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb", target_kind: "post" });
|
|
3120
3124
|
```
|
|
3121
3125
|
|
|
3122
3126
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-flags)
|
|
@@ -3137,10 +3141,10 @@ List a reporter's own flags (task 017). Requires `actor_id` (the reporter) — t
|
|
|
3137
3141
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3138
3142
|
|
|
3139
3143
|
```ts
|
|
3140
|
-
for await (const flag of social.community("
|
|
3144
|
+
for await (const flag of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").flags.list()) {
|
|
3141
3145
|
console.log(flag);
|
|
3142
3146
|
}
|
|
3143
|
-
const page = await social.community("
|
|
3147
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").flags.list({}, { timeout: 5_000 });
|
|
3144
3148
|
```
|
|
3145
3149
|
|
|
3146
3150
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-flags)
|
|
@@ -3159,7 +3163,7 @@ Approve a pending follow request (task 014). The destination (private) actor app
|
|
|
3159
3163
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3160
3164
|
|
|
3161
3165
|
```ts
|
|
3162
|
-
const createEdge = await social.community("
|
|
3166
|
+
const createEdge = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").followRequests.approve("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
3163
3167
|
```
|
|
3164
3168
|
|
|
3165
3169
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-follow-requests-dst-actor-id-src-actor-id-approve)
|
|
@@ -3176,7 +3180,7 @@ Decline a pending follow request (task 014). Deletes the request; no edge, no no
|
|
|
3176
3180
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3177
3181
|
|
|
3178
3182
|
```ts
|
|
3179
|
-
await social.community("
|
|
3183
|
+
await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").followRequests.delete("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
3180
3184
|
```
|
|
3181
3185
|
|
|
3182
3186
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#delete-v1-communities-community-id-follow-requests-dst-actor-id-src-actor-id)
|
|
@@ -3199,7 +3203,7 @@ Bulk follow creation (max 200 per call) — the graph-import lane. Each item run
|
|
|
3199
3203
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3200
3204
|
|
|
3201
3205
|
```ts
|
|
3202
|
-
const batchFollows = await social.community("
|
|
3206
|
+
const batchFollows = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").follows.batch({
|
|
3203
3207
|
follows: [
|
|
3204
3208
|
{
|
|
3205
3209
|
actor_id: "aaaaaaaa-0000-0000-0000-000000000001",
|
|
@@ -3231,7 +3235,7 @@ Follow another actor. Idempotent. If the destination is private (task 014), a fo
|
|
|
3231
3235
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3232
3236
|
|
|
3233
3237
|
```ts
|
|
3234
|
-
const followResult = await social.community("
|
|
3238
|
+
const followResult = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").follows.create({ dst_actor_id: "aaaaaaaa-0000-0000-0000-000000000002" });
|
|
3235
3239
|
```
|
|
3236
3240
|
|
|
3237
3241
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-follows)
|
|
@@ -3249,7 +3253,7 @@ Unfollow. Idempotent — 204 even if the follow didn't exist.
|
|
|
3249
3253
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3250
3254
|
|
|
3251
3255
|
```ts
|
|
3252
|
-
await social.community("
|
|
3256
|
+
await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").follows.delete("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
3253
3257
|
```
|
|
3254
3258
|
|
|
3255
3259
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#delete-v1-communities-community-id-follows-src-actor-id-dst-actor-id)
|
|
@@ -3273,10 +3277,10 @@ List hashtags in this community. Default order is `first_used_at` desc; `order=t
|
|
|
3273
3277
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3274
3278
|
|
|
3275
3279
|
```ts
|
|
3276
|
-
for await (const hashtag of social.community("
|
|
3280
|
+
for await (const hashtag of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").hashtags.list()) {
|
|
3277
3281
|
console.log(hashtag);
|
|
3278
3282
|
}
|
|
3279
|
-
const page = await social.community("
|
|
3283
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").hashtags.list({}, { timeout: 5_000 });
|
|
3280
3284
|
```
|
|
3281
3285
|
|
|
3282
3286
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-hashtags)
|
|
@@ -3295,7 +3299,7 @@ Get a single hashtag with its current published post count.
|
|
|
3295
3299
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3296
3300
|
|
|
3297
3301
|
```ts
|
|
3298
|
-
const hashtagDetail = await social.community("
|
|
3302
|
+
const hashtagDetail = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").hashtags.retrieve("launch");
|
|
3299
3303
|
```
|
|
3300
3304
|
|
|
3301
3305
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-hashtags-tag)
|
|
@@ -3319,10 +3323,10 @@ List posts using a hashtag. `order=chronological` (default) or `order=ranked` (t
|
|
|
3319
3323
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3320
3324
|
|
|
3321
3325
|
```ts
|
|
3322
|
-
for await (const post of social.community("
|
|
3326
|
+
for await (const post of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").hashtags.posts.list("launch")) {
|
|
3323
3327
|
console.log(post);
|
|
3324
3328
|
}
|
|
3325
|
-
const page = await social.community("
|
|
3329
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").hashtags.posts.list("launch", {}, { timeout: 5_000 });
|
|
3326
3330
|
```
|
|
3327
3331
|
|
|
3328
3332
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-hashtags-tag-posts)
|
|
@@ -3346,7 +3350,7 @@ Hide a post from the actor's feeds ("not interested"). Idempotent. A hard filter
|
|
|
3346
3350
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3347
3351
|
|
|
3348
3352
|
```ts
|
|
3349
|
-
const hideResult = await social.community("
|
|
3353
|
+
const hideResult = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").hides.create({ post_id: "bbbbbbbb-0000-0000-0000-000000000001" });
|
|
3350
3354
|
```
|
|
3351
3355
|
|
|
3352
3356
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-hides)
|
|
@@ -3362,7 +3366,7 @@ Un-hide a post. Idempotent — 204 either way.
|
|
|
3362
3366
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3363
3367
|
|
|
3364
3368
|
```ts
|
|
3365
|
-
await social.community("
|
|
3369
|
+
await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").hides.delete("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
3366
3370
|
```
|
|
3367
3371
|
|
|
3368
3372
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#delete-v1-communities-community-id-hides-src-actor-id-post-id)
|
|
@@ -3388,7 +3392,7 @@ Create a new list. Default visibility `private`. List creation has no natural ke
|
|
|
3388
3392
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3389
3393
|
|
|
3390
3394
|
```ts
|
|
3391
|
-
const actorList = await social.community("
|
|
3395
|
+
const actorList = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").lists.create({ name: "Tech news" });
|
|
3392
3396
|
```
|
|
3393
3397
|
|
|
3394
3398
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-lists)
|
|
@@ -3410,7 +3414,7 @@ Delete a list. Owner-only. Pass the caller via `?actor_id=`.
|
|
|
3410
3414
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3411
3415
|
|
|
3412
3416
|
```ts
|
|
3413
|
-
await social.community("
|
|
3417
|
+
await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").lists.delete("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {});
|
|
3414
3418
|
```
|
|
3415
3419
|
|
|
3416
3420
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#delete-v1-communities-community-id-lists-list-id)
|
|
@@ -3431,10 +3435,10 @@ List discoverable lists in this community. Public lists are visible to anyone; p
|
|
|
3431
3435
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3432
3436
|
|
|
3433
3437
|
```ts
|
|
3434
|
-
for await (const list of social.community("
|
|
3438
|
+
for await (const list of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").lists.list()) {
|
|
3435
3439
|
console.log(list);
|
|
3436
3440
|
}
|
|
3437
|
-
const page = await social.community("
|
|
3441
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").lists.list({}, { timeout: 5_000 });
|
|
3438
3442
|
```
|
|
3439
3443
|
|
|
3440
3444
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-lists)
|
|
@@ -3455,7 +3459,7 @@ Get one list by id.
|
|
|
3455
3459
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3456
3460
|
|
|
3457
3461
|
```ts
|
|
3458
|
-
const actorList = await social.community("
|
|
3462
|
+
const actorList = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").lists.retrieve("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
3459
3463
|
```
|
|
3460
3464
|
|
|
3461
3465
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-lists-list-id)
|
|
@@ -3477,7 +3481,7 @@ Update list name / description / visibility. Owner-only.
|
|
|
3477
3481
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3478
3482
|
|
|
3479
3483
|
```ts
|
|
3480
|
-
const actorList = await social.community("
|
|
3484
|
+
const actorList = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").lists.update("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
3481
3485
|
```
|
|
3482
3486
|
|
|
3483
3487
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#patch-v1-communities-community-id-lists-list-id)
|
|
@@ -3502,7 +3506,7 @@ List-scoped feed (task 018). Returns posts authored by members of the list, filt
|
|
|
3502
3506
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3503
3507
|
|
|
3504
3508
|
```ts
|
|
3505
|
-
for await (const feed of social.community("
|
|
3509
|
+
for await (const feed of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").lists.feed.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {})) {
|
|
3506
3510
|
console.log(feed);
|
|
3507
3511
|
}
|
|
3508
3512
|
```
|
|
@@ -3529,7 +3533,7 @@ Add a member to a list. Owner-only.
|
|
|
3529
3533
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3530
3534
|
|
|
3531
3535
|
```ts
|
|
3532
|
-
const actorListMember = await social.community("
|
|
3536
|
+
const actorListMember = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").lists.members.create("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {});
|
|
3533
3537
|
```
|
|
3534
3538
|
|
|
3535
3539
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-lists-list-id-members)
|
|
@@ -3551,7 +3555,7 @@ Remove a member from a list. Owner-only. Idempotent — 204 either way. Pass the
|
|
|
3551
3555
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3552
3556
|
|
|
3553
3557
|
```ts
|
|
3554
|
-
await social.community("
|
|
3558
|
+
await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").lists.members.delete("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {});
|
|
3555
3559
|
```
|
|
3556
3560
|
|
|
3557
3561
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#delete-v1-communities-community-id-lists-list-id-members-member-actor-id)
|
|
@@ -3573,10 +3577,10 @@ List members of a list. Public lists are visible to anyone; private lists surfac
|
|
|
3573
3577
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3574
3578
|
|
|
3575
3579
|
```ts
|
|
3576
|
-
for await (const member of social.community("
|
|
3580
|
+
for await (const member of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").lists.members.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
3577
3581
|
console.log(member);
|
|
3578
3582
|
}
|
|
3579
|
-
const page = await social.community("
|
|
3583
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").lists.members.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
3580
3584
|
```
|
|
3581
3585
|
|
|
3582
3586
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-lists-list-id-members)
|
|
@@ -3603,7 +3607,7 @@ Mute another actor. One-directional and silent — the muted actor isn't notifie
|
|
|
3603
3607
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3604
3608
|
|
|
3605
3609
|
```ts
|
|
3606
|
-
const createEdge = await social.community("
|
|
3610
|
+
const createEdge = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").mutes.create({ dst_actor_id: "aaaaaaaa-0000-0000-0000-000000000002" });
|
|
3607
3611
|
```
|
|
3608
3612
|
|
|
3609
3613
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-mutes)
|
|
@@ -3621,7 +3625,7 @@ Unmute. Idempotent — 204 either way.
|
|
|
3621
3625
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3622
3626
|
|
|
3623
3627
|
```ts
|
|
3624
|
-
await social.community("
|
|
3628
|
+
await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").mutes.delete("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
3625
3629
|
```
|
|
3626
3630
|
|
|
3627
3631
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#delete-v1-communities-community-id-mutes-src-actor-id-dst-actor-id)
|
|
@@ -3647,7 +3651,7 @@ Visibility-aware: the actor must be allowed to read the post. If they can't, ret
|
|
|
3647
3651
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3648
3652
|
|
|
3649
3653
|
```ts
|
|
3650
|
-
const bookmarkToggle = await social.community("
|
|
3654
|
+
const bookmarkToggle = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.bookmark("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {});
|
|
3651
3655
|
```
|
|
3652
3656
|
|
|
3653
3657
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-posts-post-id-bookmark)
|
|
@@ -3672,7 +3676,7 @@ Create a post on behalf of an actor. Pass an `Idempotency-Key` header to make re
|
|
|
3672
3676
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3673
3677
|
|
|
3674
3678
|
```ts
|
|
3675
|
-
const post = await social.community("
|
|
3679
|
+
const post = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.create({});
|
|
3676
3680
|
```
|
|
3677
3681
|
|
|
3678
3682
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-posts)
|
|
@@ -3690,7 +3694,7 @@ Soft-delete a post. The row is marked `removed`; viewers see 404. Comments and r
|
|
|
3690
3694
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3691
3695
|
|
|
3692
3696
|
```ts
|
|
3693
|
-
await social.community("
|
|
3697
|
+
await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.delete("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
3694
3698
|
```
|
|
3695
3699
|
|
|
3696
3700
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#delete-v1-communities-community-id-posts-post-id)
|
|
@@ -3711,7 +3715,7 @@ Aggregate insights for a post: total views, unique reach, engagement counts, and
|
|
|
3711
3715
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3712
3716
|
|
|
3713
3717
|
```ts
|
|
3714
|
-
const postInsights = await social.community("
|
|
3718
|
+
const postInsights = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.insights("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
3715
3719
|
```
|
|
3716
3720
|
|
|
3717
3721
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-posts-post-id-insights)
|
|
@@ -3732,10 +3736,10 @@ List posts. Pass `author_id` to filter to a single author. 50/page (max 200), cu
|
|
|
3732
3736
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3733
3737
|
|
|
3734
3738
|
```ts
|
|
3735
|
-
for await (const post of social.community("
|
|
3739
|
+
for await (const post of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.list()) {
|
|
3736
3740
|
console.log(post);
|
|
3737
3741
|
}
|
|
3738
|
-
const page = await social.community("
|
|
3742
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.list({}, { timeout: 5_000 });
|
|
3739
3743
|
```
|
|
3740
3744
|
|
|
3741
3745
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-posts)
|
|
@@ -3756,7 +3760,7 @@ Returns counts per option, zero-filling options that received no votes, plus `to
|
|
|
3756
3760
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3757
3761
|
|
|
3758
3762
|
```ts
|
|
3759
|
-
const result = await social.community("
|
|
3763
|
+
const result = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.pollResults("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
3760
3764
|
```
|
|
3761
3765
|
|
|
3762
3766
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-posts-post-id-poll-results)
|
|
@@ -3777,7 +3781,7 @@ Batch-increment impression (`view_count`) counters on a list of posts. Client-si
|
|
|
3777
3781
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3778
3782
|
|
|
3779
3783
|
```ts
|
|
3780
|
-
await social.community("
|
|
3784
|
+
await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.recordImpressions({
|
|
3781
3785
|
post_ids: ["bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb", "cccccccc-cccc-cccc-cccc-cccccccccccc"],
|
|
3782
3786
|
});
|
|
3783
3787
|
```
|
|
@@ -3804,7 +3808,7 @@ Idempotent on `(community, viewer, post)`. 204 on success or no-op duplicate. 42
|
|
|
3804
3808
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3805
3809
|
|
|
3806
3810
|
```ts
|
|
3807
|
-
await social.community("
|
|
3811
|
+
await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.recordView("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {});
|
|
3808
3812
|
```
|
|
3809
3813
|
|
|
3810
3814
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-posts-post-id-views)
|
|
@@ -3829,7 +3833,7 @@ Visibility is inherited from the source. The reposter must be allowed to read th
|
|
|
3829
3833
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3830
3834
|
|
|
3831
3835
|
```ts
|
|
3832
|
-
const createRepost = await social.community("
|
|
3836
|
+
const createRepost = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.repost("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {});
|
|
3833
3837
|
```
|
|
3834
3838
|
|
|
3835
3839
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-posts-post-id-repost)
|
|
@@ -3852,7 +3856,7 @@ Without `actor_id`, only `public` posts return. With one, `followers` / `close_f
|
|
|
3852
3856
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3853
3857
|
|
|
3854
3858
|
```ts
|
|
3855
|
-
const post = await social.community("
|
|
3859
|
+
const post = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.retrieve("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
3856
3860
|
```
|
|
3857
3861
|
|
|
3858
3862
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-posts-post-id)
|
|
@@ -3874,7 +3878,7 @@ Remove a bookmark on behalf of an actor. Idempotent — 204 either way. Pass the
|
|
|
3874
3878
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3875
3879
|
|
|
3876
3880
|
```ts
|
|
3877
|
-
await social.community("
|
|
3881
|
+
await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.unbookmark("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {});
|
|
3878
3882
|
```
|
|
3879
3883
|
|
|
3880
3884
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#delete-v1-communities-community-id-posts-post-id-bookmark)
|
|
@@ -3896,7 +3900,7 @@ Undo my repost of a source post. Idempotent — 204 either way. Pass the actor v
|
|
|
3896
3900
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3897
3901
|
|
|
3898
3902
|
```ts
|
|
3899
|
-
await social.community("
|
|
3903
|
+
await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.unrepost("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {});
|
|
3900
3904
|
```
|
|
3901
3905
|
|
|
3902
3906
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#delete-v1-communities-community-id-posts-post-id-repost)
|
|
@@ -3918,7 +3922,7 @@ Update post fields. `pinned` is the highlights toggle for stories; status transi
|
|
|
3918
3922
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3919
3923
|
|
|
3920
3924
|
```ts
|
|
3921
|
-
const post = await social.community("
|
|
3925
|
+
const post = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.update("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", { attributes: {} });
|
|
3922
3926
|
```
|
|
3923
3927
|
|
|
3924
3928
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#patch-v1-communities-community-id-posts-post-id)
|
|
@@ -3943,7 +3947,7 @@ Approve a pending_approval comment (restricted-actor pre-moderation). Reserved t
|
|
|
3943
3947
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3944
3948
|
|
|
3945
3949
|
```ts
|
|
3946
|
-
const comment = await social.community("
|
|
3950
|
+
const comment = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.comments.approve("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
3947
3951
|
```
|
|
3948
3952
|
|
|
3949
3953
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-posts-post-id-comments-comment-id-approve)
|
|
@@ -3967,7 +3971,7 @@ Add a comment on a post. Pass `parent_id` to reply; the depth is computed and ca
|
|
|
3967
3971
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3968
3972
|
|
|
3969
3973
|
```ts
|
|
3970
|
-
const comment = await social.community("
|
|
3974
|
+
const comment = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.comments.create("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", { body: "Looks great, shipping today." });
|
|
3971
3975
|
```
|
|
3972
3976
|
|
|
3973
3977
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-posts-post-id-comments)
|
|
@@ -3985,7 +3989,7 @@ Soft-delete a comment.
|
|
|
3985
3989
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
3986
3990
|
|
|
3987
3991
|
```ts
|
|
3988
|
-
await social.community("
|
|
3992
|
+
await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.comments.delete("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
3989
3993
|
```
|
|
3990
3994
|
|
|
3991
3995
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#delete-v1-communities-community-id-posts-post-id-comments-comment-id)
|
|
@@ -4007,10 +4011,10 @@ List comments on a post. Default returns top-level comments newest-first; pass `
|
|
|
4007
4011
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4008
4012
|
|
|
4009
4013
|
```ts
|
|
4010
|
-
for await (const comment of social.community("
|
|
4014
|
+
for await (const comment of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.comments.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
4011
4015
|
console.log(comment);
|
|
4012
4016
|
}
|
|
4013
|
-
const page = await social.community("
|
|
4017
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.comments.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
4014
4018
|
```
|
|
4015
4019
|
|
|
4016
4020
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-posts-post-id-comments)
|
|
@@ -4034,7 +4038,7 @@ Pins a published top-level comment so it leads the top-level listing. Reserved t
|
|
|
4034
4038
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4035
4039
|
|
|
4036
4040
|
```ts
|
|
4037
|
-
const comment = await social.community("
|
|
4041
|
+
const comment = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.comments.pin("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {});
|
|
4038
4042
|
```
|
|
4039
4043
|
|
|
4040
4044
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-posts-post-id-comments-comment-id-pin)
|
|
@@ -4055,7 +4059,7 @@ Get a single comment by id.
|
|
|
4055
4059
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4056
4060
|
|
|
4057
4061
|
```ts
|
|
4058
|
-
const comment = await social.community("
|
|
4062
|
+
const comment = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.comments.retrieve("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
4059
4063
|
```
|
|
4060
4064
|
|
|
4061
4065
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-posts-post-id-comments-comment-id)
|
|
@@ -4078,7 +4082,7 @@ Clears the pin; the comment returns to its chronological position. Reserved to t
|
|
|
4078
4082
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4079
4083
|
|
|
4080
4084
|
```ts
|
|
4081
|
-
const comment = await social.community("
|
|
4085
|
+
const comment = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.comments.unpin("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {});
|
|
4082
4086
|
```
|
|
4083
4087
|
|
|
4084
4088
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#delete-v1-communities-community-id-posts-post-id-comments-comment-id-pin)
|
|
@@ -4099,7 +4103,7 @@ Update a comment's body, status, or visibility.
|
|
|
4099
4103
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4100
4104
|
|
|
4101
4105
|
```ts
|
|
4102
|
-
const comment = await social.community("
|
|
4106
|
+
const comment = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.comments.update("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", { body: "string" });
|
|
4103
4107
|
```
|
|
4104
4108
|
|
|
4105
4109
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#patch-v1-communities-community-id-posts-post-id-comments-comment-id)
|
|
@@ -4125,7 +4129,7 @@ React to a comment. Idempotent: re-posting the same `(actor, type)` returns the
|
|
|
4125
4129
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4126
4130
|
|
|
4127
4131
|
```ts
|
|
4128
|
-
const addCommentReaction = await social.community("
|
|
4132
|
+
const addCommentReaction = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.comments.reactions.create("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", { type: "like" });
|
|
4129
4133
|
```
|
|
4130
4134
|
|
|
4131
4135
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-posts-post-id-comments-comment-id-reactions)
|
|
@@ -4144,7 +4148,7 @@ Unreact. Idempotent: returns 200 with current `reaction_counts` even if there wa
|
|
|
4144
4148
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4145
4149
|
|
|
4146
4150
|
```ts
|
|
4147
|
-
const commentReactionCounts = await social.community("
|
|
4151
|
+
const commentReactionCounts = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.comments.reactions.delete("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "like");
|
|
4148
4152
|
```
|
|
4149
4153
|
|
|
4150
4154
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#delete-v1-communities-community-id-posts-post-id-comments-comment-id-reactions-src-actor-id-type)
|
|
@@ -4165,10 +4169,10 @@ List reactions on a comment, newest-first. Cursor encodes `(created_at, actor_id
|
|
|
4165
4169
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4166
4170
|
|
|
4167
4171
|
```ts
|
|
4168
|
-
for await (const reaction of social.community("
|
|
4172
|
+
for await (const reaction of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.comments.reactions.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
4169
4173
|
console.log(reaction);
|
|
4170
4174
|
}
|
|
4171
|
-
const page = await social.community("
|
|
4175
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.comments.reactions.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
4172
4176
|
```
|
|
4173
4177
|
|
|
4174
4178
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-posts-post-id-comments-comment-id-reactions)
|
|
@@ -4193,10 +4197,10 @@ Cursor-paginated by `(created_at DESC, id DESC)`. Each entry is the full quote p
|
|
|
4193
4197
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4194
4198
|
|
|
4195
4199
|
```ts
|
|
4196
|
-
for await (const quote of social.community("
|
|
4200
|
+
for await (const quote of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.quotes.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
4197
4201
|
console.log(quote);
|
|
4198
4202
|
}
|
|
4199
|
-
const page = await social.community("
|
|
4203
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.quotes.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
4200
4204
|
```
|
|
4201
4205
|
|
|
4202
4206
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-posts-post-id-quotes)
|
|
@@ -4222,7 +4226,7 @@ React to a post. Idempotent: re-posting the same (actor, type) returns the exist
|
|
|
4222
4226
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4223
4227
|
|
|
4224
4228
|
```ts
|
|
4225
|
-
const reaction = await social.community("
|
|
4229
|
+
const reaction = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.reactions.create("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", { type: "like" });
|
|
4226
4230
|
```
|
|
4227
4231
|
|
|
4228
4232
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-posts-post-id-reactions)
|
|
@@ -4241,7 +4245,7 @@ Unreact. Idempotent: returns 200 with current `reaction_counts` even if there wa
|
|
|
4241
4245
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4242
4246
|
|
|
4243
4247
|
```ts
|
|
4244
|
-
const reactionCounts = await social.community("
|
|
4248
|
+
const reactionCounts = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.reactions.delete("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "like");
|
|
4245
4249
|
```
|
|
4246
4250
|
|
|
4247
4251
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#delete-v1-communities-community-id-posts-post-id-reactions-src-actor-id-type)
|
|
@@ -4263,10 +4267,10 @@ List reactions on a post, newest-first. Cursor encodes `(created_at, actor_id, t
|
|
|
4263
4267
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4264
4268
|
|
|
4265
4269
|
```ts
|
|
4266
|
-
for await (const reaction of social.community("
|
|
4270
|
+
for await (const reaction of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.reactions.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
4267
4271
|
console.log(reaction);
|
|
4268
4272
|
}
|
|
4269
|
-
const page = await social.community("
|
|
4273
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.reactions.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
4270
4274
|
```
|
|
4271
4275
|
|
|
4272
4276
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-posts-post-id-reactions)
|
|
@@ -4289,10 +4293,10 @@ List the actors who have reposted a source post. Cursor-paginated newest-first.
|
|
|
4289
4293
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4290
4294
|
|
|
4291
4295
|
```ts
|
|
4292
|
-
for await (const repost of social.community("
|
|
4296
|
+
for await (const repost of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.reposts.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
4293
4297
|
console.log(repost);
|
|
4294
4298
|
}
|
|
4295
|
-
const page = await social.community("
|
|
4299
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.reposts.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
4296
4300
|
```
|
|
4297
4301
|
|
|
4298
4302
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-posts-post-id-reposts)
|
|
@@ -4317,10 +4321,10 @@ Each entry is a snapshot of body/title/attributes from BEFORE the edit landed. T
|
|
|
4317
4321
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4318
4322
|
|
|
4319
4323
|
```ts
|
|
4320
|
-
for await (const revision of social.community("
|
|
4324
|
+
for await (const revision of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.revisions.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f")) {
|
|
4321
4325
|
console.log(revision);
|
|
4322
4326
|
}
|
|
4323
|
-
const page = await social.community("
|
|
4327
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.revisions.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {}, { timeout: 5_000 });
|
|
4324
4328
|
```
|
|
4325
4329
|
|
|
4326
4330
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-posts-post-id-revisions)
|
|
@@ -4346,7 +4350,7 @@ The tagged actor accepts being tagged; the tag flips `pending → approved` and
|
|
|
4346
4350
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4347
4351
|
|
|
4348
4352
|
```ts
|
|
4349
|
-
const postTag = await social.community("
|
|
4353
|
+
const postTag = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.tags.approve("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {});
|
|
4350
4354
|
```
|
|
4351
4355
|
|
|
4352
4356
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-posts-post-id-tags-tagged-actor-id-approve)
|
|
@@ -4369,7 +4373,7 @@ Flips the tag to `removed`. Removable by either the tagged actor or the post aut
|
|
|
4369
4373
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4370
4374
|
|
|
4371
4375
|
```ts
|
|
4372
|
-
const postTag = await social.community("
|
|
4376
|
+
const postTag = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.tags.delete("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {});
|
|
4373
4377
|
```
|
|
4374
4378
|
|
|
4375
4379
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-posts-post-id-tags-tagged-actor-id-remove)
|
|
@@ -4396,7 +4400,7 @@ Only the post author can list viewers. The PAK passes `actor_id`; if that resolv
|
|
|
4396
4400
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4397
4401
|
|
|
4398
4402
|
```ts
|
|
4399
|
-
for await (const viewer of social.community("
|
|
4403
|
+
for await (const viewer of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.viewers.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {})) {
|
|
4400
4404
|
console.log(viewer);
|
|
4401
4405
|
}
|
|
4402
4406
|
```
|
|
@@ -4425,7 +4429,7 @@ Only the poll author can list voters. Pass the author via `actor_id`; a requeste
|
|
|
4425
4429
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4426
4430
|
|
|
4427
4431
|
```ts
|
|
4428
|
-
for await (const voter of social.community("
|
|
4432
|
+
for await (const voter of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.voters.list("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", {})) {
|
|
4429
4433
|
console.log(voter);
|
|
4430
4434
|
}
|
|
4431
4435
|
```
|
|
@@ -4456,7 +4460,7 @@ Last-vote-wins: an actor changing their vote replaces the prior one. 422 if the
|
|
|
4456
4460
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4457
4461
|
|
|
4458
4462
|
```ts
|
|
4459
|
-
await social.community("
|
|
4463
|
+
await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.votes.create("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", { option_index: 1 });
|
|
4460
4464
|
```
|
|
4461
4465
|
|
|
4462
4466
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-posts-post-id-votes)
|
|
@@ -4476,7 +4480,7 @@ Deletes the vote edge. Idempotent — 204 whether or not a vote existed. No tall
|
|
|
4476
4480
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4477
4481
|
|
|
4478
4482
|
```ts
|
|
4479
|
-
await social.community("
|
|
4483
|
+
await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.votes.delete("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
4480
4484
|
```
|
|
4481
4485
|
|
|
4482
4486
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#delete-v1-communities-community-id-posts-post-id-votes-actor-id)
|
|
@@ -4496,7 +4500,7 @@ Returns the actor's chosen `option_index` and when it was cast. 404 when the pos
|
|
|
4496
4500
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4497
4501
|
|
|
4498
4502
|
```ts
|
|
4499
|
-
const result = await social.community("
|
|
4503
|
+
const result = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").posts.votes.retrieve("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
4500
4504
|
```
|
|
4501
4505
|
|
|
4502
4506
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-posts-post-id-votes-actor-id)
|
|
@@ -4523,7 +4527,7 @@ Restrict another actor (Instagram-style). One-directional. Restricted actors can
|
|
|
4523
4527
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4524
4528
|
|
|
4525
4529
|
```ts
|
|
4526
|
-
const createEdge = await social.community("
|
|
4530
|
+
const createEdge = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").restricts.create({ dst_actor_id: "aaaaaaaa-0000-0000-0000-000000000002" });
|
|
4527
4531
|
```
|
|
4528
4532
|
|
|
4529
4533
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-restricts)
|
|
@@ -4541,7 +4545,7 @@ Unrestrict. Idempotent — 204 either way.
|
|
|
4541
4545
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4542
4546
|
|
|
4543
4547
|
```ts
|
|
4544
|
-
await social.community("
|
|
4548
|
+
await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").restricts.delete("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", "3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
4545
4549
|
```
|
|
4546
4550
|
|
|
4547
4551
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#delete-v1-communities-community-id-restricts-src-actor-id-dst-actor-id)
|
|
@@ -4568,7 +4572,7 @@ Postgres FTS over a generated tsvector column (display_name A + external_id B +
|
|
|
4568
4572
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4569
4573
|
|
|
4570
4574
|
```ts
|
|
4571
|
-
for await (const actor of social.community("
|
|
4575
|
+
for await (const actor of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").search.actors.list({ q: "onboarding" })) {
|
|
4572
4576
|
console.log(actor);
|
|
4573
4577
|
}
|
|
4574
4578
|
```
|
|
@@ -4596,7 +4600,7 @@ Backed by a `text_pattern_ops` partial index — sub-100ms for any prefix length
|
|
|
4596
4600
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4597
4601
|
|
|
4598
4602
|
```ts
|
|
4599
|
-
for await (const hashtag of social.community("
|
|
4603
|
+
for await (const hashtag of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").search.hashtags.list({ q: "onboarding" })) {
|
|
4600
4604
|
console.log(hashtag);
|
|
4601
4605
|
}
|
|
4602
4606
|
```
|
|
@@ -4625,7 +4629,7 @@ Postgres FTS over a generated tsvector column on the post table (title A + body
|
|
|
4625
4629
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4626
4630
|
|
|
4627
4631
|
```ts
|
|
4628
|
-
for await (const post of social.community("
|
|
4632
|
+
for await (const post of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").search.posts.list({ q: "onboarding" })) {
|
|
4629
4633
|
console.log(post);
|
|
4630
4634
|
}
|
|
4631
4635
|
```
|
|
@@ -4656,7 +4660,7 @@ Deliveries are signed with the Standard Webhooks headers `webhook-id`, `webhook-
|
|
|
4656
4660
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4657
4661
|
|
|
4658
4662
|
```ts
|
|
4659
|
-
const webhookEndpointWithSecret = await social.community("
|
|
4663
|
+
const webhookEndpointWithSecret = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").webhooks.endpoints.create({ url: "https://api.acme.com/webhooks" });
|
|
4660
4664
|
```
|
|
4661
4665
|
|
|
4662
4666
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-webhooks-endpoints)
|
|
@@ -4678,7 +4682,7 @@ Queued retries are dropped. Its past attempts stay in the event log until the ev
|
|
|
4678
4682
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4679
4683
|
|
|
4680
4684
|
```ts
|
|
4681
|
-
await social.community("
|
|
4685
|
+
await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").webhooks.endpoints.delete("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
4682
4686
|
```
|
|
4683
4687
|
|
|
4684
4688
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#delete-v1-communities-community-id-webhooks-endpoints-endpoint-id)
|
|
@@ -4702,7 +4706,7 @@ At most 10, so this is always one page. Signing secrets are never returned here,
|
|
|
4702
4706
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4703
4707
|
|
|
4704
4708
|
```ts
|
|
4705
|
-
for await (const endpoint of social.community("
|
|
4709
|
+
for await (const endpoint of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").webhooks.endpoints.list()) {
|
|
4706
4710
|
console.log(endpoint);
|
|
4707
4711
|
}
|
|
4708
4712
|
```
|
|
@@ -4726,7 +4730,7 @@ The endpoint's URL, subscription, on/off state, failure streak and the last 4 ch
|
|
|
4726
4730
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4727
4731
|
|
|
4728
4732
|
```ts
|
|
4729
|
-
const webhookEndpoint = await social.community("
|
|
4733
|
+
const webhookEndpoint = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").webhooks.endpoints.retrieve("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
4730
4734
|
```
|
|
4731
4735
|
|
|
4732
4736
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-webhooks-endpoints-endpoint-id)
|
|
@@ -4752,7 +4756,7 @@ For `grace_hours` (default 24) the previous secret keeps signing too: `webhook-s
|
|
|
4752
4756
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4753
4757
|
|
|
4754
4758
|
```ts
|
|
4755
|
-
const webhookEndpointWithSecret = await social.community("
|
|
4759
|
+
const webhookEndpointWithSecret = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").webhooks.endpoints.rotateSecret("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", { grace_hours: 24 });
|
|
4756
4760
|
```
|
|
4757
4761
|
|
|
4758
4762
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-webhooks-endpoints-endpoint-id-rotate-secret)
|
|
@@ -4778,7 +4782,7 @@ Delivers the catalogue example of `event_type`, signed like any delivery, with `
|
|
|
4778
4782
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4779
4783
|
|
|
4780
4784
|
```ts
|
|
4781
|
-
const webhookDeliveryAttempt = await social.community("
|
|
4785
|
+
const webhookDeliveryAttempt = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").webhooks.endpoints.test("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", { event_type: "post.created" });
|
|
4782
4786
|
```
|
|
4783
4787
|
|
|
4784
4788
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-webhooks-endpoints-endpoint-id-test)
|
|
@@ -4805,7 +4809,7 @@ Only the fields sent change. `enabled: true` (or a new URL) also clears an autom
|
|
|
4805
4809
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4806
4810
|
|
|
4807
4811
|
```ts
|
|
4808
|
-
const webhookEndpoint = await social.community("
|
|
4812
|
+
const webhookEndpoint = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").webhooks.endpoints.update("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f", { description: "Production receiver" });
|
|
4809
4813
|
```
|
|
4810
4814
|
|
|
4811
4815
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#patch-v1-communities-community-id-webhooks-endpoints-endpoint-id)
|
|
@@ -4828,7 +4832,7 @@ Each type with a plain description, its group and an example `data` object (what
|
|
|
4828
4832
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4829
4833
|
|
|
4830
4834
|
```ts
|
|
4831
|
-
const listWebhookEventTypes = await social.community("
|
|
4835
|
+
const listWebhookEventTypes = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").webhooks.eventTypes.list();
|
|
4832
4836
|
```
|
|
4833
4837
|
|
|
4834
4838
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-webhooks-event-types)
|
|
@@ -4855,10 +4859,10 @@ Every event logged while at least one endpoint existed, with the latest state pe
|
|
|
4855
4859
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4856
4860
|
|
|
4857
4861
|
```ts
|
|
4858
|
-
for await (const event of social.community("
|
|
4862
|
+
for await (const event of social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").webhooks.events.list()) {
|
|
4859
4863
|
console.log(event);
|
|
4860
4864
|
}
|
|
4861
|
-
const page = await social.community("
|
|
4865
|
+
const page = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").webhooks.events.list({}, { timeout: 5_000 });
|
|
4862
4866
|
```
|
|
4863
4867
|
|
|
4864
4868
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-webhooks-events)
|
|
@@ -4884,7 +4888,7 @@ Same body and `webhook-id`, freshly signed, to every switched-on endpoint that r
|
|
|
4884
4888
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4885
4889
|
|
|
4886
4890
|
```ts
|
|
4887
|
-
const replayWebhookEvent = await social.community("
|
|
4891
|
+
const replayWebhookEvent = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").webhooks.events.replay("evt_3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
4888
4892
|
```
|
|
4889
4893
|
|
|
4890
4894
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#post-v1-communities-community-id-webhooks-events-event-id-replay)
|
|
@@ -4906,7 +4910,7 @@ The event as it was sent (`type`, `data`) and every delivery attempt to every en
|
|
|
4906
4910
|
| 429 | `RateLimitError` | `RATE_LIMITED` | More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. |
|
|
4907
4911
|
|
|
4908
4912
|
```ts
|
|
4909
|
-
const webhookEventDetail = await social.community("
|
|
4913
|
+
const webhookEventDetail = await social.community("3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f").as("7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d").webhooks.events.retrieve("evt_3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f");
|
|
4910
4914
|
```
|
|
4911
4915
|
|
|
4912
4916
|
[HTTP reference](https://productcraft.co/docs/social/api-reference#get-v1-communities-community-id-webhooks-events-event-id)
|