@scrapeatlas/cli 0.10.0 → 0.11.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.
Files changed (2) hide show
  1. package/catalog.json +1984 -270
  2. package/package.json +1 -1
package/catalog.json CHANGED
@@ -2958,7 +2958,7 @@
2958
2958
  "coverage": {
2959
2959
  "type": "object",
2960
2960
  "properties": {
2961
- "source": { "type": "string", "const": "public_page" },
2961
+ "source": { "type": "string", "enum": ["public_api", "public_page"] },
2962
2962
  "complete": { "type": "boolean" },
2963
2963
  "warnings": { "type": "array", "items": { "type": "string" } }
2964
2964
  },
@@ -3076,7 +3076,7 @@
3076
3076
  "coverage": {
3077
3077
  "type": "object",
3078
3078
  "properties": {
3079
- "source": { "type": "string", "const": "public_page" },
3079
+ "source": { "type": "string", "enum": ["public_api", "public_page"] },
3080
3080
  "complete": { "type": "boolean" },
3081
3081
  "warnings": { "type": "array", "items": { "type": "string" } }
3082
3082
  },
@@ -3167,7 +3167,7 @@
3167
3167
  "operation": "couchsurfingEvents",
3168
3168
  "method": "GET",
3169
3169
  "path": "/v1/couchsurfing/events",
3170
- "description": "List the upcoming public events embedded in a Couchsurfing location page, together with the location's published summary, statistics and FAQ, and the source total. Each successful request costs 1 account credit, including partial results. Failures cost 0. HTTP 402 means insufficient credits. Responses preserve status, coverage, null values and pagination tokens.",
3170
+ "description": "List the upcoming public events of a Couchsurfing location with the location's published summary, statistics and FAQ, filtered by date window and paged with a cursor. Each successful request costs 1 account credit, including partial results. Failures cost 0. HTTP 402 means insufficient credits. Responses preserve status, coverage, null values and pagination tokens.",
3171
3171
  "inputSchema": {
3172
3172
  "type": "object",
3173
3173
  "properties": {
@@ -3176,6 +3176,36 @@
3176
3176
  "maxLength": 160,
3177
3177
  "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
3178
3178
  "description": "Required location slug as it appears in couchsurfing.com/c/locations/<slug>, for example berlin-state-of-berlin-germany or tokyo-japan; lowercase letters, digits and single hyphens."
3179
+ },
3180
+ "dateFilter": {
3181
+ "type": "string",
3182
+ "enum": [
3183
+ "any",
3184
+ "happening_now",
3185
+ "today",
3186
+ "tomorrow",
3187
+ "this_weekend",
3188
+ "this_week",
3189
+ "next_7_days",
3190
+ "this_month",
3191
+ "next_30_days"
3192
+ ],
3193
+ "description": "Optional date window: any, happening_now, today, tomorrow, this_weekend, this_week, next_7_days, this_month or next_30_days. Omit for all upcoming events."
3194
+ },
3195
+ "cursor": {
3196
+ "type": "string",
3197
+ "maxLength": 5,
3198
+ "pattern": "^(?:0|[1-9][0-9]{0,4})$",
3199
+ "x-runtime-refinement": true,
3200
+ "description": "Optional pagination cursor: pass nextCursor from the previous response. Omit for the first page."
3201
+ },
3202
+ "limit": {
3203
+ "type": "string",
3204
+ "maxLength": 2,
3205
+ "pattern": "^[1-9][0-9]?$",
3206
+ "x-runtime-refinement": true,
3207
+ "default": "20",
3208
+ "description": "Optional page size from 1 to 50; default 20."
3179
3209
  }
3180
3210
  },
3181
3211
  "required": ["location"],
@@ -3204,7 +3234,7 @@
3204
3234
  "coverage": {
3205
3235
  "type": "object",
3206
3236
  "properties": {
3207
- "source": { "type": "string", "const": "public_page" },
3237
+ "source": { "type": "string", "enum": ["public_api", "public_page"] },
3208
3238
  "complete": { "type": "boolean" },
3209
3239
  "warnings": { "type": "array", "items": { "type": "string" } }
3210
3240
  },
@@ -3226,7 +3256,8 @@
3226
3256
  "maxItems": 100
3227
3257
  },
3228
3258
  "totalCount": { "anyOf": [{ "type": "integer", "minimum": 0 }, { "type": "null" }] },
3229
- "hasNextPage": { "anyOf": [{ "type": "boolean" }, { "type": "null" }] }
3259
+ "hasNextPage": { "anyOf": [{ "type": "boolean" }, { "type": "null" }] },
3260
+ "nextCursor": { "anyOf": [{ "type": "string" }, { "type": "null" }] }
3230
3261
  },
3231
3262
  "required": [
3232
3263
  "requestId",
@@ -3239,7 +3270,8 @@
3239
3270
  "location",
3240
3271
  "events",
3241
3272
  "totalCount",
3242
- "hasNextPage"
3273
+ "hasNextPage",
3274
+ "nextCursor"
3243
3275
  ],
3244
3276
  "additionalProperties": false
3245
3277
  },
@@ -3294,16 +3326,38 @@
3294
3326
  }
3295
3327
  },
3296
3328
  {
3297
- "platform": "depop",
3298
- "action": "filters",
3299
- "operation": "depopFilters",
3329
+ "platform": "couchsurfing",
3330
+ "action": "travelers",
3331
+ "operation": "couchsurfingTravelers",
3300
3332
  "method": "GET",
3301
- "path": "/v1/depop/filters",
3302
- "description": "Return the category tree and attribute vocabularies the search filters accept: departments with their category groups, the product types of every group, and the condition and colour ids with their names, descriptions and swatches. Each successful request costs 1 account credit, including partial results. Failures cost 0. HTTP 402 means insufficient credits. Responses preserve status, coverage, null values and pagination tokens.",
3333
+ "path": "/v1/couchsurfing/travelers",
3334
+ "description": "List the members with a public upcoming trip to a Couchsurfing location: member cards plus each trip's title, dates and traveler count, paged with a cursor. Each successful request costs 1 account credit, including partial results. Failures cost 0. HTTP 402 means insufficient credits. Responses preserve status, coverage, null values and pagination tokens.",
3303
3335
  "inputSchema": {
3304
3336
  "type": "object",
3305
- "properties": {},
3306
- "required": [],
3337
+ "properties": {
3338
+ "location": {
3339
+ "type": "string",
3340
+ "maxLength": 160,
3341
+ "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
3342
+ "description": "Required location slug, as returned by the locations endpoint."
3343
+ },
3344
+ "cursor": {
3345
+ "type": "string",
3346
+ "maxLength": 5,
3347
+ "pattern": "^(?:0|[1-9][0-9]{0,4})$",
3348
+ "x-runtime-refinement": true,
3349
+ "description": "Optional pagination cursor: pass nextCursor from the previous response. Omit for the first page."
3350
+ },
3351
+ "limit": {
3352
+ "type": "string",
3353
+ "maxLength": 2,
3354
+ "pattern": "^[1-9][0-9]?$",
3355
+ "x-runtime-refinement": true,
3356
+ "default": "10",
3357
+ "description": "Optional page size from 1 to 20; default 10."
3358
+ }
3359
+ },
3360
+ "required": ["location"],
3307
3361
  "additionalProperties": false
3308
3362
  },
3309
3363
  "outputSchema": {
@@ -3329,97 +3383,30 @@
3329
3383
  "coverage": {
3330
3384
  "type": "object",
3331
3385
  "properties": {
3332
- "source": { "type": "string", "const": "public_api" },
3386
+ "source": { "type": "string", "enum": ["public_api", "public_page"] },
3333
3387
  "complete": { "type": "boolean" },
3334
- "warnings": {
3335
- "type": "array",
3336
- "items": {
3337
- "type": "string",
3338
- "enum": [
3339
- "malformed_items_omitted",
3340
- "items_truncated",
3341
- "review_offset_limit",
3342
- "inventory_unavailable",
3343
- "catalog_details_unavailable",
3344
- "extended_details_unavailable",
3345
- "total_count_unknown"
3346
- ]
3347
- }
3348
- }
3388
+ "warnings": { "type": "array", "items": { "type": "string" } }
3349
3389
  },
3350
3390
  "required": ["source", "complete", "warnings"],
3351
3391
  "additionalProperties": false
3352
3392
  },
3353
- "filters": {
3393
+ "location": {
3354
3394
  "type": "object",
3355
- "properties": {
3356
- "departments": {
3357
- "type": "array",
3358
- "items": {
3359
- "type": "object",
3360
- "properties": {
3361
- "id": { "type": "string" },
3362
- "name": { "type": "string" },
3363
- "children": {
3364
- "type": "array",
3365
- "items": {
3366
- "type": "object",
3367
- "properties": {
3368
- "id": { "type": "string" },
3369
- "name": { "type": "string" }
3370
- },
3371
- "required": ["id", "name"],
3372
- "additionalProperties": false
3373
- }
3374
- }
3375
- },
3376
- "required": ["id", "name", "children"],
3377
- "additionalProperties": false
3378
- }
3379
- },
3380
- "groups": {
3381
- "type": "object",
3382
- "propertyNames": { "type": "string" },
3383
- "additionalProperties": {
3384
- "type": "array",
3385
- "items": {
3386
- "type": "object",
3387
- "properties": { "id": { "type": "string" }, "name": { "type": "string" } },
3388
- "required": ["id", "name"],
3389
- "additionalProperties": false
3390
- }
3391
- }
3392
- },
3393
- "conditions": {
3394
- "type": "array",
3395
- "items": {
3396
- "type": "object",
3397
- "properties": {
3398
- "id": { "type": "string" },
3399
- "name": { "type": "string" },
3400
- "description": { "anyOf": [{ "type": "string" }, { "type": "null" }] }
3401
- },
3402
- "required": ["id", "name", "description"],
3403
- "additionalProperties": false
3404
- }
3405
- },
3406
- "colours": {
3407
- "type": "array",
3408
- "items": {
3409
- "type": "object",
3410
- "properties": {
3411
- "id": { "type": "string" },
3412
- "name": { "type": "string" },
3413
- "hex": { "anyOf": [{ "type": "string" }, { "type": "null" }] }
3414
- },
3415
- "required": ["id", "name", "hex"],
3416
- "additionalProperties": false
3417
- }
3418
- }
3395
+ "propertyNames": { "type": "string" },
3396
+ "additionalProperties": {}
3397
+ },
3398
+ "travelers": {
3399
+ "type": "array",
3400
+ "items": {
3401
+ "type": "object",
3402
+ "propertyNames": { "type": "string" },
3403
+ "additionalProperties": {}
3419
3404
  },
3420
- "required": ["departments", "groups", "conditions", "colours"],
3421
- "additionalProperties": false
3422
- }
3405
+ "maxItems": 20
3406
+ },
3407
+ "totalCount": { "anyOf": [{ "type": "integer", "minimum": 0 }, { "type": "null" }] },
3408
+ "hasNextPage": { "anyOf": [{ "type": "boolean" }, { "type": "null" }] },
3409
+ "nextCursor": { "anyOf": [{ "type": "string" }, { "type": "null" }] }
3423
3410
  },
3424
3411
  "required": [
3425
3412
  "requestId",
@@ -3429,7 +3416,11 @@
3429
3416
  "sourceUrl",
3430
3417
  "fetchedAt",
3431
3418
  "coverage",
3432
- "filters"
3419
+ "location",
3420
+ "travelers",
3421
+ "totalCount",
3422
+ "hasNextPage",
3423
+ "nextCursor"
3433
3424
  ],
3434
3425
  "additionalProperties": false
3435
3426
  },
@@ -3455,18 +3446,20 @@
3455
3446
  "code": {
3456
3447
  "type": "string",
3457
3448
  "enum": [
3449
+ "restricted",
3458
3450
  "invalid_request",
3459
3451
  "unauthorized",
3460
3452
  "not_found",
3461
- "restricted",
3462
3453
  "upstream_challenged",
3463
3454
  "upstream_rate_limited",
3464
3455
  "upstream_error",
3465
3456
  "unsupported_page",
3466
3457
  "response_too_large",
3458
+ "unsafe_redirect",
3467
3459
  "request_limit",
3468
3460
  "timeout",
3469
- "busy"
3461
+ "busy",
3462
+ "payload_too_complex"
3470
3463
  ]
3471
3464
  },
3472
3465
  "message": { "type": "string" }
@@ -3482,30 +3475,48 @@
3482
3475
  }
3483
3476
  },
