@pokemontcgapi/sdk 0.1.4 → 0.1.5
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 +21 -3
- package/dist/errors.d.ts +22 -0
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +29 -0
- package/dist/errors.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -20,16 +20,26 @@ their respective owners.
|
|
|
20
20
|
|
|
21
21
|
## Get a key
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
Generate the Idempotency-Key once per signup and keep it with the request body:
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
IDEM=$(uuidgen)
|
|
27
|
+
```
|
|
24
28
|
|
|
25
29
|
```bash
|
|
26
30
|
curl -s -X POST "https://api.pokemontcgapi.com/v1/accounts/free" \
|
|
27
31
|
-H "Content-Type: application/json" \
|
|
28
|
-
-H "Idempotency-Key: $
|
|
32
|
+
-H "Idempotency-Key: $IDEM" \
|
|
29
33
|
-d '{"email":"you@example.com"}'
|
|
30
34
|
```
|
|
31
35
|
|
|
32
|
-
|
|
36
|
+
Lost the response? Repeat the exact same request (same Idempotency-Key, same body byte for byte, same network: same public IPv4 or the same IPv6 /64) within 24 hours and the response comes back, if stored, secret included; it is the original response, so a key rotated or revoked since then is not revived. A new Idempotency-Key for the same email returns 409 ACCOUNT_EXISTS; the same key with a different body returns 409 IDEMPOTENCY_CONFLICT.
|
|
37
|
+
|
|
38
|
+
We store only a hash of the key; the signup response is kept for 24 hours so the same request can be replayed. Save `data.key.secret` now.
|
|
39
|
+
|
|
40
|
+
If replay is unavailable, [sign in](https://pokemontcgapi.com/account) and rotate the key, or use /v1/accounts/recover with an already verified email to get a new secret.
|
|
41
|
+
|
|
42
|
+
The key comes back in `data.key.secret`. Confirming the address we email raises the trial from
|
|
33
43
|
80 to 800 credits, and the trial ends 30 days after signup. Paid plans start at 29 EUR a month:
|
|
34
44
|
[pricing](https://pokemontcgapi.com/pricing).
|
|
35
45
|
|
|
@@ -176,6 +186,14 @@ Every error carries `code`, `status`, `details` and `requestId` — quote the re
|
|
|
176
186
|
message, it is the only thing that can be looked up. Retries use exponential backoff with full
|
|
177
187
|
jitter on 429, 5xx and network failures, honour `Retry-After`, and never retry a quota exhaustion.
|
|
178
188
|
|
|
189
|
+
Commercial refusals include `details.next_step`, exposed as the typed `err.nextStep`. If `err.nextStep` exists, show `err.nextStep.handoff` and its URL to the account owner verbatim and do not retry. `err.actionUrl` returns the URL for any action: `checkout_url` for subscribe, `manage_url` for upgrade, `verify_url` for email verification, or `contact_url` for sales and support. Show it alongside `err.handoff`. Upgrades point to the account page, where the owner opens the billing portal to change plan. `err.checkoutUrl` remains a shortcut for subscribe only.
|
|
190
|
+
|
|
191
|
+
```ts
|
|
192
|
+
if (err instanceof PokemonTcgApiError && err.nextStep) {
|
|
193
|
+
showToUser(err.nextStep.handoff);
|
|
194
|
+
}
|
|
195
|
+
```
|
|
196
|
+
|
|
179
197
|
## What this API does not have
|
|
180
198
|
|
|
181
199
|
Stated up front so you find out here rather than three days into an integration:
|
package/dist/errors.d.ts
CHANGED
|
@@ -12,6 +12,24 @@
|
|
|
12
12
|
* modo di consumare tempo. Il retry automatico di questo client riprova il
|
|
13
13
|
* primo e non riprova mai il secondo.
|
|
14
14
|
*/
|
|
15
|
+
export interface NextStep {
|
|
16
|
+
readonly action: 'subscribe' | 'upgrade' | 'contact_sales' | 'contact_support' | 'verify_email';
|
|
17
|
+
readonly actor: 'account_owner';
|
|
18
|
+
readonly plan?: {
|
|
19
|
+
readonly code: string;
|
|
20
|
+
readonly name: string;
|
|
21
|
+
readonly monthly_eur?: string;
|
|
22
|
+
readonly yearly_eur?: string;
|
|
23
|
+
readonly credits_per_month?: number;
|
|
24
|
+
};
|
|
25
|
+
readonly checkout_url?: string;
|
|
26
|
+
readonly checkout_url_yearly?: string;
|
|
27
|
+
readonly manage_url?: string;
|
|
28
|
+
readonly contact_url?: string;
|
|
29
|
+
readonly verify_url?: string;
|
|
30
|
+
readonly plans_url: string;
|
|
31
|
+
readonly handoff: string;
|
|
32
|
+
}
|
|
15
33
|
export interface ApiErrorBody {
|
|
16
34
|
readonly code: string;
|
|
17
35
|
readonly message: string;
|
|
@@ -28,6 +46,10 @@ export declare class PokemonTcgApiError extends Error {
|
|
|
28
46
|
*/
|
|
29
47
|
readonly requestId: string | undefined;
|
|
30
48
|
readonly details: Record<string, unknown> | undefined;
|
|
49
|
+
get nextStep(): NextStep | undefined;
|
|
50
|
+
get checkoutUrl(): string | undefined;
|
|
51
|
+
get actionUrl(): string | undefined;
|
|
52
|
+
get handoff(): string | undefined;
|
|
31
53
|
constructor(status: number, body: ApiErrorBody);
|
|
32
54
|
}
|
|
33
55
|
/** 401 — chiave assente, malformata o revocata. */
|
package/dist/errors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC3C,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,qBAAa,kBAAmB,SAAQ,KAAK;IAC3C,6DAA6D;IAC7D,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB;;;OAGG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IACvC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
|
package/dist/errors.js
CHANGED
|
@@ -22,6 +22,35 @@ export class PokemonTcgApiError extends Error {
|
|
|
22
22
|
*/
|
|
23
23
|
requestId;
|
|
24
24
|
details;
|
|
25
|
+
get nextStep() {
|
|
26
|
+
const value = this.details?.['next_step'];
|
|
27
|
+
if (typeof value !== 'object' || value === null)
|
|
28
|
+
return undefined;
|
|
29
|
+
const step = value;
|
|
30
|
+
if (step['actor'] !== 'account_owner' || typeof step['handoff'] !== 'string' ||
|
|
31
|
+
typeof step['plans_url'] !== 'string' ||
|
|
32
|
+
!['subscribe', 'upgrade', 'contact_sales', 'contact_support', 'verify_email'].includes(String(step['action']))) {
|
|
33
|
+
return undefined;
|
|
34
|
+
}
|
|
35
|
+
return value;
|
|
36
|
+
}
|
|
37
|
+
get checkoutUrl() {
|
|
38
|
+
const value = this.nextStep?.checkout_url;
|
|
39
|
+
return typeof value === 'string' ? value : undefined;
|
|
40
|
+
}
|
|
41
|
+
get actionUrl() {
|
|
42
|
+
const step = this.nextStep;
|
|
43
|
+
if (!step)
|
|
44
|
+
return undefined;
|
|
45
|
+
const value = step.action === 'subscribe' ? step.checkout_url
|
|
46
|
+
: step.action === 'upgrade' ? step.manage_url
|
|
47
|
+
: step.action === 'verify_email' ? step.verify_url
|
|
48
|
+
: step.contact_url;
|
|
49
|
+
return typeof value === 'string' ? value : undefined;
|
|
50
|
+
}
|
|
51
|
+
get handoff() {
|
|
52
|
+
return this.nextStep?.handoff;
|
|
53
|
+
}
|
|
25
54
|
constructor(status, body) {
|
|
26
55
|
super(`${body.code}: ${body.message}`);
|
|
27
56
|
this.name = new.target.name;
|
package/dist/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED