@myapihq/cli 2.11.0 → 2.11.2
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.
|
@@ -53,6 +53,17 @@ async function activateSending(flags) {
|
|
|
53
53
|
if (!address)
|
|
54
54
|
error('Missing required arguments.\nUsage: myapi email mailbox activate-sending --address <email>');
|
|
55
55
|
const res = await sdkEmail.activateSending(config.api_key, address);
|
|
56
|
+
// A repaired account was broken a moment ago: it held a mailbox that reported
|
|
57
|
+
// sending_enabled while the ACCOUNT had no credential behind it, so every send
|
|
58
|
+
// failed with nothing in the mailbox or domain to explain why. Reporting that
|
|
59
|
+
// as an ordinary activation hides the one fact the caller needs — that the
|
|
60
|
+
// thing which was failing is now fixed, and that they should retry.
|
|
61
|
+
if (res.repaired) {
|
|
62
|
+
success(`Sending repaired: ${address} — the account had no sending credential; it does now.`);
|
|
63
|
+
info('No charge was made — the mailbox was paid for at its first activation.');
|
|
64
|
+
info('Sending should work immediately. Retry the send that was failing.');
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
56
67
|
success(`Sending activated: ${address} (${res.emails_quota_remaining} emails/day quota)`);
|
|
57
68
|
}
|
|
58
69
|
async function setForwarding(address, forwardTo, _flags) {
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: my-feedback-api
|
|
3
|
-
version: 1.
|
|
3
|
+
version: 1.1.0
|
|
4
4
|
description: >
|
|
5
5
|
Collect feedback from the people using what you built. A public widget key lets a page submit without a credential; you list, filter and resolve the results. Kind is chosen by the person reporting, not inferred from their wording.
|
|
6
6
|
triggers: [feedback, bug report, user feedback, feature request, widget, support, complaints, praise]
|
|
7
|
-
checksum: sha256-
|
|
7
|
+
checksum: sha256-544fcdb87744431fe7c3adbda341bf858c6d4177695b811a3d29aa4a311c927b
|
|
8
8
|
---
|
|
9
9
|
|
|
10
10
|
# MyFeedbackAPI
|
|
@@ -33,12 +33,30 @@ myapi feedback widget create site --origins app.example.com,example.com
|
|
|
33
33
|
Revoke with `myapi feedback widget revoke <id>`. Submissions stop immediately;
|
|
34
34
|
feedback already collected is kept.
|
|
35
35
|
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
36
|
+
### How a page submits with it
|
|
37
|
+
|
|
38
|
+
`POST https://api.myapihq.com/feedback/in/<widget_key>` — no auth, no SDK, no
|
|
39
|
+
CLI. This is the browser-side half, and it is the whole point of the widget key.
|
|
40
|
+
|
|
41
|
+
```js
|
|
42
|
+
await fetch(`https://api.myapihq.com/feedback/in/${WIDGET_KEY}`, {
|
|
43
|
+
method: 'POST',
|
|
44
|
+
headers: { 'Content-Type': 'application/json' },
|
|
45
|
+
body: JSON.stringify({
|
|
46
|
+
kind: 'bug', // required — bug | issue | suggestion
|
|
47
|
+
body: text, // required — ≤8000 chars, refused not truncated
|
|
48
|
+
page_url: location.href, // optional context, all of it
|
|
49
|
+
route: router.currentRoute,
|
|
50
|
+
target_selector: '#checkout button',
|
|
51
|
+
target_region: { x, y, w, h }, // viewport pixels, e.g. a dragged box
|
|
52
|
+
viewport: { w: innerWidth, h: innerHeight },
|
|
53
|
+
}),
|
|
54
|
+
});
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
Errors are `WIDGET_NOT_FOUND` (revoked reads the same as invented, so keys
|
|
58
|
+
cannot be probed), `ORIGIN_NOT_ALLOWED`, `RATE_LIMITED`, `INVALID_KIND`,
|
|
59
|
+
`BODY_REQUIRED`, `BODY_TOO_LONG`. The key can only write — it reads nothing.
|
|
42
60
|
|
|
43
61
|
### Kind is a claim, not a guess
|
|
44
62
|
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@myapihq/cli",
|
|
3
3
|
"license": "Apache-2.0",
|
|
4
|
-
"version": "2.11.
|
|
4
|
+
"version": "2.11.2",
|
|
5
5
|
"description": "MyAPI command-line interface",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
"lint:skills:strict": "node scripts/copy-skills.js && node scripts/lint-skills.js --strict"
|
|
47
47
|
},
|
|
48
48
|
"dependencies": {
|
|
49
|
-
"@myapihq/sdk": "^2.11.
|
|
49
|
+
"@myapihq/sdk": "^2.11.2"
|
|
50
50
|
},
|
|
51
51
|
"devDependencies": {
|
|
52
52
|
"@types/node": "^25.6.0",
|