3484
3477
  {
3485
- "platform": "depop",
3486
- "action": "search-suggestions",
3487
- "operation": "depopSearchSuggestions",
3478
+ "platform": "couchsurfing",
3479
+ "action": "hosts",
3480
+ "operation": "couchsurfingHosts",
3488
3481
  "method": "GET",
3489
- "path": "/v1/depop/search/suggestions",
3490
- "description": "Retrieve search suggestions for a partial query, including completed terms and category or gender information. Each successful request costs 1 account credit, including partial results. Failures cost 0. HTTP 402 means insufficient credits. Responses preserve status, coverage, null values and pagination tokens.",
3482
+ "path": "/v1/couchsurfing/hosts",
3483
+ "description": "Search the public hosts of a Couchsurfing location with optional sleeping-arrangement, pets, family, wheelchair, smoking and recent-activity filters: member cards with languages, interests, home location and reference counts, paged with a cursor. Each successful request costs 1 account credit, including partial results. Failures cost 0. HTTP 402 means insufficient credits. Responses preserve status, coverage, null values and pagination tokens.",
3491
3484
  "inputSchema": {
3492
3485
  "type": "object",
3493
3486
  "properties": {
3494
- "query": {
3487
+ "location": {
3495
3488
  "type": "string",
3496
- "minLength": 1,
3497
- "maxLength": 200,
3498
- "pattern": "^[^\\u0000-\\u001f\\u007f-\\u009f]+$",
3499
- "description": "Partial search text, 1-200 characters."
3489
+ "maxLength": 160,
3490
+ "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
3491
+ "description": "Published location record: id, slug, level, description with country codes, timezone, coordinates and images."
3500
3492
  },
3501
- "country": {
3493
+ "cursor": {
3502
3494
  "type": "string",
3503
- "enum": ["us", "gb", "au", "ca", "nz", "ie", "de", "fr", "it"],
3504
- "default": "us",
3505
- "description": "Market the suggestions are ranked for (default us)."
3506
- }
3495
+ "maxLength": 5,
3496
+ "pattern": "^(?:0|[1-9][0-9]{0,4})$",
3497
+ "x-runtime-refinement": true,
3498
+ "description": "Optional pagination cursor: pass nextCursor from the previous response. Omit for the first page."
3499
+ },
3500
+ "limit": {
3501
+ "type": "string",
3502
+ "maxLength": 2,
3503
+ "pattern": "^[1-9][0-9]?$",
3504
+ "x-runtime-refinement": true,
3505
+ "default": "10",
3506
+ "description": "Optional page size from 1 to 20; default 10."
3507
+ },
3508
+ "sleepingArrangement": {
3509
+ "type": "string",
3510
+ "enum": ["common_area", "private_room", "shared_room", "floor_or_tent", "other"],
3511
+ "description": "Optional: private_room, shared_room, common_area, floor_or_tent or other."
3512
+ },
3513
+ "petsAllowed": { "type": "string", "enum": ["true", "false"] },
3514
+ "familyFriendly": { "type": "string", "enum": ["true", "false"] },
3515
+ "wheelchairAccessible": { "type": "string", "enum": ["true", "false"] },
3516
+ "smokingAllowed": { "type": "string", "enum": ["true", "false"] },
3517
+ "recentlyActive": { "type": "string", "enum": ["true", "false"] }
3507
3518
  },
3508
- "required": ["query"],
3519
+ "required": ["location"],
3509
3520
  "additionalProperties": false
3510
3521
  },
3511
3522
  "outputSchema": {
@@ -3531,48 +3542,30 @@
3531
3542
  "coverage": {
3532
3543
  "type": "object",
3533
3544
  "properties": {
3534
- "source": { "type": "string", "const": "public_api" },
3545
+ "source": { "type": "string", "enum": ["public_api", "public_page"] },
3535
3546
  "complete": { "type": "boolean" },
3536
- "warnings": {
3537
- "type": "array",
3538
- "items": {
3539
- "type": "string",
3540
- "enum": [
3541
- "malformed_items_omitted",
3542
- "items_truncated",
3543
- "review_offset_limit",
3544
- "inventory_unavailable",
3545
- "catalog_details_unavailable",
3546
- "extended_details_unavailable",
3547
- "total_count_unknown"
3548
- ]
3549
- }
3550
- }
3547
+ "warnings": { "type": "array", "items": { "type": "string" } }
3551
3548
  },
3552
3549
  "required": ["source", "complete", "warnings"],
3553
3550
  "additionalProperties": false
3554
3551
  },
3555
- "query": { "type": "string" },
3556
- "country": {
3557
- "type": "string",
3558
- "enum": ["us", "gb", "au", "ca", "nz", "ie", "de", "fr", "it"]
3552
+ "location": {
3553
+ "type": "object",
3554
+ "propertyNames": { "type": "string" },
3555
+ "additionalProperties": {}
3559
3556
  },
3560
- "items": {
3557
+ "hosts": {
3561
3558
  "type": "array",
3562
3559
  "items": {
3563
3560
  "type": "object",
3564
- "properties": {
3565
- "value": { "type": "string" },
3566
- "highlighted": { "type": "string" },
3567
- "group": { "anyOf": [{ "type": "string" }, { "type": "null" }] },
3568
- "gender": { "anyOf": [{ "type": "string" }, { "type": "null" }] },
3569
- "label": { "anyOf": [{ "type": "string" }, { "type": "null" }] }
3570
- },
3571
- "required": ["value", "highlighted", "group", "gender", "label"],
3572
- "additionalProperties": false
3561
+ "propertyNames": { "type": "string" },
3562
+ "additionalProperties": {}
3573
3563
  },
3574
- "maxItems": 10
3575
- }
3564
+ "maxItems": 20
3565
+ },
3566
+ "totalCount": { "anyOf": [{ "type": "integer", "minimum": 0 }, { "type": "null" }] },
3567
+ "hasNextPage": { "anyOf": [{ "type": "boolean" }, { "type": "null" }] },
3568
+ "nextCursor": { "anyOf": [{ "type": "string" }, { "type": "null" }] }
3576
3569
  },
3577
3570
  "required": [
3578
3571
  "requestId",
@@ -3582,9 +3575,11 @@
3582
3575
  "sourceUrl",
3583
3576
  "fetchedAt",
3584
3577
  "coverage",
3585
- "query",
3586
- "country",
3587
- "items"
3578
+ "location",
3579
+ "hosts",
3580
+ "totalCount",
3581
+ "hasNextPage",
3582
+ "nextCursor"
3588
3583
  ],
3589
3584
  "additionalProperties": false
3590
3585
  },
@@ -3610,18 +3605,20 @@
3610
3605
  "code": {
3611
3606
  "type": "string",
3612
3607
  "enum": [
3608
+ "restricted",
3613
3609
  "invalid_request",
3614
3610
  "unauthorized",
3615
3611
  "not_found",
3616
- "restricted",
3617
3612
  "upstream_challenged",
3618
3613
  "upstream_rate_limited",
3619
3614
  "upstream_error",
3620
3615
  "unsupported_page",
3621
3616
  "response_too_large",
3617
+ "unsafe_redirect",
3622
3618
  "request_limit",
3623
3619
  "timeout",
3624
- "busy"
3620
+ "busy",
3621
+ "payload_too_complex"
3625
3622
  ]
3626
3623
  },
3627
3624
  "message": { "type": "string" }
@@ -3637,36 +3634,522 @@
3637
3634
  }
3638
3635
  },
3639
3636
  {
3640
- "platform": "depop",
3641
- "action": "product",
3642
- "operation": "depopProduct",
3637
+ "platform": "couchsurfing",
3638
+ "action": "locations",
3639
+ "operation": "couchsurfingLocations",
3643
3640
  "method": "GET",
3644
- "path": "/v1/depop/product",
3645
- "description": "Retrieve a listing by ID, slug or URL with seller details, prices and fee components, shipping promotions and confidence, image formats, size availability, material and style attributes, seller reviews and activity. Each successful request costs 1 account credit, including partial results. Failures cost 0. HTTP 402 means insufficient credits. Responses preserve status, coverage, null values and pagination tokens.",
3641
+ "path": "/v1/couchsurfing/locations",
3642
+ "description": "Search Couchsurfing cities, regions and countries by name and get the location slugs used by the events, hosts and travelers endpoints, ranked by relevance. Each successful request costs 1 account credit, including partial results. Failures cost 0. HTTP 402 means insufficient credits. Responses preserve status, coverage, null values and pagination tokens.",
3646
3643
  "inputSchema": {
3647
3644
  "type": "object",
3648
3645
  "properties": {
3649
- "id": {
3646
+ "query": {
3650
3647
  "type": "string",
3651
- "pattern": "^[1-9][0-9]{0,15}$",
3652
- "description": "Numeric product ID; provide exactly one of id, slug or url."
3648
+ "minLength": 2,
3649
+ "maxLength": 100,
3650
+ "description": "Required place name, 2 to 100 characters."
3653
3651
  },
3654
- "slug": {
3652
+ "cursor": {
3655
3653
  "type": "string",
3656
- "pattern": "^[a-z0-9_]+(?:-[a-z0-9_]+)*$",
3657
- "maxLength": 200,
3658
- "description": "URL slug from depop.com/products/{slug}/ (lowercase letters, digits and hyphens)."
3654
+ "maxLength": 5,
3655
+ "pattern": "^(?:0|[1-9][0-9]{0,4})$",
3656
+ "x-runtime-refinement": true,
3657
+ "description": "Optional pagination cursor: pass nextCursor from the previous response. Omit for the first page."
3659
3658
  },
3660
- "url": {
3659
+ "limit": {
3661
3660
  "type": "string",
3662
- "maxLength": 2048,
3661
+ "maxLength": 2,
3662
+ "pattern": "^[1-9][0-9]?$",
3663
3663
  "x-runtime-refinement": true,
3664
- "description": "Full product URL: https://www.depop.com/products/{slug}/."
3664
+ "default": "10",
3665
+ "description": "Optional page size from 1 to 50; default 10."
3665
3666
  }
3666
3667
  },
3667
- "required": [],
3668
- "additionalProperties": false,
3669
- "x-runtime-refinement": true
3668
+ "required": ["query"],
3669
+ "additionalProperties": false
3670
+ },
3671
+ "outputSchema": {
3672
+ "anyOf": [
3673
+ {
3674
+ "type": "object",
3675
+ "properties": {
3676
+ "requestId": { "type": "string", "format": "uuid" },
3677
+ "accounting": {
3678
+ "type": "object",
3679
+ "properties": {
3680
+ "upstreamRequests": { "type": "integer", "minimum": 0 },
3681
+ "responseBytes": { "type": "integer", "minimum": 0 },
3682
+ "durationMs": { "type": "number", "minimum": 0 }
3683
+ },
3684
+ "required": ["upstreamRequests", "responseBytes", "durationMs"],
3685
+ "additionalProperties": false
3686
+ },
3687
+ "success": { "type": "boolean", "const": true },
3688
+ "status": { "type": "string", "enum": ["success", "partial"] },
3689
+ "sourceUrl": { "type": "string", "format": "uri" },
3690
+ "fetchedAt": { "type": "string", "format": "date-time" },
3691
+ "coverage": {
3692
+ "type": "object",
3693
+ "properties": {
3694
+ "source": { "type": "string", "enum": ["public_api", "public_page"] },
3695
+ "complete": { "type": "boolean" },
3696
+ "warnings": { "type": "array", "items": { "type": "string" } }
3697
+ },
3698
+ "required": ["source", "complete", "warnings"],
3699
+ "additionalProperties": false
3700
+ },
3701
+ "locations": {
3702
+ "type": "array",
3703
+ "items": {
3704
+ "type": "object",
3705
+ "propertyNames": { "type": "string" },
3706
+ "additionalProperties": {}
3707
+ },
3708
+ "maxItems": 50
3709
+ },
3710
+ "totalCount": { "anyOf": [{ "type": "integer", "minimum": 0 }, { "type": "null" }] },
3711
+ "hasNextPage": { "anyOf": [{ "type": "boolean" }, { "type": "null" }] },
3712
+ "nextCursor": { "anyOf": [{ "type": "string" }, { "type": "null" }] }
3713
+ },
3714
+ "required": [
3715
+ "requestId",
3716
+ "accounting",
3717
+ "success",
3718
+ "status",
3719
+ "sourceUrl",
3720
+ "fetchedAt",
3721
+ "coverage",
3722
+ "locations",
3723
+ "totalCount",
3724
+ "hasNextPage",
3725
+ "nextCursor"
3726
+ ],
3727
+ "additionalProperties": false
3728
+ },
3729
+ {
3730
+ "type": "object",
3731
+ "properties": {
3732
+ "requestId": { "type": "string", "format": "uuid" },
3733
+ "accounting": {
3734
+ "type": "object",
3735
+ "properties": {
3736
+ "upstreamRequests": { "type": "integer", "minimum": 0 },
3737
+ "responseBytes": { "type": "integer", "minimum": 0 },
3738
+ "durationMs": { "type": "number", "minimum": 0 }
3739
+ },
3740
+ "required": ["upstreamRequests", "responseBytes", "durationMs"],
3741
+ "additionalProperties": false
3742
+ },
3743
+ "success": { "type": "boolean", "const": false },
3744
+ "status": { "type": "string", "enum": ["failed", "challenged"] },
3745
+ "failure": {
3746
+ "type": "object",
3747
+ "properties": {
3748
+ "code": {
3749
+ "type": "string",
3750
+ "enum": [
3751
+ "restricted",
3752
+ "invalid_request",
3753
+ "unauthorized",
3754
+ "not_found",
3755
+ "upstream_challenged",
3756
+ "upstream_rate_limited",
3757
+ "upstream_error",
3758
+ "unsupported_page",
3759
+ "response_too_large",
3760
+ "unsafe_redirect",
3761
+ "request_limit",
3762
+ "timeout",
3763
+ "busy",
3764
+ "payload_too_complex"
3765
+ ]
3766
+ },
3767
+ "message": { "type": "string" }
3768
+ },
3769
+ "required": ["code", "message"],
3770
+ "additionalProperties": false
3771
+ }
3772
+ },
3773
+ "required": ["requestId", "accounting", "success", "status", "failure"],
3774
+ "additionalProperties": false
3775
+ }
3776
+ ]
3777
+ }
3778
+ },
3779
+ {
3780
+ "platform": "depop",
3781
+ "action": "filters",
3782
+ "operation": "depopFilters",
3783
+ "method": "GET",
3784
+ "path": "/v1/depop/filters",
3785
+ "description": "Return the category tree and attribute vocabularies the search filters accept: departments with their category groups, the product types of every group, and the condition and colour ids with their names, descriptions and swatches. Each successful request costs 1 account credit, including partial results. Failures cost 0. HTTP 402 means insufficient credits. Responses preserve status, coverage, null values and pagination tokens.",
3786
+ "inputSchema": {
3787
+ "type": "object",
3788
+ "properties": {},
3789
+ "required": [],
3790
+ "additionalProperties": false
3791
+ },
3792
+ "outputSchema": {
3793
+ "anyOf": [
3794
+ {
3795
+ "type": "object",
3796
+ "properties": {
3797
+ "requestId": { "type": "string", "format": "uuid" },
3798
+ "accounting": {
3799
+ "type": "object",
3800
+ "properties": {
3801
+ "upstreamRequests": { "type": "integer", "minimum": 0 },
3802
+ "responseBytes": { "type": "integer", "minimum": 0 },
3803
+ "durationMs": { "type": "number", "minimum": 0 }
3804
+ },
3805
+ "required": ["upstreamRequests", "responseBytes", "durationMs"],
3806
+ "additionalProperties": false
3807
+ },
3808
+ "success": { "type": "boolean", "const": true },
3809
+ "status": { "type": "string", "enum": ["success", "partial"] },
3810
+ "sourceUrl": { "type": "string", "format": "uri" },
3811
+ "fetchedAt": { "type": "string", "format": "date-time" },
3812
+ "coverage": {
3813
+ "type": "object",
3814
+ "properties": {
3815
+ "source": { "type": "string", "const": "public_api" },
3816
+ "complete": { "type": "boolean" },
3817
+ "warnings": {
3818
+ "type": "array",
3819
+ "items": {
3820
+ "type": "string",
3821
+ "enum": [
3822
+ "malformed_items_omitted",
3823
+ "items_truncated",
3824
+ "review_offset_limit",
3825
+ "inventory_unavailable",
3826
+ "catalog_details_unavailable",
3827
+ "extended_details_unavailable",
3828
+ "total_count_unknown"
3829
+ ]
3830
+ }
3831
+ }
3832
+ },
3833
+ "required": ["source", "complete", "warnings"],
3834
+ "additionalProperties": false
3835
+ },
3836
+ "filters": {
3837
+ "type": "object",
3838
+ "properties": {
3839
+ "departments": {
3840
+ "type": "array",
3841
+ "items": {
3842
+ "type": "object",
3843
+ "properties": {
3844
+ "id": { "type": "string" },
3845
+ "name": { "type": "string" },
3846
+ "children": {
3847
+ "type": "array",
3848
+ "items": {
3849
+ "type": "object",
3850
+ "properties": {
3851
+ "id": { "type": "string" },
3852
+ "name": { "type": "string" }
3853
+ },
3854
+ "required": ["id", "name"],
3855
+ "additionalProperties": false
3856
+ }
3857
+ }
3858
+ },
3859
+ "required": ["id", "name", "children"],
3860
+ "additionalProperties": false
3861
+ }
3862
+ },
3863
+ "groups": {
3864
+ "type": "object",
3865
+ "propertyNames": { "type": "string" },
3866
+ "additionalProperties": {
3867
+ "type": "array",
3868
+ "items": {
3869
+ "type": "object",
3870
+ "properties": { "id": { "type": "string" }, "name": { "type": "string" } },
3871
+ "required": ["id", "name"],
3872
+ "additionalProperties": false
3873
+ }
3874
+ }
3875
+ },
3876
+ "conditions": {
3877
+ "type": "array",
3878
+ "items": {
3879
+ "type": "object",
3880
+ "properties": {
3881
+ "id": { "type": "string" },
3882
+ "name": { "type": "string" },
3883
+ "description": { "anyOf": [{ "type": "string" }, { "type": "null" }] }
3884
+ },
3885
+ "required": ["id", "name", "description"],
3886
+ "additionalProperties": false
3887
+ }
3888
+ },
3889
+ "colours": {
3890
+ "type": "array",
3891
+ "items": {
3892
+ "type": "object",
3893
+ "properties": {
3894
+ "id": { "type": "string" },
3895
+ "name": { "type": "string" },
3896
+ "hex": { "anyOf": [{ "type": "string" }, { "type": "null" }] }
3897
+ },
3898
+ "required": ["id", "name", "hex"],
3899
+ "additionalProperties": false
3900
+ }
3901
+ }
3902
+ },
3903
+ "required": ["departments", "groups", "conditions", "colours"],
3904
+ "additionalProperties": false
3905
+ }
3906
+ },
3907
+ "required": [
3908
+ "requestId",
3909
+ "accounting",
3910
+ "success",
3911
+ "status",
3912
+ "sourceUrl",
3913
+ "fetchedAt",
3914
+ "coverage",
3915
+ "filters"
3916
+ ],
3917
+ "additionalProperties": false
3918
+ },
3919
+ {
3920
+ "type": "object",
3921
+ "properties": {
3922
+ "requestId": { "type": "string", "format": "uuid" },
3923
+ "accounting": {
3924
+ "type": "object",
3925
+ "properties": {
3926
+ "upstreamRequests": { "type": "integer", "minimum": 0 },
3927
+ "responseBytes": { "type": "integer", "minimum": 0 },
3928
+ "durationMs": { "type": "number", "minimum": 0 }
3929
+ },
3930
+ "required": ["upstreamRequests", "responseBytes", "durationMs"],
3931
+ "additionalProperties": false
3932
+ },
3933
+ "success": { "type": "boolean", "const": false },
3934
+ "status": { "type": "string", "enum": ["failed", "challenged"] },
3935
+ "failure": {
3936
+ "type": "object",
3937
+ "properties": {
3938
+ "code": {
3939
+ "type": "string",
3940
+ "enum": [
3941
+ "invalid_request",
3942
+ "unauthorized",
3943
+ "not_found",
3944
+ "restricted",
3945
+ "upstream_challenged",
3946
+ "upstream_rate_limited",
3947
+ "upstream_error",
3948
+ "unsupported_page",
3949
+ "response_too_large",
3950
+ "request_limit",
3951
+ "timeout",
3952
+ "busy"
3953
+ ]
3954
+ },
3955
+ "message": { "type": "string" }
3956
+ },
3957
+ "required": ["code", "message"],
3958
+ "additionalProperties": false
3959
+ }
3960
+ },
3961
+ "required": ["requestId", "accounting", "success", "status", "failure"],
3962
+ "additionalProperties": false
3963
+ }
3964
+ ]
3965
+ }
3966
+ },
3967
+ {
3968
+ "platform": "depop",
3969
+ "action": "search-suggestions",
3970
+ "operation": "depopSearchSuggestions",
3971
+ "method": "GET",
3972
+ "path": "/v1/depop/search/suggestions",
3973
+ "description": "Retrieve search suggestions for a partial query, including completed terms and category or gender information. Each successful request costs 1 account credit, including partial results. Failures cost 0. HTTP 402 means insufficient credits. Responses preserve status, coverage, null values and pagination tokens.",
3974
+ "inputSchema": {
3975
+ "type": "object",
3976
+ "properties": {
3977
+ "query": {
3978
+ "type": "string",
3979
+ "minLength": 1,
3980
+ "maxLength": 200,
3981
+ "pattern": "^[^\\u0000-\\u001f\\u007f-\\u009f]+$",
3982
+ "description": "Partial search text, 1-200 characters."
3983
+ },
3984
+ "country": {
3985
+ "type": "string",
3986
+ "enum": ["us", "gb", "au", "ca", "nz", "ie", "de", "fr", "it"],
3987
+ "default": "us",
3988
+ "description": "Market the suggestions are ranked for (default us)."
3989
+ }
3990
+ },
3991
+ "required": ["query"],
3992
+ "additionalProperties": false
3993
+ },
3994
+ "outputSchema": {
3995
+ "anyOf": [
3996
+ {
3997
+ "type": "object",
3998
+ "properties": {
3999
+ "requestId": { "type": "string", "format": "uuid" },
4000
+ "accounting": {
4001
+ "type": "object",
4002
+ "properties": {
4003
+ "upstreamRequests": { "type": "integer", "minimum": 0 },
4004
+ "responseBytes": { "type": "integer", "minimum": 0 },
4005
+ "durationMs": { "type": "number", "minimum": 0 }
4006
+ },
4007
+ "required": ["upstreamRequests", "responseBytes", "durationMs"],
4008
+ "additionalProperties": false
4009
+ },
4010
+ "success": { "type": "boolean", "const": true },
4011
+ "status": { "type": "string", "enum": ["success", "partial"] },
4012
+ "sourceUrl": { "type": "string", "format": "uri" },
4013
+ "fetchedAt": { "type": "string", "format": "date-time" },
4014
+ "coverage": {
4015
+ "type": "object",
4016
+ "properties": {
4017
+ "source": { "type": "string", "const": "public_api" },
4018
+ "complete": { "type": "boolean" },
4019
+ "warnings": {
4020
+ "type": "array",
4021
+ "items": {
4022
+ "type": "string",
4023
+ "enum": [
4024
+ "malformed_items_omitted",
4025
+ "items_truncated",
4026
+ "review_offset_limit",
4027
+ "inventory_unavailable",
4028
+ "catalog_details_unavailable",
4029
+ "extended_details_unavailable",
4030
+ "total_count_unknown"
4031
+ ]
4032
+ }
4033
+ }
4034
+ },
4035
+ "required": ["source", "complete", "warnings"],
4036
+ "additionalProperties": false
4037
+ },
4038
+ "query": { "type": "string" },
4039
+ "country": {
4040
+ "type": "string",
4041
+ "enum": ["us", "gb", "au", "ca", "nz", "ie", "de", "fr", "it"]
4042
+ },
4043
+ "items": {
4044
+ "type": "array",
4045
+ "items": {
4046
+ "type": "object",
4047
+ "properties": {
4048
+ "value": { "type": "string" },
4049
+ "highlighted": { "type": "string" },
4050
+ "group": { "anyOf": [{ "type": "string" }, { "type": "null" }] },
4051
+ "gender": { "anyOf": [{ "type": "string" }, { "type": "null" }] },
4052
+ "label": { "anyOf": [{ "type": "string" }, { "type": "null" }] }
4053
+ },
4054
+ "required": ["value", "highlighted", "group", "gender", "label"],
4055
+ "additionalProperties": false
4056
+ },
4057
+ "maxItems": 10
4058
+ }
4059
+ },
4060
+ "required": [
4061
+ "requestId",
4062
+ "accounting",
4063
+ "success",
4064
+ "status",
4065
+ "sourceUrl",
4066
+ "fetchedAt",
4067
+ "coverage",
4068
+ "query",
4069
+ "country",
4070
+ "items"
4071
+ ],
4072
+ "additionalProperties": false
4073
+ },
4074
+ {
4075
+ "type": "object",
4076
+ "properties": {
4077
+ "requestId": { "type": "string", "format": "uuid" },
4078
+ "accounting": {
4079
+ "type": "object",
4080
+ "properties": {
4081
+ "upstreamRequests": { "type": "integer", "minimum": 0 },
4082
+ "responseBytes": { "type": "integer", "minimum": 0 },
4083
+ "durationMs": { "type": "number", "minimum": 0 }
4084
+ },
4085
+ "required": ["upstreamRequests", "responseBytes", "durationMs"],
4086
+ "additionalProperties": false
4087
+ },
4088
+ "success": { "type": "boolean", "const": false },
4089
+ "status": { "type": "string", "enum": ["failed", "challenged"] },
4090
+ "failure": {
4091
+ "type": "object",
4092
+ "properties": {
4093
+ "code": {
4094
+ "type": "string",
4095
+ "enum": [
4096
+ "invalid_request",
4097
+ "unauthorized",
4098
+ "not_found",
4099
+ "restricted",
4100
+ "upstream_challenged",
4101
+ "upstream_rate_limited",
4102
+ "upstream_error",
4103
+ "unsupported_page",
4104
+ "response_too_large",
4105
+ "request_limit",
4106
+ "timeout",
4107
+ "busy"
4108
+ ]
4109
+ },
4110
+ "message": { "type": "string" }
4111
+ },
4112
+ "required": ["code", "message"],
4113
+ "additionalProperties": false
4114
+ }
4115
+ },
4116
+ "required": ["requestId", "accounting", "success", "status", "failure"],
4117
+ "additionalProperties": false
4118
+ }
4119
+ ]
4120
+ }
4121
+ },
4122
+ {
4123
+ "platform": "depop",
4124
+ "action": "product",
4125
+ "operation": "depopProduct",
4126
+ "method": "GET",
4127
+ "path": "/v1/depop/product",
4128
+ "description": "Retrieve a listing by ID, slug or URL with seller details, prices and fee components, shipping promotions and confidence, image formats, size availability, material and style attributes, seller reviews and activity. Each successful request costs 1 account credit, including partial results. Failures cost 0. HTTP 402 means insufficient credits. Responses preserve status, coverage, null values and pagination tokens.",
4129
+ "inputSchema": {
4130
+ "type": "object",
4131
+ "properties": {
4132
+ "id": {
4133
+ "type": "string",
4134
+ "pattern": "^[1-9][0-9]{0,15}$",
4135
+ "description": "Numeric product ID; provide exactly one of id, slug or url."
4136
+ },
4137
+ "slug": {
4138
+ "type": "string",
4139
+ "pattern": "^[a-z0-9_]+(?:-[a-z0-9_]+)*$",
4140
+ "maxLength": 200,
4141
+ "description": "URL slug from depop.com/products/{slug}/ (lowercase letters, digits and hyphens)."
4142
+ },
4143
+ "url": {
4144
+ "type": "string",
4145
+ "maxLength": 2048,
4146
+ "x-runtime-refinement": true,
4147
+ "description": "Full product URL: https://www.depop.com/products/{slug}/."
4148
+ }
4149
+ },
4150
+ "required": [],
4151
+ "additionalProperties": false,
4152
+ "x-runtime-refinement": true
3670
4153
  },
3671
4154
  "outputSchema": {
3672
4155
  "anyOf": [
@@ -31030,6 +31513,7 @@
31030
31513
  "id": { "type": "string", "pattern": "^[1-9]\\d{0,19}$" },
31031
31514
  "shortcode": { "type": "string", "minLength": 1 },
31032
31515
  "is_video": { "type": "boolean" },
31516
+ "video_play_count": { "type": "integer", "minimum": 0 },
31033
31517
  "owner": {
31034
31518
  "type": "object",
31035
31519
  "properties": {
@@ -42228,13 +42712,154 @@
42228
42712
  ]
42229
42713
  }
42230
42714
  },
42715
+ {
42716
+ "platform": "pinterest",
42717
+ "action": "url-stats",
42718
+ "operation": "pinterestUrlStats",
42719
+ "method": "GET",
42720
+ "path": "/v1/pinterest/url-stats",
42721
+ "description": "Count how many times web pages have been saved to Pinterest. Pass up to ten comma-separated addresses; each address is counted exactly as written, so http/https, trailing slashes and query strings are separate entries. A count of 0 means Pinterest reports no saves for that exact address. Each successful request costs 1 account credit, including partial results. Failures cost 0. HTTP 402 means insufficient credits. Responses preserve status, coverage, null values and pagination tokens.",
42722
+ "inputSchema": {
42723
+ "type": "object",
42724
+ "properties": {
42725
+ "urls": {
42726
+ "type": "string",
42727
+ "maxLength": 20490,
42728
+ "x-runtime-refinement": true,
42729
+ "description": "Required comma-separated list of 1–10 distinct absolute http(s) URLs, at most 2,048 characters each, without credentials or whitespace. Addresses are sent to Pinterest as written and are never visited."
42730
+ }
42731
+ },
42732
+ "required": ["urls"],
42733
+ "additionalProperties": false
42734
+ },
42735
+ "outputSchema": {
42736
+ "anyOf": [
42737
+ {
42738
+ "type": "object",
42739
+ "properties": {
42740
+ "success": { "type": "boolean", "const": true },
42741
+ "status": { "type": "string", "enum": ["success", "partial"] },
42742
+ "requestId": { "type": "string" },
42743
+ "sourceUrl": { "type": "string", "format": "uri" },
42744
+ "fetchedAt": { "type": "string", "format": "date-time" },
42745
+ "coverage": {
42746
+ "type": "object",
42747
+ "properties": {
42748
+ "source": {
42749
+ "type": "string",
42750
+ "enum": ["public_resource", "public_page", "public_graphql", "public_widget"]
42751
+ },
42752
+ "complete": { "type": "boolean" },
42753
+ "warnings": {
42754
+ "type": "array",
42755
+ "items": {
42756
+ "type": "string",
42757
+ "enum": [
42758
+ "restricted_records",
42759
+ "malformed_records",
42760
+ "record_limit",
42761
+ "pagination_unavailable",
42762
+ "missing_pin_counts"
42763
+ ]
42764
+ }
42765
+ }
42766
+ },
42767
+ "required": ["source", "complete", "warnings"],
42768
+ "additionalProperties": true
42769
+ },
42770
+ "accounting": {
42771
+ "type": "object",
42772
+ "properties": {
42773
+ "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 11 },
42774
+ "responseBytes": { "type": "integer", "minimum": 0 },
42775
+ "durationMs": { "type": "number", "minimum": 0 }
42776
+ },
42777
+ "required": ["upstreamRequests", "responseBytes", "durationMs"],
42778
+ "additionalProperties": true
42779
+ },
42780
+ "results": {
42781
+ "type": "array",
42782
+ "items": {
42783
+ "type": "object",
42784
+ "properties": {
42785
+ "url": { "type": "string" },
42786
+ "count": { "type": "integer", "minimum": 0 }
42787
+ },
42788
+ "required": ["url", "count"],
42789
+ "additionalProperties": false
42790
+ },
42791
+ "maxItems": 10
42792
+ }
42793
+ },
42794
+ "required": [
42795
+ "success",
42796
+ "status",
42797
+ "requestId",
42798
+ "sourceUrl",
42799
+ "fetchedAt",
42800
+ "coverage",
42801
+ "accounting",
42802
+ "results"
42803
+ ],
42804
+ "additionalProperties": true
42805
+ },
42806
+ {
42807
+ "type": "object",
42808
+ "properties": {
42809
+ "success": { "type": "boolean", "const": false },
42810
+ "status": { "type": "string", "enum": ["failed", "challenged"] },
42811
+ "requestId": { "type": "string" },
42812
+ "accounting": {
42813
+ "type": "object",
42814
+ "properties": {
42815
+ "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 11 },
42816
+ "responseBytes": { "type": "integer", "minimum": 0 },
42817
+ "durationMs": { "type": "number", "minimum": 0 }
42818
+ },
42819
+ "required": ["upstreamRequests", "responseBytes", "durationMs"],
42820
+ "additionalProperties": true
42821
+ },
42822
+ "failure": {
42823
+ "type": "object",
42824
+ "properties": {
42825
+ "code": {
42826
+ "type": "string",
42827
+ "enum": [
42828
+ "invalid_request",
42829
+ "unauthorized",
42830
+ "not_found",
42831
+ "upstream_challenged",
42832
+ "upstream_rate_limited",
42833
+ "upstream_error",
42834
+ "unsupported_page",
42835
+ "restricted_page",
42836
+ "response_too_large",
42837
+ "unsafe_redirect",
42838
+ "request_limit",
42839
+ "timeout",
42840
+ "payload_too_complex",
42841
+ "busy"
42842
+ ]
42843
+ },
42844
+ "message": { "type": "string" }
42845
+ },
42846
+ "required": ["code", "message"],
42847
+ "additionalProperties": true
42848
+ }
42849
+ },
42850
+ "required": ["success", "status", "requestId", "accounting", "failure"],
42851
+ "additionalProperties": true
42852
+ }
42853
+ ]
42854
+ }
42855
+ },
42231
42856
  {
42232
42857
  "platform": "pinterest",
42233
42858
  "action": "pin",
42234
42859
  "operation": "pinterestPin",
42235
42860
  "method": "GET",
42236
42861
  "path": "/v1/pinterest/pin",
42237
- "description": "Read a public pin’s page data without executing page scripts. Full responses expose Pinterest’s camelCase fields at the top level, preserving nested media and author data. imageSpec_orig aliases images_orig when needed. Trimmed fields: entityId, seoAltText, originPinner, pinner, imageSpec_orig, description, shareCount, nativeCreator, createdAt, repinCount and totalReactionCount. Counts are never guessed; missing required pin fields fail explicitly. Each successful request costs 1 account credit, including partial results. Failures cost 0. HTTP 402 means insufficient credits. Responses preserve status, coverage, null values and pagination tokens.",
42862
+ "description": "Retrieve a public pin’s full details: description, media, author, board, destination, save, share and reaction counts. Full responses expose Pinterest’s camelCase fields at the top level, preserving nested media and author data. imageSpec_orig aliases images_orig when needed. Trimmed fields: entityId, seoAltText, originPinner, pinner, imageSpec_orig, description, shareCount, nativeCreator, createdAt, repinCount and totalReactionCount. Counts are never guessed; missing required pin fields fail explicitly. Each successful request costs 1 account credit, including partial results. Failures cost 0. HTTP 402 means insufficient credits. Responses preserve status, coverage, null values and pagination tokens.",
42238
42863
  "inputSchema": {
42239
42864
  "type": "object",
42240
42865
  "properties": {
@@ -42293,7 +42918,10 @@
42293
42918
  "coverage": {
42294
42919
  "type": "object",
42295
42920
  "properties": {
42296
- "source": { "type": "string", "enum": ["public_resource", "public_page"] },
42921
+ "source": {
42922
+ "type": "string",
42923
+ "enum": ["public_resource", "public_page", "public_graphql", "public_widget"]
42924
+ },
42297
42925
  "complete": { "type": "boolean" },
42298
42926
  "warnings": {
42299
42927
  "type": "array",
@@ -42315,7 +42943,7 @@
42315
42943
  "accounting": {
42316
42944
  "type": "object",
42317
42945
  "properties": {
42318
- "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 3 },
42946
+ "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 11 },
42319
42947
  "responseBytes": { "type": "integer", "minimum": 0 },
42320
42948
  "durationMs": { "type": "number", "minimum": 0 }
42321
42949
  },
@@ -42349,7 +42977,945 @@
42349
42977
  "accounting": {
42350
42978
  "type": "object",
42351
42979
  "properties": {
42352
- "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 3 },
42980
+ "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 11 },
42981
+ "responseBytes": { "type": "integer", "minimum": 0 },
42982
+ "durationMs": { "type": "number", "minimum": 0 }
42983
+ },
42984
+ "required": ["upstreamRequests", "responseBytes", "durationMs"],
42985
+ "additionalProperties": true
42986
+ },
42987
+ "failure": {
42988
+ "type": "object",
42989
+ "properties": {
42990
+ "code": {
42991
+ "type": "string",
42992
+ "enum": [
42993
+ "invalid_request",
42994
+ "unauthorized",
42995
+ "not_found",
42996
+ "upstream_challenged",
42997
+ "upstream_rate_limited",
42998
+ "upstream_error",
42999
+ "unsupported_page",
43000
+ "restricted_page",
43001
+ "response_too_large",
43002
+ "unsafe_redirect",
43003
+ "request_limit",
43004
+ "timeout",
43005
+ "payload_too_complex",
43006
+ "busy"
43007
+ ]
43008
+ },
43009
+ "message": { "type": "string" }
43010
+ },
43011
+ "required": ["code", "message"],
43012
+ "additionalProperties": true
43013
+ }
43014
+ },
43015
+ "required": ["success", "status", "requestId", "accounting", "failure"],
43016
+ "additionalProperties": true
43017
+ }
43018
+ ]
43019
+ }
43020
+ },
43021
+ {
43022
+ "platform": "pinterest",
43023
+ "action": "profile",
43024
+ "operation": "pinterestProfile",
43025
+ "method": "GET",
43026
+ "path": "/v1/pinterest/profile",
43027
+ "description": "Retrieve a public Pinterest profile by username: display name, bio, avatar images, website, follower, following, pin and board counts, monthly profile views, verification and account flags. Source field names and nulls are preserved. Each successful request costs 1 account credit, including partial results. Failures cost 0. HTTP 402 means insufficient credits. Responses preserve status, coverage, null values and pagination tokens.",
43028
+ "inputSchema": {
43029
+ "type": "object",
43030
+ "properties": {
43031
+ "handle": {
43032
+ "type": "string",
43033
+ "pattern": "^[a-zA-Z0-9_]{1,60}$",
43034
+ "x-runtime-refinement": true,
43035
+ "description": "Required Pinterest username, 1–60 letters, digits or underscores; normalized to lowercase."
43036
+ }
43037
+ },
43038
+ "required": ["handle"],
43039
+ "additionalProperties": false
43040
+ },
43041
+ "outputSchema": {
43042
+ "anyOf": [
43043
+ {
43044
+ "type": "object",
43045
+ "properties": {
43046
+ "success": { "type": "boolean", "const": true },
43047
+ "status": { "type": "string", "enum": ["success", "partial"] },
43048
+ "requestId": { "type": "string" },
43049
+ "sourceUrl": { "type": "string", "format": "uri" },
43050
+ "fetchedAt": { "type": "string", "format": "date-time" },
43051
+ "coverage": {
43052
+ "type": "object",
43053
+ "properties": {
43054
+ "source": {
43055
+ "type": "string",
43056
+ "enum": ["public_resource", "public_page", "public_graphql", "public_widget"]
43057
+ },
43058
+ "complete": { "type": "boolean" },
43059
+ "warnings": {
43060
+ "type": "array",
43061
+ "items": {
43062
+ "type": "string",
43063
+ "enum": [
43064
+ "restricted_records",
43065
+ "malformed_records",
43066
+ "record_limit",
43067
+ "pagination_unavailable",
43068
+ "missing_pin_counts"
43069
+ ]
43070
+ }
43071
+ }
43072
+ },
43073
+ "required": ["source", "complete", "warnings"],
43074
+ "additionalProperties": true
43075
+ },
43076
+ "accounting": {
43077
+ "type": "object",
43078
+ "properties": {
43079
+ "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 11 },
43080
+ "responseBytes": { "type": "integer", "minimum": 0 },
43081
+ "durationMs": { "type": "number", "minimum": 0 }
43082
+ },
43083
+ "required": ["upstreamRequests", "responseBytes", "durationMs"],
43084
+ "additionalProperties": true
43085
+ },
43086
+ "profile": {
43087
+ "type": "object",
43088
+ "properties": {
43089
+ "id": { "type": "string", "pattern": "^\\d+$" },
43090
+ "username": { "type": "string", "pattern": "^[a-zA-Z0-9_]{1,60}$" },
43091
+ "url": { "type": "string", "format": "uri" }
43092
+ },
43093
+ "required": ["id", "username", "url"],
43094
+ "additionalProperties": true
43095
+ }
43096
+ },
43097
+ "required": [
43098
+ "success",
43099
+ "status",
43100
+ "requestId",
43101
+ "sourceUrl",
43102
+ "fetchedAt",
43103
+ "coverage",
43104
+ "accounting",
43105
+ "profile"
43106
+ ],
43107
+ "additionalProperties": true
43108
+ },
43109
+ {
43110
+ "type": "object",
43111
+ "properties": {
43112
+ "success": { "type": "boolean", "const": false },
43113
+ "status": { "type": "string", "enum": ["failed", "challenged"] },
43114
+ "requestId": { "type": "string" },
43115
+ "accounting": {
43116
+ "type": "object",
43117
+ "properties": {
43118
+ "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 11 },
43119
+ "responseBytes": { "type": "integer", "minimum": 0 },
43120
+ "durationMs": { "type": "number", "minimum": 0 }
43121
+ },
43122
+ "required": ["upstreamRequests", "responseBytes", "durationMs"],
43123
+ "additionalProperties": true
43124
+ },
43125
+ "failure": {
43126
+ "type": "object",
43127
+ "properties": {
43128
+ "code": {
43129
+ "type": "string",
43130
+ "enum": [
43131
+ "invalid_request",
43132
+ "unauthorized",
43133
+ "not_found",
43134
+ "upstream_challenged",
43135
+ "upstream_rate_limited",
43136
+ "upstream_error",
43137
+ "unsupported_page",
43138
+ "restricted_page",
43139
+ "response_too_large",
43140
+ "unsafe_redirect",
43141
+ "request_limit",
43142
+ "timeout",
43143
+ "payload_too_complex",
43144
+ "busy"
43145
+ ]
43146
+ },
43147
+ "message": { "type": "string" }
43148
+ },
43149
+ "required": ["code", "message"],
43150
+ "additionalProperties": true
43151
+ }
43152
+ },
43153
+ "required": ["success", "status", "requestId", "accounting", "failure"],
43154
+ "additionalProperties": true
43155
+ }
43156
+ ]
43157
+ }
43158
+ },
43159
+ {
43160
+ "platform": "pinterest",
43161
+ "action": "boards",
43162
+ "operation": "pinterestBoards",
43163
+ "method": "GET",
43164
+ "path": "/v1/pinterest/user/boards",
43165
+ "description": "List a page of public boards with counts, creation dates, cover images and cursor pagination. Use trim for compact records with identifiers, URLs, descriptions, counts, cover images and timestamps. Each successful request costs 1 account credit, including partial results. Failures cost 0. HTTP 402 means insufficient credits. Responses preserve status, coverage, null values and pagination tokens.",
43166
+ "inputSchema": {
43167
+ "type": "object",
43168
+ "properties": {
43169
+ "handle": {
43170
+ "type": "string",
43171
+ "pattern": "^[a-zA-Z0-9_]{1,60}$",
43172
+ "x-runtime-refinement": true,
43173
+ "description": "Required Pinterest username, 1–60 letters, digits or underscores; normalized to lowercase."
43174
+ },
43175
+ "cursor": {
43176
+ "type": "string",
43177
+ "minLength": 1,
43178
+ "maxLength": 16384,
43179
+ "pattern": "^[A-Za-z0-9_~+/=|.*%-]+$",
43180
+ "description": "Optional source bookmark returned by the previous response. Reuse with the same query, handle, or board. Null means end of results unless coverage warns pagination_unavailable. Source cursors can expire. Maximum 16,384 characters."
43181
+ },
43182
+ "trim": {
43183
+ "type": "string",
43184
+ "enum": ["true", "false"],
43185
+ "description": "Optional true or false (default false). True selects the documented compact fields; false preserves the public source record and nested extensions. Missing source fields remain absent."
43186
+ }
43187
+ },
43188
+ "required": ["handle"],
43189
+ "additionalProperties": false
43190
+ },
43191
+ "outputSchema": {
43192
+ "anyOf": [
43193
+ {
43194
+ "type": "object",
43195
+ "properties": {
43196
+ "success": { "type": "boolean", "const": true },
43197
+ "status": { "type": "string", "enum": ["success", "partial"] },
43198
+ "requestId": { "type": "string" },
43199
+ "sourceUrl": { "type": "string", "format": "uri" },
43200
+ "fetchedAt": { "type": "string", "format": "date-time" },
43201
+ "coverage": {
43202
+ "type": "object",
43203
+ "properties": {
43204
+ "source": {
43205
+ "type": "string",
43206
+ "enum": ["public_resource", "public_page", "public_graphql", "public_widget"]
43207
+ },
43208
+ "complete": { "type": "boolean" },
43209
+ "warnings": {
43210
+ "type": "array",
43211
+ "items": {
43212
+ "type": "string",
43213
+ "enum": [
43214
+ "restricted_records",
43215
+ "malformed_records",
43216
+ "record_limit",
43217
+ "pagination_unavailable",
43218
+ "missing_pin_counts"
43219
+ ]
43220
+ }
43221
+ }
43222
+ },
43223
+ "required": ["source", "complete", "warnings"],
43224
+ "additionalProperties": true
43225
+ },
43226
+ "accounting": {
43227
+ "type": "object",
43228
+ "properties": {
43229
+ "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 11 },
43230
+ "responseBytes": { "type": "integer", "minimum": 0 },
43231
+ "durationMs": { "type": "number", "minimum": 0 }
43232
+ },
43233
+ "required": ["upstreamRequests", "responseBytes", "durationMs"],
43234
+ "additionalProperties": true
43235
+ },
43236
+ "boards": {
43237
+ "type": "array",
43238
+ "items": {
43239
+ "type": "object",
43240
+ "properties": {
43241
+ "id": { "type": "string", "pattern": "^\\d+$" },
43242
+ "name": { "type": "string" },
43243
+ "url": { "type": "string" },
43244
+ "description": { "anyOf": [{ "type": "string" }, { "type": "null" }] }
43245
+ },
43246
+ "required": ["id", "name", "url", "description"],
43247
+ "additionalProperties": true
43248
+ },
43249
+ "maxItems": 100
43250
+ },
43251
+ "cursor": { "anyOf": [{ "type": "string" }, { "type": "null" }] }
43252
+ },
43253
+ "required": [
43254
+ "success",
43255
+ "status",
43256
+ "requestId",
43257
+ "sourceUrl",
43258
+ "fetchedAt",
43259
+ "coverage",
43260
+ "accounting",
43261
+ "boards",
43262
+ "cursor"
43263
+ ],
43264
+ "additionalProperties": true
43265
+ },
43266
+ {
43267
+ "type": "object",
43268
+ "properties": {
43269
+ "success": { "type": "boolean", "const": false },
43270
+ "status": { "type": "string", "enum": ["failed", "challenged"] },
43271
+ "requestId": { "type": "string" },
43272
+ "accounting": {
43273
+ "type": "object",
43274
+ "properties": {
43275
+ "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 11 },
43276
+ "responseBytes": { "type": "integer", "minimum": 0 },
43277
+ "durationMs": { "type": "number", "minimum": 0 }
43278
+ },
43279
+ "required": ["upstreamRequests", "responseBytes", "durationMs"],
43280
+ "additionalProperties": true
43281
+ },
43282
+ "failure": {
43283
+ "type": "object",
43284
+ "properties": {
43285
+ "code": {
43286
+ "type": "string",
43287
+ "enum": [
43288
+ "invalid_request",
43289
+ "unauthorized",
43290
+ "not_found",
43291
+ "upstream_challenged",
43292
+ "upstream_rate_limited",
43293
+ "upstream_error",
43294
+ "unsupported_page",
43295
+ "restricted_page",
43296
+ "response_too_large",
43297
+ "unsafe_redirect",
43298
+ "request_limit",
43299
+ "timeout",
43300
+ "payload_too_complex",
43301
+ "busy"
43302
+ ]
43303
+ },
43304
+ "message": { "type": "string" }
43305
+ },
43306
+ "required": ["code", "message"],
43307
+ "additionalProperties": true
43308
+ }
43309
+ },
43310
+ "required": ["success", "status", "requestId", "accounting", "failure"],
43311
+ "additionalProperties": true
43312
+ }
43313
+ ]
43314
+ }
43315
+ },
43316
+ {
43317
+ "platform": "pinterest",
43318
+ "action": "user-pins",
43319
+ "operation": "pinterestUserPins",
43320
+ "method": "GET",
43321
+ "path": "/v1/pinterest/user/pins",
43322
+ "description": "List a page of the public pins a user has saved, newest first, with images, titles, descriptions, destinations, boards and counters. Pass cursor to continue. Trimmed pins contain id, url, description, created_at, pinner and images when supplied. Each successful request costs 1 account credit, including partial results. Failures cost 0. HTTP 402 means insufficient credits. Responses preserve status, coverage, null values and pagination tokens.",
43323
+ "inputSchema": {
43324
+ "type": "object",
43325
+ "properties": {
43326
+ "handle": {
43327
+ "type": "string",
43328
+ "pattern": "^[a-zA-Z0-9_]{1,60}$",
43329
+ "x-runtime-refinement": true,
43330
+ "description": "Required Pinterest username, 1–60 letters, digits or underscores; normalized to lowercase."
43331
+ },
43332
+ "cursor": {
43333
+ "type": "string",
43334
+ "minLength": 1,
43335
+ "maxLength": 16384,
43336
+ "pattern": "^[A-Za-z0-9_~+/=|.*%-]+$",
43337
+ "description": "Optional source bookmark returned by the previous response. Reuse with the same query, handle, or board. Null means end of results unless coverage warns pagination_unavailable. Source cursors can expire. Maximum 16,384 characters."
43338
+ },
43339
+ "trim": {
43340
+ "type": "string",
43341
+ "enum": ["true", "false"],
43342
+ "description": "Optional true or false (default false). True selects the documented compact fields; false preserves the public source record and nested extensions. Missing source fields remain absent."
43343
+ }
43344
+ },
43345
+ "required": ["handle"],
43346
+ "additionalProperties": false
43347
+ },
43348
+ "outputSchema": {
43349
+ "anyOf": [
43350
+ {
43351
+ "type": "object",
43352
+ "properties": {
43353
+ "success": { "type": "boolean", "const": true },
43354
+ "status": { "type": "string", "enum": ["success", "partial"] },
43355
+ "requestId": { "type": "string" },
43356
+ "sourceUrl": { "type": "string", "format": "uri" },
43357
+ "fetchedAt": { "type": "string", "format": "date-time" },
43358
+ "coverage": {
43359
+ "type": "object",
43360
+ "properties": {
43361
+ "source": {
43362
+ "type": "string",
43363
+ "enum": ["public_resource", "public_page", "public_graphql", "public_widget"]
43364
+ },
43365
+ "complete": { "type": "boolean" },
43366
+ "warnings": {
43367
+ "type": "array",
43368
+ "items": {
43369
+ "type": "string",
43370
+ "enum": [
43371
+ "restricted_records",
43372
+ "malformed_records",
43373
+ "record_limit",
43374
+ "pagination_unavailable",
43375
+ "missing_pin_counts"
43376
+ ]
43377
+ }
43378
+ }
43379
+ },
43380
+ "required": ["source", "complete", "warnings"],
43381
+ "additionalProperties": true
43382
+ },
43383
+ "accounting": {
43384
+ "type": "object",
43385
+ "properties": {
43386
+ "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 11 },
43387
+ "responseBytes": { "type": "integer", "minimum": 0 },
43388
+ "durationMs": { "type": "number", "minimum": 0 }
43389
+ },
43390
+ "required": ["upstreamRequests", "responseBytes", "durationMs"],
43391
+ "additionalProperties": true
43392
+ },
43393
+ "pins": {
43394
+ "type": "array",
43395
+ "items": {
43396
+ "type": "object",
43397
+ "properties": {
43398
+ "id": { "type": "string", "pattern": "^\\d+$" },
43399
+ "description": { "anyOf": [{ "type": "string" }, { "type": "null" }] },
43400
+ "images": {
43401
+ "type": "object",
43402
+ "properties": {},
43403
+ "required": [],
43404
+ "additionalProperties": true
43405
+ },
43406
+ "pinner": {
43407
+ "anyOf": [
43408
+ {
43409
+ "type": "object",
43410
+ "properties": {},
43411
+ "required": [],
43412
+ "additionalProperties": true
43413
+ },
43414
+ { "type": "null" }
43415
+ ]
43416
+ }
43417
+ },
43418
+ "required": ["id", "description", "images", "pinner"],
43419
+ "additionalProperties": true
43420
+ },
43421
+ "maxItems": 100
43422
+ },
43423
+ "cursor": { "anyOf": [{ "type": "string" }, { "type": "null" }] }
43424
+ },
43425
+ "required": [
43426
+ "success",
43427
+ "status",
43428
+ "requestId",
43429
+ "sourceUrl",
43430
+ "fetchedAt",
43431
+ "coverage",
43432
+ "accounting",
43433
+ "pins",
43434
+ "cursor"
43435
+ ],
43436
+ "additionalProperties": true
43437
+ },
43438
+ {
43439
+ "type": "object",
43440
+ "properties": {
43441
+ "success": { "type": "boolean", "const": false },
43442
+ "status": { "type": "string", "enum": ["failed", "challenged"] },
43443
+ "requestId": { "type": "string" },
43444
+ "accounting": {
43445
+ "type": "object",
43446
+ "properties": {
43447
+ "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 11 },
43448
+ "responseBytes": { "type": "integer", "minimum": 0 },
43449
+ "durationMs": { "type": "number", "minimum": 0 }
43450
+ },
43451
+ "required": ["upstreamRequests", "responseBytes", "durationMs"],
43452
+ "additionalProperties": true
43453
+ },
43454
+ "failure": {
43455
+ "type": "object",
43456
+ "properties": {
43457
+ "code": {
43458
+ "type": "string",
43459
+ "enum": [
43460
+ "invalid_request",
43461
+ "unauthorized",
43462
+ "not_found",
43463
+ "upstream_challenged",
43464
+ "upstream_rate_limited",
43465
+ "upstream_error",
43466
+ "unsupported_page",
43467
+ "restricted_page",
43468
+ "response_too_large",
43469
+ "unsafe_redirect",
43470
+ "request_limit",
43471
+ "timeout",
43472
+ "payload_too_complex",
43473
+ "busy"
43474
+ ]
43475
+ },
43476
+ "message": { "type": "string" }
43477
+ },
43478
+ "required": ["code", "message"],
43479
+ "additionalProperties": true
43480
+ }
43481
+ },
43482
+ "required": ["success", "status", "requestId", "accounting", "failure"],
43483
+ "additionalProperties": true
43484
+ }
43485
+ ]
43486
+ }
43487
+ },
43488
+ {
43489
+ "platform": "pinterest",
43490
+ "action": "board-metadata",
43491
+ "operation": "pinterestBoardMetadata",
43492
+ "method": "GET",
43493
+ "path": "/v1/pinterest/board/metadata",
43494
+ "description": "Retrieve a public board’s details without its pins: name, description, owner, pin, follower, section and collaborator counts, cover images, category and SEO attributes. Source field names and nulls are preserved. Each successful request costs 1 account credit, including partial results. Failures cost 0. HTTP 402 means insufficient credits. Responses preserve status, coverage, null values and pagination tokens.",
43495
+ "inputSchema": {
43496
+ "type": "object",
43497
+ "properties": {
43498
+ "url": {
43499
+ "type": "string",
43500
+ "maxLength": 2048,
43501
+ "x-runtime-refinement": true,
43502
+ "description": "Required HTTPS pinterest.com or www.pinterest.com board URL (/<handle>/<slug>/). Board slugs accept ASCII letters, digits, underscores, hyphens and percent-escaped punctuation such as %2B. No credentials, explicit ports, short links, regional domains or encoded path segments. Tracking query parameters and fragments are removed."
43503
+ }
43504
+ },
43505
+ "required": ["url"],
43506
+ "additionalProperties": false
43507
+ },
43508
+ "outputSchema": {
43509
+ "anyOf": [
43510
+ {
43511
+ "type": "object",
43512
+ "properties": {
43513
+ "success": { "type": "boolean", "const": true },
43514
+ "status": { "type": "string", "enum": ["success", "partial"] },
43515
+ "requestId": { "type": "string" },
43516
+ "sourceUrl": { "type": "string", "format": "uri" },
43517
+ "fetchedAt": { "type": "string", "format": "date-time" },
43518
+ "coverage": {
43519
+ "type": "object",
43520
+ "properties": {
43521
+ "source": {
43522
+ "type": "string",
43523
+ "enum": ["public_resource", "public_page", "public_graphql", "public_widget"]
43524
+ },
43525
+ "complete": { "type": "boolean" },
43526
+ "warnings": {
43527
+ "type": "array",
43528
+ "items": {
43529
+ "type": "string",
43530
+ "enum": [
43531
+ "restricted_records",
43532
+ "malformed_records",
43533
+ "record_limit",
43534
+ "pagination_unavailable",
43535
+ "missing_pin_counts"
43536
+ ]
43537
+ }
43538
+ }
43539
+ },
43540
+ "required": ["source", "complete", "warnings"],
43541
+ "additionalProperties": true
43542
+ },
43543
+ "accounting": {
43544
+ "type": "object",
43545
+ "properties": {
43546
+ "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 11 },
43547
+ "responseBytes": { "type": "integer", "minimum": 0 },
43548
+ "durationMs": { "type": "number", "minimum": 0 }
43549
+ },
43550
+ "required": ["upstreamRequests", "responseBytes", "durationMs"],
43551
+ "additionalProperties": true
43552
+ },
43553
+ "board": {
43554
+ "type": "object",
43555
+ "properties": {
43556
+ "id": { "type": "string", "pattern": "^\\d+$" },
43557
+ "name": { "type": "string" },
43558
+ "url": { "type": "string", "format": "uri" },
43559
+ "description": { "anyOf": [{ "type": "string" }, { "type": "null" }] }
43560
+ },
43561
+ "required": ["id", "name", "url", "description"],
43562
+ "additionalProperties": true
43563
+ }
43564
+ },
43565
+ "required": [
43566
+ "success",
43567
+ "status",
43568
+ "requestId",
43569
+ "sourceUrl",
43570
+ "fetchedAt",
43571
+ "coverage",
43572
+ "accounting",
43573
+ "board"
43574
+ ],
43575
+ "additionalProperties": true
43576
+ },
43577
+ {
43578
+ "type": "object",
43579
+ "properties": {
43580
+ "success": { "type": "boolean", "const": false },
43581
+ "status": { "type": "string", "enum": ["failed", "challenged"] },
43582
+ "requestId": { "type": "string" },
43583
+ "accounting": {
43584
+ "type": "object",
43585
+ "properties": {
43586
+ "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 11 },
43587
+ "responseBytes": { "type": "integer", "minimum": 0 },
43588
+ "durationMs": { "type": "number", "minimum": 0 }
43589
+ },
43590
+ "required": ["upstreamRequests", "responseBytes", "durationMs"],
43591
+ "additionalProperties": true
43592
+ },
43593
+ "failure": {
43594
+ "type": "object",
43595
+ "properties": {
43596
+ "code": {
43597
+ "type": "string",
43598
+ "enum": [
43599
+ "invalid_request",
43600
+ "unauthorized",
43601
+ "not_found",
43602
+ "upstream_challenged",
43603
+ "upstream_rate_limited",
43604
+ "upstream_error",
43605
+ "unsupported_page",
43606
+ "restricted_page",
43607
+ "response_too_large",
43608
+ "unsafe_redirect",
43609
+ "request_limit",
43610
+ "timeout",
43611
+ "payload_too_complex",
43612
+ "busy"
43613
+ ]
43614
+ },
43615
+ "message": { "type": "string" }
43616
+ },
43617
+ "required": ["code", "message"],
43618
+ "additionalProperties": true
43619
+ }
43620
+ },
43621
+ "required": ["success", "status", "requestId", "accounting", "failure"],
43622
+ "additionalProperties": true
43623
+ }
43624
+ ]
43625
+ }
43626
+ },
43627
+ {
43628
+ "platform": "pinterest",
43629
+ "action": "pin-metadata",
43630
+ "operation": "pinterestPinMetadata",
43631
+ "method": "GET",
43632
+ "path": "/v1/pinterest/pin/metadata",
43633
+ "description": "Retrieve a public pin’s metadata, including its description, images, media, destination, author, board and engagement fields. The pin object preserves Pinterest’s source field names and nested attributes. Each successful request costs 1 account credit, including partial results. Failures cost 0. HTTP 402 means insufficient credits. Responses preserve status, coverage, null values and pagination tokens.",
43634
+ "inputSchema": {
43635
+ "type": "object",
43636
+ "properties": {
43637
+ "url": {
43638
+ "type": "string",
43639
+ "maxLength": 2048,
43640
+ "x-runtime-refinement": true,
43641
+ "description": "Required Pinterest pin URL. The response includes its canonical public URL."
43642
+ }
43643
+ },
43644
+ "required": ["url"],
43645
+ "additionalProperties": false
43646
+ },
43647
+ "outputSchema": {
43648
+ "anyOf": [
43649
+ {
43650
+ "type": "object",
43651
+ "properties": {
43652
+ "success": { "type": "boolean", "const": true },
43653
+ "status": { "type": "string", "enum": ["success", "partial"] },
43654
+ "requestId": { "type": "string" },
43655
+ "sourceUrl": { "type": "string", "format": "uri" },
43656
+ "fetchedAt": { "type": "string", "format": "date-time" },
43657
+ "coverage": {
43658
+ "type": "object",
43659
+ "properties": {
43660
+ "source": {
43661
+ "type": "string",
43662
+ "enum": ["public_resource", "public_page", "public_graphql", "public_widget"]
43663
+ },
43664
+ "complete": { "type": "boolean" },
43665
+ "warnings": {
43666
+ "type": "array",
43667
+ "items": {
43668
+ "type": "string",
43669
+ "enum": [
43670
+ "restricted_records",
43671
+ "malformed_records",
43672
+ "record_limit",
43673
+ "pagination_unavailable",
43674
+ "missing_pin_counts"
43675
+ ]
43676
+ }
43677
+ }
43678
+ },
43679
+ "required": ["source", "complete", "warnings"],
43680
+ "additionalProperties": true
43681
+ },
43682
+ "accounting": {
43683
+ "type": "object",
43684
+ "properties": {
43685
+ "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 11 },
43686
+ "responseBytes": { "type": "integer", "minimum": 0 },
43687
+ "durationMs": { "type": "number", "minimum": 0 }
43688
+ },
43689
+ "required": ["upstreamRequests", "responseBytes", "durationMs"],
43690
+ "additionalProperties": true
43691
+ },
43692
+ "pin": {
43693
+ "type": "object",
43694
+ "properties": {
43695
+ "id": { "type": "string", "pattern": "^\\d+$" },
43696
+ "description": { "anyOf": [{ "type": "string" }, { "type": "null" }] },
43697
+ "images": {
43698
+ "type": "object",
43699
+ "properties": {},
43700
+ "required": [],
43701
+ "additionalProperties": true
43702
+ },
43703
+ "pinner": {
43704
+ "anyOf": [
43705
+ {
43706
+ "type": "object",
43707
+ "properties": {},
43708
+ "required": [],
43709
+ "additionalProperties": true
43710
+ },
43711
+ { "type": "null" }
43712
+ ]
43713
+ },
43714
+ "url": { "type": "string", "format": "uri" }
43715
+ },
43716
+ "required": ["id", "description", "images", "pinner", "url"],
43717
+ "additionalProperties": true
43718
+ }
43719
+ },
43720
+ "required": [
43721
+ "success",
43722
+ "status",
43723
+ "requestId",
43724
+ "sourceUrl",
43725
+ "fetchedAt",
43726
+ "coverage",
43727
+ "accounting",
43728
+ "pin"
43729
+ ],
43730
+ "additionalProperties": true
43731
+ },
43732
+ {
43733
+ "type": "object",
43734
+ "properties": {
43735
+ "success": { "type": "boolean", "const": false },
43736
+ "status": { "type": "string", "enum": ["failed", "challenged"] },
43737
+ "requestId": { "type": "string" },
43738
+ "accounting": {
43739
+ "type": "object",
43740
+ "properties": {
43741
+ "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 11 },
43742
+ "responseBytes": { "type": "integer", "minimum": 0 },
43743
+ "durationMs": { "type": "number", "minimum": 0 }
43744
+ },
43745
+ "required": ["upstreamRequests", "responseBytes", "durationMs"],
43746
+ "additionalProperties": true
43747
+ },
43748
+ "failure": {
43749
+ "type": "object",
43750
+ "properties": {
43751
+ "code": {
43752
+ "type": "string",
43753
+ "enum": [
43754
+ "invalid_request",
43755
+ "unauthorized",
43756
+ "not_found",
43757
+ "upstream_challenged",
43758
+ "upstream_rate_limited",
43759
+ "upstream_error",
43760
+ "unsupported_page",
43761
+ "restricted_page",
43762
+ "response_too_large",
43763
+ "unsafe_redirect",
43764
+ "request_limit",
43765
+ "timeout",
43766
+ "payload_too_complex",
43767
+ "busy"
43768
+ ]
43769
+ },
43770
+ "message": { "type": "string" }
43771
+ },
43772
+ "required": ["code", "message"],
43773
+ "additionalProperties": true
43774
+ }
43775
+ },
43776
+ "required": ["success", "status", "requestId", "accounting", "failure"],
43777
+ "additionalProperties": true
43778
+ }
43779
+ ]
43780
+ }
43781
+ },
43782
+ {
43783
+ "platform": "pinterest",
43784
+ "action": "board",
43785
+ "operation": "pinterestBoard",
43786
+ "method": "GET",
43787
+ "path": "/v1/pinterest/board",
43788
+ "description": "Retrieve a page of pins from a public board, including the board information, destinations, rich summaries, annotations and reaction counts attached to each pin. Pass cursor and an optional board_id for the next page. Trimmed pins keep id, url, description, created_at, pinner, images, title, link, domain, alt_text, unified_user_note, board, rich_summary and reaction_counts when supplied. Each successful request costs 1 account credit, including partial results. Failures cost 0. HTTP 402 means insufficient credits. Responses preserve status, coverage, null values and pagination tokens.",
43789
+ "inputSchema": {
43790
+ "type": "object",
43791
+ "properties": {
43792
+ "url": {
43793
+ "type": "string",
43794
+ "maxLength": 2048,
43795
+ "x-runtime-refinement": true,
43796
+ "description": "Required HTTPS pinterest.com or www.pinterest.com board URL (/<handle>/<slug>/). Board slugs accept ASCII letters, digits, underscores, hyphens and percent-escaped punctuation such as %2B. No credentials, explicit ports, short links, regional domains or encoded path segments. Tracking query parameters and fragments are removed."
43797
+ },
43798
+ "cursor": {
43799
+ "type": "string",
43800
+ "minLength": 1,
43801
+ "maxLength": 16384,
43802
+ "pattern": "^[A-Za-z0-9_~+/=|.*%-]+$",
43803
+ "description": "Optional source bookmark returned by the previous response. Reuse with the same query, handle, or board. Null means end of results unless coverage warns pagination_unavailable. Source cursors can expire. Maximum 16,384 characters."
43804
+ },
43805
+ "board_id": {
43806
+ "type": "string",
43807
+ "pattern": "^\\d{1,30}$",
43808
+ "description": "Optional numeric board id (board.id on every returned pin). With cursor, the continuation reads the board feed directly and still checks every pin against this id; without cursor the board is resolved as on the first page."
43809
+ },
43810
+ "trim": {
43811
+ "type": "string",
43812
+ "enum": ["true", "false"],
43813
+ "description": "Optional true or false (default false). True selects the documented compact fields; false preserves the public source record and nested extensions. Missing source fields remain absent."
43814
+ }
43815
+ },
43816
+ "required": ["url"],
43817
+ "additionalProperties": false
43818
+ },
43819
+ "outputSchema": {
43820
+ "anyOf": [
43821
+ {
43822
+ "type": "object",
43823
+ "properties": {
43824
+ "success": { "type": "boolean", "const": true },
43825
+ "status": { "type": "string", "enum": ["success", "partial"] },
43826
+ "requestId": { "type": "string" },
43827
+ "sourceUrl": { "type": "string", "format": "uri" },
43828
+ "fetchedAt": { "type": "string", "format": "date-time" },
43829
+ "coverage": {
43830
+ "type": "object",
43831
+ "properties": {
43832
+ "source": {
43833
+ "type": "string",
43834
+ "enum": ["public_resource", "public_page", "public_graphql", "public_widget"]
43835
+ },
43836
+ "complete": { "type": "boolean" },
43837
+ "warnings": {
43838
+ "type": "array",
43839
+ "items": {
43840
+ "type": "string",
43841
+ "enum": [
43842
+ "restricted_records",
43843
+ "malformed_records",
43844
+ "record_limit",
43845
+ "pagination_unavailable",
43846
+ "missing_pin_counts"
43847
+ ]
43848
+ }
43849
+ }
43850
+ },
43851
+ "required": ["source", "complete", "warnings"],
43852
+ "additionalProperties": true
43853
+ },
43854
+ "accounting": {
43855
+ "type": "object",
43856
+ "properties": {
43857
+ "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 11 },
43858
+ "responseBytes": { "type": "integer", "minimum": 0 },
43859
+ "durationMs": { "type": "number", "minimum": 0 }
43860
+ },
43861
+ "required": ["upstreamRequests", "responseBytes", "durationMs"],
43862
+ "additionalProperties": true
43863
+ },
43864
+ "pins": {
43865
+ "type": "array",
43866
+ "items": {
43867
+ "type": "object",
43868
+ "properties": {
43869
+ "id": { "type": "string", "pattern": "^\\d+$" },
43870
+ "description": { "anyOf": [{ "type": "string" }, { "type": "null" }] },
43871
+ "images": {
43872
+ "type": "object",
43873
+ "properties": {},
43874
+ "required": [],
43875
+ "additionalProperties": true
43876
+ },
43877
+ "pinner": {
43878
+ "anyOf": [
43879
+ {
43880
+ "type": "object",
43881
+ "properties": {},
43882
+ "required": [],
43883
+ "additionalProperties": true
43884
+ },
43885
+ { "type": "null" }
43886
+ ]
43887
+ }
43888
+ },
43889
+ "required": ["id", "description", "images", "pinner"],
43890
+ "additionalProperties": true
43891
+ },
43892
+ "maxItems": 100
43893
+ },
43894
+ "cursor": { "anyOf": [{ "type": "string" }, { "type": "null" }] }
43895
+ },
43896
+ "required": [
43897
+ "success",
43898
+ "status",
43899
+ "requestId",
43900
+ "sourceUrl",
43901
+ "fetchedAt",
43902
+ "coverage",
43903
+ "accounting",
43904
+ "pins",
43905
+ "cursor"
43906
+ ],
43907
+ "additionalProperties": true
43908
+ },
43909
+ {
43910
+ "type": "object",
43911
+ "properties": {
43912
+ "success": { "type": "boolean", "const": false },
43913
+ "status": { "type": "string", "enum": ["failed", "challenged"] },
43914
+ "requestId": { "type": "string" },
43915
+ "accounting": {
43916
+ "type": "object",
43917
+ "properties": {
43918
+ "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 11 },
42353
43919
  "responseBytes": { "type": "integer", "minimum": 0 },
42354
43920
  "durationMs": { "type": "number", "minimum": 0 }
42355
43921
  },
@@ -42392,19 +43958,19 @@
42392
43958
  },
42393
43959
  {
42394
43960
  "platform": "pinterest",
42395
- "action": "boards",
42396
- "operation": "pinterestBoards",
43961
+ "action": "pin-related",
43962
+ "operation": "pinterestPinRelated",
42397
43963
  "method": "GET",
42398
- "path": "/v1/pinterest/user/boards",
42399
- "description": "List a page of public boards with counts, metadata and cursor pagination. Use trim for compact records with identifiers, URLs, descriptions, counts, cover images and timestamps. Each successful request costs 1 account credit, including partial results. Failures cost 0. HTTP 402 means insufficient credits. Responses preserve status, coverage, null values and pagination tokens.",
43964
+ "path": "/v1/pinterest/pin/related",
43965
+ "description": "Retrieve the pins Pinterest recommends alongside a public pin (“More like this”) with images, titles, descriptions, destinations, authors, boards and counters. Pass cursor to continue. Trimmed pins contain id, url, description, created_at, pinner and images when supplied. Each successful request costs 1 account credit, including partial results. Failures cost 0. HTTP 402 means insufficient credits. Responses preserve status, coverage, null values and pagination tokens.",
42400
43966
  "inputSchema": {
42401
43967
  "type": "object",
42402
43968
  "properties": {
42403
- "handle": {
43969
+ "url": {
42404
43970
  "type": "string",
42405
- "pattern": "^[a-zA-Z0-9_]{1,60}$",
43971
+ "maxLength": 2048,
42406
43972
  "x-runtime-refinement": true,
42407
- "description": "Required Pinterest username, 1–60 letters, digits or underscores; normalized to lowercase."
43973
+ "description": "Required HTTPS pinterest.com or www.pinterest.com pin URL (/pin/<numeric-id>/). No credentials, explicit ports, short links, regional domains or encoded path segments. Tracking query parameters and fragments are removed."
42408
43974
  },
42409
43975
  "cursor": {
42410
43976
  "type": "string",
@@ -42419,7 +43985,7 @@
42419
43985
  "description": "Optional true or false (default false). True selects the documented compact fields; false preserves the public source record and nested extensions. Missing source fields remain absent."
42420
43986
  }
42421
43987
  },
42422
- "required": ["handle"],
43988
+ "required": ["url"],
42423
43989
  "additionalProperties": false
42424
43990
  },
42425
43991
  "outputSchema": {
@@ -42435,7 +44001,10 @@
42435
44001
  "coverage": {
42436
44002
  "type": "object",
42437
44003
  "properties": {
42438
- "source": { "type": "string", "enum": ["public_resource", "public_page"] },
44004
+ "source": {
44005
+ "type": "string",
44006
+ "enum": ["public_resource", "public_page", "public_graphql", "public_widget"]
44007
+ },
42439
44008
  "complete": { "type": "boolean" },
42440
44009
  "warnings": {
42441
44010
  "type": "array",
@@ -42457,24 +44026,39 @@
42457
44026
  "accounting": {
42458
44027
  "type": "object",
42459
44028
  "properties": {
42460
- "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 3 },
44029
+ "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 11 },
42461
44030
  "responseBytes": { "type": "integer", "minimum": 0 },
42462
44031
  "durationMs": { "type": "number", "minimum": 0 }
42463
44032
  },
42464
44033
  "required": ["upstreamRequests", "responseBytes", "durationMs"],
42465
44034
  "additionalProperties": true
42466
44035
  },
42467
- "boards": {
44036
+ "pins": {
42468
44037
  "type": "array",
42469
44038
  "items": {
42470
44039
  "type": "object",
42471
44040
  "properties": {
42472
44041
  "id": { "type": "string", "pattern": "^\\d+$" },
42473
- "name": { "type": "string" },
42474
- "url": { "type": "string" },
42475
- "description": { "anyOf": [{ "type": "string" }, { "type": "null" }] }
44042
+ "description": { "anyOf": [{ "type": "string" }, { "type": "null" }] },
44043
+ "images": {
44044
+ "type": "object",
44045
+ "properties": {},
44046
+ "required": [],
44047
+ "additionalProperties": true
44048
+ },
44049
+ "pinner": {
44050
+ "anyOf": [
44051
+ {
44052
+ "type": "object",
44053
+ "properties": {},
44054
+ "required": [],
44055
+ "additionalProperties": true
44056
+ },
44057
+ { "type": "null" }
44058
+ ]
44059
+ }
42476
44060
  },
42477
- "required": ["id", "name", "url", "description"],
44061
+ "required": ["id", "description", "images", "pinner"],
42478
44062
  "additionalProperties": true
42479
44063
  },
42480
44064
  "maxItems": 100
@@ -42489,7 +44073,7 @@
42489
44073
  "fetchedAt",
42490
44074
  "coverage",
42491
44075
  "accounting",
42492
- "boards",
44076
+ "pins",
42493
44077
  "cursor"
42494
44078
  ],
42495
44079
  "additionalProperties": true
@@ -42503,7 +44087,7 @@
42503
44087
  "accounting": {
42504
44088
  "type": "object",
42505
44089
  "properties": {
42506
- "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 3 },
44090
+ "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 11 },
42507
44091
  "responseBytes": { "type": "integer", "minimum": 0 },
42508
44092
  "durationMs": { "type": "number", "minimum": 0 }
42509
44093
  },
@@ -42546,22 +44130,22 @@
42546
44130
  },
42547
44131
  {
42548
44132
  "platform": "pinterest",
42549
- "action": "pin-metadata",
42550
- "operation": "pinterestPinMetadata",
44133
+ "action": "search-suggestions",
44134
+ "operation": "pinterestSearchSuggestions",
42551
44135
  "method": "GET",
42552
- "path": "/v1/pinterest/pin/metadata",
42553
- "description": "Retrieve a public pin’s metadata, including its description, images, media, destination, author, board and engagement fields. The pin object preserves Pinterest’s source field names and nested attributes. Each successful request costs 1 account credit, including partial results. Failures cost 0. HTTP 402 means insufficient credits. Responses preserve status, coverage, null values and pagination tokens.",
44136
+ "path": "/v1/pinterest/search/suggestions",
44137
+ "description": "Autocomplete a partial keyword with Pinterest’s own search suggestions: suggested queries with their search links, plus suggested accounts where Pinterest includes them. Suggestions keep Pinterest’s order and source fields. Each successful request costs 1 account credit, including partial results. Failures cost 0. HTTP 402 means insufficient credits. Responses preserve status, coverage, null values and pagination tokens.",
42554
44138
  "inputSchema": {
42555
44139
  "type": "object",
42556
44140
  "properties": {
42557
- "url": {
44141
+ "query": {
42558
44142
  "type": "string",
42559
- "maxLength": 2048,
42560
- "x-runtime-refinement": true,
42561
- "description": "Required Pinterest pin URL. The response includes its canonical public URL."
44143
+ "minLength": 1,
44144
+ "maxLength": 100,
44145
+ "description": "Required partial keyword, 1–100 characters after trimming."
42562
44146
  }
42563
44147
  },
42564
- "required": ["url"],
44148
+ "required": ["query"],
42565
44149
  "additionalProperties": false
42566
44150
  },
42567
44151
  "outputSchema": {
@@ -42577,7 +44161,10 @@
42577
44161
  "coverage": {
42578
44162
  "type": "object",
42579
44163
  "properties": {
42580
- "source": { "type": "string", "enum": ["public_resource", "public_page"] },
44164
+ "source": {
44165
+ "type": "string",
44166
+ "enum": ["public_resource", "public_page", "public_graphql", "public_widget"]
44167
+ },
42581
44168
  "complete": { "type": "boolean" },
42582
44169
  "warnings": {
42583
44170
  "type": "array",
@@ -42599,39 +44186,25 @@
42599
44186
  "accounting": {
42600
44187
  "type": "object",
42601
44188
  "properties": {
42602
- "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 3 },
44189
+ "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 11 },
42603
44190
  "responseBytes": { "type": "integer", "minimum": 0 },
42604
44191
  "durationMs": { "type": "number", "minimum": 0 }
42605
44192
  },
42606
44193
  "required": ["upstreamRequests", "responseBytes", "durationMs"],
42607
44194
  "additionalProperties": true
42608
44195
  },
42609
- "pin": {
42610
- "type": "object",
42611
- "properties": {
42612
- "id": { "type": "string", "pattern": "^\\d+$" },
42613
- "description": { "anyOf": [{ "type": "string" }, { "type": "null" }] },
42614
- "images": {
42615
- "type": "object",
42616
- "properties": {},
42617
- "required": [],
42618
- "additionalProperties": true
42619
- },
42620
- "pinner": {
42621
- "anyOf": [
42622
- {
42623
- "type": "object",
42624
- "properties": {},
42625
- "required": [],
42626
- "additionalProperties": true
42627
- },
42628
- { "type": "null" }
42629
- ]
44196
+ "suggestions": {
44197
+ "type": "array",
44198
+ "items": {
44199
+ "type": "object",
44200
+ "properties": {
44201
+ "type": { "type": "string", "minLength": 1 },
44202
+ "label": { "type": "string" }
42630
44203
  },
42631
- "url": { "type": "string", "format": "uri" }
44204
+ "required": ["type", "label"],
44205
+ "additionalProperties": true
42632
44206
  },
42633
- "required": ["id", "description", "images", "pinner", "url"],
42634
- "additionalProperties": true
44207
+ "maxItems": 100
42635
44208
  }
42636
44209
  },
42637
44210
  "required": [
@@ -42642,7 +44215,7 @@
42642
44215
  "fetchedAt",
42643
44216
  "coverage",
42644
44217
  "accounting",
42645
- "pin"
44218
+ "suggestions"
42646
44219
  ],
42647
44220
  "additionalProperties": true
42648
44221
  },
@@ -42655,7 +44228,7 @@
42655
44228
  "accounting": {
42656
44229
  "type": "object",
42657
44230
  "properties": {
42658
- "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 3 },
44231
+ "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 11 },
42659
44232
  "responseBytes": { "type": "integer", "minimum": 0 },
42660
44233
  "durationMs": { "type": "number", "minimum": 0 }
42661
44234
  },
@@ -42698,19 +44271,19 @@
42698
44271
  },
42699
44272
  {
42700
44273
  "platform": "pinterest",
42701
- "action": "board",
42702
- "operation": "pinterestBoard",
44274
+ "action": "search-boards",
44275
+ "operation": "pinterestSearchBoards",
42703
44276
  "method": "GET",
42704
- "path": "/v1/pinterest/board",
42705
- "description": "Retrieve a page of pins from a public board, including the board information attached to each pin. Pass cursor and an optional board_id for the next page and use trim for compact pin records. Each successful request costs 1 account credit, including partial results. Failures cost 0. HTTP 402 means insufficient credits. Responses preserve status, coverage, null values and pagination tokens.",
44277
+ "path": "/v1/pinterest/search/boards",
44278
+ "description": "Discover public boards for a keyword with names, descriptions, owners, pin and follower counts, cover images and thumbnails. Pinterest controls ranking and page size; pass cursor to continue. Trimmed boards contain id, url, description, follower_count, pin_count, name, image_cover_hd_url and created_at when supplied. Each successful request costs 1 account credit, including partial results. Failures cost 0. HTTP 402 means insufficient credits. Responses preserve status, coverage, null values and pagination tokens.",
42706
44279
  "inputSchema": {
42707
44280
  "type": "object",
42708
44281
  "properties": {
42709
- "url": {
44282
+ "query": {
42710
44283
  "type": "string",
42711
- "maxLength": 2048,
42712
- "x-runtime-refinement": true,
42713
- "description": "Required HTTPS pinterest.com or www.pinterest.com board URL (/<handle>/<slug>/). Board slugs currently accept ASCII letters, digits, underscores and hyphens. No credentials, explicit ports, short links, regional domains or encoded path segments. Tracking query parameters and fragments are removed."
44284
+ "minLength": 1,
44285
+ "maxLength": 500,
44286
+ "description": "Required keyword, 1–500 characters after trimming."
42714
44287
  },
42715
44288
  "cursor": {
42716
44289
  "type": "string",
@@ -42719,18 +44292,13 @@
42719
44292
  "pattern": "^[A-Za-z0-9_~+/=|.*%-]+$",
42720
44293
  "description": "Optional source bookmark returned by the previous response. Reuse with the same query, handle, or board. Null means end of results unless coverage warns pagination_unavailable. Source cursors can expire. Maximum 16,384 characters."
42721
44294
  },
42722
- "board_id": {
42723
- "type": "string",
42724
- "pattern": "^\\d{1,30}$",
42725
- "description": "Optional numeric board id (board.id on every returned pin). With cursor, the continuation reads the board feed directly and still checks every pin against this id; without cursor the board is resolved as on the first page."
42726
- },
42727
44295
  "trim": {
42728
44296
  "type": "string",
42729
44297
  "enum": ["true", "false"],
42730
44298
  "description": "Optional true or false (default false). True selects the documented compact fields; false preserves the public source record and nested extensions. Missing source fields remain absent."
42731
44299
  }
42732
44300
  },
42733
- "required": ["url"],
44301
+ "required": ["query"],
42734
44302
  "additionalProperties": false
42735
44303
  },
42736
44304
  "outputSchema": {
@@ -42746,7 +44314,10 @@
42746
44314
  "coverage": {
42747
44315
  "type": "object",
42748
44316
  "properties": {
42749
- "source": { "type": "string", "enum": ["public_resource", "public_page"] },
44317
+ "source": {
44318
+ "type": "string",
44319
+ "enum": ["public_resource", "public_page", "public_graphql", "public_widget"]
44320
+ },
42750
44321
  "complete": { "type": "boolean" },
42751
44322
  "warnings": {
42752
44323
  "type": "array",
@@ -42768,39 +44339,24 @@
42768
44339
  "accounting": {
42769
44340
  "type": "object",
42770
44341
  "properties": {
42771
- "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 3 },
44342
+ "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 11 },
42772
44343
  "responseBytes": { "type": "integer", "minimum": 0 },
42773
44344
  "durationMs": { "type": "number", "minimum": 0 }
42774
44345
  },
42775
44346
  "required": ["upstreamRequests", "responseBytes", "durationMs"],
42776
44347
  "additionalProperties": true
42777
44348
  },
42778
- "pins": {
44349
+ "boards": {
42779
44350
  "type": "array",
42780
44351
  "items": {
42781
44352
  "type": "object",
42782
44353
  "properties": {
42783
44354
  "id": { "type": "string", "pattern": "^\\d+$" },
42784
- "description": { "anyOf": [{ "type": "string" }, { "type": "null" }] },
42785
- "images": {
42786
- "type": "object",
42787
- "properties": {},
42788
- "required": [],
42789
- "additionalProperties": true
42790
- },
42791
- "pinner": {
42792
- "anyOf": [
42793
- {
42794
- "type": "object",
42795
- "properties": {},
42796
- "required": [],
42797
- "additionalProperties": true
42798
- },
42799
- { "type": "null" }
42800
- ]
42801
- }
44355
+ "name": { "type": "string" },
44356
+ "url": { "type": "string" },
44357
+ "description": { "anyOf": [{ "type": "string" }, { "type": "null" }] }
42802
44358
  },
42803
- "required": ["id", "description", "images", "pinner"],
44359
+ "required": ["id", "name", "url", "description"],
42804
44360
  "additionalProperties": true
42805
44361
  },
42806
44362
  "maxItems": 100
@@ -42815,7 +44371,7 @@
42815
44371
  "fetchedAt",
42816
44372
  "coverage",
42817
44373
  "accounting",
42818
- "pins",
44374
+ "boards",
42819
44375
  "cursor"
42820
44376
  ],
42821
44377
  "additionalProperties": true
@@ -42829,7 +44385,7 @@
42829
44385
  "accounting": {
42830
44386
  "type": "object",
42831
44387
  "properties": {
42832
- "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 3 },
44388
+ "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 11 },
42833
44389
  "responseBytes": { "type": "integer", "minimum": 0 },
42834
44390
  "durationMs": { "type": "number", "minimum": 0 }
42835
44391
  },
@@ -42915,7 +44471,10 @@
42915
44471
  "coverage": {
42916
44472
  "type": "object",
42917
44473
  "properties": {
42918
- "source": { "type": "string", "enum": ["public_resource", "public_page"] },
44474
+ "source": {
44475
+ "type": "string",
44476
+ "enum": ["public_resource", "public_page", "public_graphql", "public_widget"]
44477
+ },
42919
44478
  "complete": { "type": "boolean" },
42920
44479
  "warnings": {
42921
44480
  "type": "array",
@@ -42937,7 +44496,7 @@
42937
44496
  "accounting": {
42938
44497
  "type": "object",
42939
44498
  "properties": {
42940
- "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 3 },
44499
+ "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 11 },
42941
44500
  "responseBytes": { "type": "integer", "minimum": 0 },
42942
44501
  "durationMs": { "type": "number", "minimum": 0 }
42943
44502
  },
@@ -42998,7 +44557,162 @@
42998
44557
  "accounting": {
42999
44558
  "type": "object",
43000
44559
  "properties": {
43001
- "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 3 },
44560
+ "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 11 },
44561
+ "responseBytes": { "type": "integer", "minimum": 0 },
44562
+ "durationMs": { "type": "number", "minimum": 0 }
44563
+ },
44564
+ "required": ["upstreamRequests", "responseBytes", "durationMs"],
44565
+ "additionalProperties": true
44566
+ },
44567
+ "failure": {
44568
+ "type": "object",
44569
+ "properties": {
44570
+ "code": {
44571
+ "type": "string",
44572
+ "enum": [
44573
+ "invalid_request",
44574
+ "unauthorized",
44575
+ "not_found",
44576
+ "upstream_challenged",
44577
+ "upstream_rate_limited",
44578
+ "upstream_error",
44579
+ "unsupported_page",
44580
+ "restricted_page",
44581
+ "response_too_large",
44582
+ "unsafe_redirect",
44583
+ "request_limit",
44584
+ "timeout",
44585
+ "payload_too_complex",
44586
+ "busy"
44587
+ ]
44588
+ },
44589
+ "message": { "type": "string" }
44590
+ },
44591
+ "required": ["code", "message"],
44592
+ "additionalProperties": true
44593
+ }
44594
+ },
44595
+ "required": ["success", "status", "requestId", "accounting", "failure"],
44596
+ "additionalProperties": true
44597
+ }
44598
+ ]
44599
+ }
44600
+ },
44601
+ {
44602
+ "platform": "pinterest",
44603
+ "action": "search-users",
44604
+ "operation": "pinterestSearchUsers",
44605
+ "method": "GET",
44606
+ "path": "/v1/pinterest/search/users",
44607
+ "description": "Find public Pinterest accounts for a keyword with usernames, display names, avatars, follower, pin and board counts, verification and recent pin thumbnails. Pass cursor to continue. Trimmed users contain id, username, url, full_name, image_medium_url, follower_count, pin_count, board_count and verified_identity when supplied. Each successful request costs 1 account credit, including partial results. Failures cost 0. HTTP 402 means insufficient credits. Responses preserve status, coverage, null values and pagination tokens.",
44608
+ "inputSchema": {
44609
+ "type": "object",
44610
+ "properties": {
44611
+ "query": {
44612
+ "type": "string",
44613
+ "minLength": 1,
44614
+ "maxLength": 500,
44615
+ "description": "Required keyword, 1–500 characters after trimming."
44616
+ },
44617
+ "cursor": {
44618
+ "type": "string",
44619
+ "minLength": 1,
44620
+ "maxLength": 16384,
44621
+ "pattern": "^[A-Za-z0-9_~+/=|.*%-]+$",
44622
+ "description": "Optional source bookmark returned by the previous response. Reuse with the same query, handle, or board. Null means end of results unless coverage warns pagination_unavailable. Source cursors can expire. Maximum 16,384 characters."
44623
+ },
44624
+ "trim": {
44625
+ "type": "string",
44626
+ "enum": ["true", "false"],
44627
+ "description": "Optional true or false (default false). True selects the documented compact fields; false preserves the public source record and nested extensions. Missing source fields remain absent."
44628
+ }
44629
+ },
44630
+ "required": ["query"],
44631
+ "additionalProperties": false
44632
+ },
44633
+ "outputSchema": {
44634
+ "anyOf": [
44635
+ {
44636
+ "type": "object",
44637
+ "properties": {
44638
+ "success": { "type": "boolean", "const": true },
44639
+ "status": { "type": "string", "enum": ["success", "partial"] },
44640
+ "requestId": { "type": "string" },
44641
+ "sourceUrl": { "type": "string", "format": "uri" },
44642
+ "fetchedAt": { "type": "string", "format": "date-time" },
44643
+ "coverage": {
44644
+ "type": "object",
44645
+ "properties": {
44646
+ "source": {
44647
+ "type": "string",
44648
+ "enum": ["public_resource", "public_page", "public_graphql", "public_widget"]
44649
+ },
44650
+ "complete": { "type": "boolean" },
44651
+ "warnings": {
44652
+ "type": "array",
44653
+ "items": {
44654
+ "type": "string",
44655
+ "enum": [
44656
+ "restricted_records",
44657
+ "malformed_records",
44658
+ "record_limit",
44659
+ "pagination_unavailable",
44660
+ "missing_pin_counts"
44661
+ ]
44662
+ }
44663
+ }
44664
+ },
44665
+ "required": ["source", "complete", "warnings"],
44666
+ "additionalProperties": true
44667
+ },
44668
+ "accounting": {
44669
+ "type": "object",
44670
+ "properties": {
44671
+ "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 11 },
44672
+ "responseBytes": { "type": "integer", "minimum": 0 },
44673
+ "durationMs": { "type": "number", "minimum": 0 }
44674
+ },
44675
+ "required": ["upstreamRequests", "responseBytes", "durationMs"],
44676
+ "additionalProperties": true
44677
+ },
44678
+ "users": {
44679
+ "type": "array",
44680
+ "items": {
44681
+ "type": "object",
44682
+ "properties": {
44683
+ "id": { "type": "string", "pattern": "^\\d+$" },
44684
+ "username": { "type": "string", "pattern": "^[a-zA-Z0-9_]{1,60}$" }
44685
+ },
44686
+ "required": ["id", "username"],
44687
+ "additionalProperties": true
44688
+ },
44689
+ "maxItems": 100
44690
+ },
44691
+ "cursor": { "anyOf": [{ "type": "string" }, { "type": "null" }] }
44692
+ },
44693
+ "required": [
44694
+ "success",
44695
+ "status",
44696
+ "requestId",
44697
+ "sourceUrl",
44698
+ "fetchedAt",
44699
+ "coverage",
44700
+ "accounting",
44701
+ "users",
44702
+ "cursor"
44703
+ ],
44704
+ "additionalProperties": true
44705
+ },
44706
+ {
44707
+ "type": "object",
44708
+ "properties": {
44709
+ "success": { "type": "boolean", "const": false },
44710
+ "status": { "type": "string", "enum": ["failed", "challenged"] },
44711
+ "requestId": { "type": "string" },
44712
+ "accounting": {
44713
+ "type": "object",
44714
+ "properties": {
44715
+ "upstreamRequests": { "type": "integer", "minimum": 0, "maximum": 11 },
43002
44716
  "responseBytes": { "type": "integer", "minimum": 0 },
43003
44717
  "durationMs": { "type": "number", "minimum": 0 }
43004
44718
  },