# Skills report, 2026-10-24

Model: `gpt-4o-mini`. Scores are the share of doc-derived checks the answer passed, with the skill and without it.

## Sources

- **https://developers.tally.so/**: 311 chunks on 97 pages. 0 pages added, 0 changed, 0 removed since the last run. 1 pages are not in any skill.
- **https://tally.so/help/webhooks**: 322 chunks on 98 pages. 0 pages added, 0 changed, 0 removed since the last run. 97 pages are not in any skill.

## Skills

| Skill | Status | With skill | Without skill | Since last run |
|---|---|---|---|---|
| `input-text-tally-developer-docs-bd7ba0` | No change | 67% (8/12) | 8% | -33 pts |
| `request-b14773` | No change | 50% (6/12) | 17% | -17 pts |
| `versioning-tally-developer-docs-0bb444` | No change | 50% (6/12) | 33% | -17 pts |
| `input-time-tally-developer-docs-0d2aa2` | No change | 92% (11/12) | 17% | +8 pts |
| `request-4cac83` | No change | 75% (9/12) | 25% | -17 pts |
| `label-tally-developer-docs-b26479` | No change | 67% (8/12) | 0% | +8 pts |
| `input-date-tally-developer-docs-06ea18` | No change | 50% (6/12) | 0% | -17 pts |
| `example-d6a05e` | No change | 42% (5/12) | 8% | -8 pts |
| `response-7e484f` | No change | 33% (4/12) | 0% | -42 pts |
| `signature-tally-developer-docs-cc7688` | No change | 83% (10/12) | 0% | 0 pts |
| `path-parameters-d39c2d` | No change | 67% (8/12) | 25% | +25 pts |
| `input-phone-number-tally-developer-docs-7dbff2` | Improved | 100% (12/12) | 42% | +8 pts |
| `file-upload-tally-developer-docs-da199a` | No change | 42% (5/12) | 8% | 0 pts |
| `authorizations-bc7ea4` | Improved | 67% (8/12) | 58% | +25 pts |
| `response-77fdf5` | No change | 17% (2/12) | 0% | -33 pts |
| `heading-3-tally-developer-docs-bb5f0d` | No change | 75% (9/12) | 8% | +25 pts |
| `removing-users-tally-developer-docs-51640b` | Improved | 75% (9/12) | 42% | -8 pts |
| `body-4889ee` | No change | 75% (9/12) | 25% | -25 pts |
| `response-8b9cec` | No change | 88% (7/8) | 0% | +25 pts |
| `response-6aa5c7` | Improved | 67% (8/12) | 25% | 0 pts |
| `path-parameters-987ea4` | No change | 83% (10/12) | 42% | 0 pts |
| `deleting-workspaces-tally-developer-docs-6c1e09` | No change | 58% (7/12) | 33% | -17 pts |
| `path-parameters-faec60` | No change | 67% (8/12) | 25% | 0 pts |
| `response-b6e149` | No change | 58% (7/12) | 67% | 0 pts |
| `path-parameters-2b1b73` | No change | 67% (8/12) | 33% | +8 pts |
| `path-parameters-e95fb2` | No change | 25% (3/12) | 0% | +17 pts |
| `response-2f8e46` | No change | 25% (3/12) | 25% | -17 pts |
| `updating-workspaces-tally-developer-docs-57cfa0` | No change | 58% (7/12) | 58% | -25 pts |
| `listing-folders-tally-developer-docs-a2338e` | No change | 58% (7/12) | 17% | 0 pts |
| `response-502c97` | No change | 83% (10/12) | 17% | +25 pts |
| `query-parameters-e6c279` | No change | 83% (10/12) | 0% | 0 pts |
| `response-dbbacf` | No change | 0% (0/12) | 8% | -25 pts |
| `body-36100b` | No change | 25% (2/8) | 0% | 0 pts |
| `path-parameters-19f323` | No change | 58% (7/12) | 33% | -8 pts |
| `submissions-tally-developer-docs-7a1b55` | No change | 83% (10/12) | 42% | 0 pts |
| `listing-users-tally-developer-docs-e24722` | No change | 58% (7/12) | 8% | +8 pts |
| `creating-invites-tally-developer-docs-0decf7` | Improved | 58% (7/12) | 17% | +25 pts |
| `path-parameters-cde966` | No change | 25% (3/12) | 0% | -8 pts |
| `response-a39c5e` | No change | 58% (7/12) | 0% | 0 pts |
| `fetching-forms-tally-developer-docs-e0e866` | No change | 67% (8/12) | 0% | -17 pts |
| `fetching-forms-tally-developer-docs-749ed5` | No change | 50% (6/12) | 17% | +17 pts |
| `fetching-forms-tally-developer-docs-77ff02` | No change | 92% (11/12) | 25% | 0 pts |
| `path-parameters-6c1e9d` | No change | 58% (7/12) | 50% | -17 pts |
| `response-0c4b1e` | No change | 33% (4/12) | 0% | 0 pts |
| `fetching-submissions-tally-developer-docs-3b6d9a` | No change | 50% (6/12) | 25% | -8 pts |
| `conditional-logic-tally-developer-docs-7f0320` | No change | 58% (7/12) | 17% | +17 pts |
| `fetching-forms-tally-developer-docs-d75653` | Improved | 50% (6/12) | 8% | +17 pts |
| `visits-tally-developer-docs-2d0393` | No change | 67% (8/12) | 8% | +8 pts |
| `response-26ed1e` | No change | 42% (5/12) | 25% | 0 pts |
| `dimensions-tally-developer-docs-0a750f` | No change | 58% (7/12) | 8% | +17 pts |
| `response-629c5d` | No change | 92% (11/12) | 50% | 0 pts |
| `response-aa7d70` | No change | 50% (6/12) | 50% | -8 pts |
| `response-cbfe18` | No change | 75% (9/12) | 0% | -17 pts |
| `deleting-webhooks-tally-developer-docs-eaf7d0` | No change | 58% (7/12) | 42% | -17 pts |
| `path-parameters-25d53b` | No change | 50% (6/12) | 33% | -33 pts |
| `embed-in-react-tally-developer-docs-56ca6f` | No change | 92% (11/12) | 17% | +8 pts |
| `deleting-folders-tally-developer-docs-f380e4` | No change | 67% (8/12) | 25% | +25 pts |
| `response-376ac1` | No change | 67% (8/12) | 8% | 0 pts |
| `embed-in-next-js-tally-developer-docs-b417d2` | No change | 58% (7/12) | 50% | +8 pts |
| `path-parameters-7febb1` | Improved | 75% (9/12) | 58% | 0 pts |
| `integration-methods-3ab242` | Improved | 38% (3/8) | 13% | -25 pts |
| `examples-162ca3` | No change | 42% (5/12) | 50% | -8 pts |
| `events-c86b41` | No change | 50% (6/12) | 58% | +25 pts |
| `code-injection-a9d833` | No change | 33% (4/12) | 33% | -42 pts |
| `embeds-e89cdd` | Improved | 58% (7/12) | 50% | +8 pts |
| `body-2ae7ef` | No change | 67% (8/12) | 33% | +8 pts |
| `creating-folders-tally-developer-docs-79a9d4` | No change | 50% (6/12) | 8% | 0 pts |
| `path-parameters-8f8264` | No change | 25% (3/12) | 8% | -25 pts |
| `popups-f947dc` | No change | 58% (7/12) | 58% | -25 pts |
| `popups-tally-developer-docs-da40b7` | No change | 67% (8/12) | 92% | 0 pts |
| `reference-341c9a` | No change | 17% (2/12) | 8% | -25 pts |
| `introduction-tally-developer-docs-841807` | No change | 50% (6/12) | 0% | +8 pts |
| `response-c5b29e` | Improved | 42% (5/12) | 8% | -17 pts |
| `tally-openpopup-e46df5` | No change | 33% (4/12) | 25% | 0 pts |
| `tally-closepopup-56c15a` | No change | 42% (5/12) | 0% | -33 pts |
| `prerequisites-439d23` | No change | 100% (8/8) | 0% | 0 pts |
| `reference-6c620e` | No change | 50% (6/12) | 17% | -8 pts |
| `events-8d677d` | No change | 67% (8/12) | 25% | +8 pts |
| `response-4d5679` | No change | 100% (12/12) | 25% | +17 pts |
| `save-page-url-and-query-parameters-9df8aa` | No change | 42% (5/12) | 0% | +25 pts |
| `add-the-widget-script-f8172d` | Improved | 83% (10/12) | 8% | +8 pts |
| `contact-support-2055d0` | No change | 83% (10/12) | 17% | 0 pts |
| `blocking-tallybot-e61b36` | No change | 67% (8/12) | 75% | -8 pts |
| `response-ca57f9` | Improved | 42% (5/12) | 8% | +17 pts |
| `what-is-tallybot-018683` | No change | 42% (5/12) | 0% | +17 pts |
| `request-e35164` | No change | 67% (8/12) | 8% | +42 pts |
| `using-robots-txt-f56c14` | No change | 25% (3/12) | 25% | -8 pts |
| `respectful-crawling-1a76ab` | No change | 42% (5/12) | 58% | -25 pts |
| `what-we-do-5ecfa3` | No change | 58% (7/12) | 25% | +25 pts |
| `1-form-creation-enhancement-5fe7f1` | Improved | 92% (11/12) | 42% | 0 pts |
| `2-resource-validation-25b20f` | No change | 60% (3/5) | 20% | +60 pts |
| `request-behavior-e3cc1e` | No change | 75% (9/12) | 58% | -8 pts |
| `request-d8996a` | No change | 42% (5/12) | 0% | +17 pts |
| `wait-for-the-dom-fff0eb` | No change | 92% (11/12) | 58% | +25 pts |
| `set-a-value-on-an-input-element-e3ef07` | No change | 33% (4/12) | 0% | -17 pts |
| `read-an-input-element-1b2e6b` | Improved | 58% (7/12) | 8% | -8 pts |
| `read-previously-entered-answers-6d131a` | No change | 58% (7/12) | 0% | 0 pts |
| `javascript-events-tally-developer-docs-6ae851` | No change | 75% (9/12) | 0% | -17 pts |
| `code-injection-tally-developer-docs-de9211` | Improved | 67% (8/12) | 0% | +33 pts |
| `textarea-tally-developer-docs-0afaaf` | Improved | 67% (8/12) | 0% | -8 pts |
| `events-1b2c22` | Improved | 42% (5/12) | 17% | +17 pts |
| `tally-popupclosed-fe0146` | No change | 83% (10/12) | 0% | -8 pts |
| `response-e7d8de` | No change | 75% (9/12) | 0% | -25 pts |
| `tally-formpageview-25a1be` | No change | 75% (9/12) | 17% | 0 pts |
| `tally-formloaded-66a69e` | Improved | 92% (11/12) | 0% | +8 pts |
| `response-b44e84` | Failed | | | Unterminated string in JSON at position 3910 |
| `respondent-country-tally-developer-docs-7426db` | No change | 83% (10/12) | 17% | +17 pts |
| `multiple-choice-option-tally-developer-docs-0837b1` | No change | 75% (9/12) | 50% | 0 pts |
| `tally-formsubmitted-9c60b8` | Improved | 50% (6/12) | 0% | -8 pts |
| `text-tally-developer-docs-d73e61` | No change | 58% (7/12) | 8% | +25 pts |
| `page-break-tally-developer-docs-7f6738` | No change | 58% (7/12) | 8% | 0 pts |
| `request-e07ec5` | Improved | 58% (7/12) | 8% | -25 pts |
| `title-tally-developer-docs-6cb06c` | No change | 50% (6/12) | 8% | -17 pts |
| `multi-select-option-tally-developer-docs-616731` | No change | 83% (10/12) | 58% | 0 pts |
| `response-91e991` | No change | 42% (5/12) | 0% | -33 pts |
| `prerequisites-bd9204` | Improved | 92% (11/12) | 0% | -8 pts |
| `request-d1e856` | No change | 75% (9/12) | 25% | +8 pts |
| `matrix-column-tally-developer-docs-5a3fbc` | No change | 83% (10/12) | 8% | +17 pts |
| `input-email-tally-developer-docs-54e44f` | No change | 42% (5/12) | 17% | -8 pts |
| `ranking-option-tally-developer-docs-baf784` | No change | 50% (6/12) | 42% | -17 pts |
| `request-280acf` | No change | 67% (8/12) | 8% | 0 pts |
| `matrix-tally-developer-docs-33ce05` | No change | 92% (11/12) | 17% | +25 pts |
| `hidden-fields-tally-developer-docs-904eb1` | No change | 83% (10/12) | 25% | +17 pts |
| `input-number-tally-developer-docs-d5eea2` | No change | 67% (8/12) | 67% | -25 pts |
| `matrix-row-tally-developer-docs-700466` | No change | 92% (11/12) | 58% | 0 pts |
| `heading-2-tally-developer-docs-18cb2d` | Improved | 67% (8/12) | 0% | 0 pts |
| `authentication-94b10b` | No change | 50% (3/6) | 0% | -17 pts |
| `form-title-tally-developer-docs-8c61dd` | Improved | 67% (8/12) | 0% | +25 pts |
| `claude-code-cli-179adb` | No change | 58% (7/12) | 0% | -8 pts |
| `updating-an-existing-form-6baefa` | No change | 75% (9/12) | 42% | 0 pts |
| `updating-the-contact-form-4e3835` | No change | 50% (6/12) | 42% | -25 pts |
| `example-usage-95bdb9` | No change | 50% (6/12) | 33% | 0 pts |
| `claude-desktop-217806` | No change | 58% (7/12) | 0% | -8 pts |
| `server-url-3b5429` | No change | 42% (5/12) | 0% | 0 pts |
| `creating-a-form-with-specific-fields-e79abe` | No change | 92% (11/12) | 83% | -8 pts |
| `option-2-api-key-d6ead1` | Improved | 100% (12/12) | 50% | +33 pts |
| `captcha-tally-developer-docs-55b5c7` | Improved | 83% (10/12) | 33% | +42 pts |
| `option-1-oauth-recommended-1c6f98` | No change | 83% (10/12) | 17% | 0 pts |
| `mcp-server-tally-developer-docs-5c7215` | Improved | 100% (12/12) | 0% | +25 pts |
| `listing-forms-74c91d` | No change | 25% (3/12) | 0% | 0 pts |
| `creating-a-simple-contact-form-e9a7d6` | No change | 33% (4/12) | 42% | -25 pts |
| `cursor-376099` | No change | 92% (11/12) | 8% | 0 pts |
| `what-is-mcp-fea925` | Improved | 33% (4/12) | 25% | +8 pts |
| `fetching-form-submissions-c91450` | Improved | 42% (5/12) | 0% | +8 pts |
| `configuring-the-tally-mcp-server-using-oauth-with-6f8b13` | No change | 83% (10/12) | 67% | -8 pts |
| `dropdown-option-tally-developer-docs-d74577` | No change | 58% (7/12) | 0% | -25 pts |
| `heading-1-tally-developer-docs-ad8631` | No change | 42% (5/12) | 0% | 0 pts |
| `embed-audio-tally-developer-docs-4c3dd8` | No change | 50% (6/12) | 0% | +33 pts |
| `checkbox-tally-developer-docs-c81622` | No change | 92% (11/12) | 25% | 0 pts |
| `divider-tally-developer-docs-40cad3` | No change | 58% (7/12) | 0% | -8 pts |
| `image-tally-developer-docs-0a4c7d` | No change | 67% (8/12) | 8% | -25 pts |
| `path-parameters-ab8dfe` | No change | 67% (8/12) | 17% | -8 pts |
| `creating-webhooks-tally-developer-docs-2d3554` | No change | 42% (5/12) | 25% | +25 pts |
| `body-f4c279` | No change | 67% (8/12) | 8% | -17 pts |
| `response-ebbe02` | Improved | 75% (9/12) | 0% | -8 pts |
| `response-807bd2` | No change | 67% (8/12) | 0% | -8 pts |
| `body-711a74` | No change | 33% (4/12) | 50% | -25 pts |
| `body-49f381` | No change | 25% (3/12) | 8% | +8 pts |
| `updating-webhooks-tally-developer-docs-f4e09b` | Improved | 67% (8/12) | 83% | +17 pts |
| `creating-forms-tally-developer-docs-ba1b5d` | No change | 42% (5/12) | 0% | -8 pts |
| `response-fe77ed` | Improved | 67% (8/12) | 17% | 0 pts |
| `creating-forms-tally-developer-docs-edfe54` | No change | 42% (5/12) | 8% | -8 pts |
| `creating-forms-tally-developer-docs-48f9d0` | No change | 42% (5/12) | 25% | 0 pts |
| `listing-invites-tally-developer-docs-97ffd5` | Failed | | | Unterminated string in JSON at position 3327 |
| `response-6de7d7` | No change | 42% (5/12) | 17% | -17 pts |
| `rate-limits-9c8827` | No change | 83% (10/12) | 8% | +17 pts |
| `query-parameters-154027` | No change | 25% (3/12) | 8% | +17 pts |
| `response-fe97f4` | Improved | 50% (6/12) | 33% | +8 pts |
| `base-url-340824` | No change | 42% (5/12) | 0% | 0 pts |
| `response-codes-159beb` | No change | 58% (7/12) | 25% | -8 pts |
| `authentication-efc6a2` | No change | 50% (6/12) | 92% | -33 pts |
| `listing-webhooks-tally-developer-docs-a8d011` | No change | 75% (9/12) | 25% | -8 pts |
| `response-ef3a99` | No change | 33% (4/12) | 0% | -8 pts |
| `listing-submissions-tally-developer-docs-214368` | Improved | 42% (5/12) | 17% | 0 pts |
| `body-a62285` | No change | 8% (1/12) | 0% | -33 pts |
| `query-parameters-b09f06` | Improved | 75% (9/12) | 25% | +17 pts |
| `creating-workspaces-tally-developer-docs-139b4c` | No change | 75% (9/12) | 17% | +8 pts |
| `response-c12f90` | No change | 33% (4/12) | 25% | -25 pts |
| `metrics-tally-developer-docs-aac2b4` | No change | 83% (10/12) | 17% | +8 pts |
| `listing-questions-tally-developer-docs-4ec2a4` | No change | 83% (10/12) | 8% | +8 pts |
| `deleting-submissions-tally-developer-docs-b47a9e` | No change | 67% (8/12) | 17% | 0 pts |
| `response-3007ba` | No change | 42% (5/12) | 17% | -8 pts |
| `path-parameters-f48bf5` | No change | 67% (8/12) | 25% | -17 pts |
| `response-88581b` | Improved | 58% (7/12) | 25% | +8 pts |
| `creating-an-api-key-f9c7fc` | No change | 83% (10/12) | 33% | +8 pts |
| `response-c26d74` | No change | 0% (0/3) | 0% | -33 pts |
| `response-28e7b3` | No change | 58% (7/12) | 17% | +17 pts |
| `api-keys-tally-developer-docs-50653c` | Improved | 92% (11/12) | 8% | +25 pts |
| `drop-off-tally-developer-docs-bded55` | No change | 42% (5/12) | 0% | -8 pts |
| `response-2f756e` | Improved | 100% (12/12) | 8% | +17 pts |
| `collect-the-respondent-s-ip-address-tally-develope-8fae3b` | No change | 83% (10/12) | 0% | +8 pts |
| `embed-tally-developer-docs-9e0105` | No change | 42% (5/12) | 17% | +8 pts |
| `body-61b185` | Improved | 42% (5/12) | 33% | -17 pts |
| `events-fcc5d9` | No change | 25% (3/12) | 33% | 0 pts |
| `updating-forms-tally-developer-docs-548532` | No change | 75% (9/12) | 0% | +17 pts |
| `path-parameters-29e3ab` | Improved | 67% (8/12) | 8% | 0 pts |
| `embeds-tally-developer-docs-8f4fac` | No change | 33% (4/12) | 25% | -8 pts |
| `add-the-widget-script-15a300` | Improved | 67% (8/12) | 25% | 0 pts |
| `updating-forms-tally-developer-docs-eca615` | Improved | 58% (7/12) | 17% | +25 pts |
| `save-page-url-and-query-parameters-e44401` | No change | 50% (6/12) | 0% | -17 pts |
| `updating-forms-tally-developer-docs-9ff78a` | No change | 50% (6/12) | 58% | -8 pts |
| `add-an-embed-0d9a88` | No change | 58% (7/12) | 42% | -17 pts |
| `payment-tally-developer-docs-3d6dfc` | No change | 83% (10/12) | 25% | 0 pts |
| `tally-loadembeds-c1d7b1` | Improved | 25% (3/12) | 25% | 0 pts |
| `rating-tally-developer-docs-935030` | No change | 67% (8/12) | 0% | +8 pts |
| `response-2309a0` | Improved | 58% (7/12) | 25% | -8 pts |
| `request-4cf9b0` | No change | 50% (6/12) | 42% | -8 pts |
| `request-e7d902` | No change | 75% (9/12) | 50% | +17 pts |
| `response-bbfe7b` | No change | 83% (10/12) | 8% | +25 pts |
| `input-link-tally-developer-docs-560516` | Improved | 100% (12/12) | 25% | 0 pts |
| `linear-scale-tally-developer-docs-57355c` | No change | 67% (8/12) | 25% | -33 pts |
| `prerequisites-c78df6` | Improved | 50% (6/12) | 58% | 0 pts |
| `response-679de4` | No change | 58% (7/12) | 0% | 0 pts |
| `path-parameters-6ae335` | No change | 42% (5/12) | 0% | -25 pts |
| `query-parameters-6b7419` | No change | 67% (8/12) | 33% | +17 pts |
| `body-5d8a46` | Improved | 58% (7/12) | 25% | -8 pts |
| `updating-folders-tally-developer-docs-012fcc` | Improved | 67% (8/12) | 0% | 0 pts |
| `response-369708` | No change | 8% (1/12) | 0% | -17 pts |
| `request-39d9dc` | No change | 50% (6/12) | 0% | -25 pts |
| `response-826529` | Improved | 50% (6/12) | 8% | 0 pts |
| `retrying-webhook-events-tally-developer-docs-013f71` | No change | 83% (10/12) | 25% | 0 pts |
| `calculated-fields-tally-developer-docs-e6f822` | No change | 50% (6/12) | 0% | +8 pts |
| `fetching-user-info-tally-developer-docs-17993f` | No change | 75% (9/12) | 0% | +17 pts |
| `response-2bd0b5` | No change | 17% (2/12) | 0% | 0 pts |
| `path-parameters-934e66` | No change | 58% (7/12) | 8% | +25 pts |
| `query-parameters-2ed114` | No change | 92% (11/12) | 42% | +25 pts |
| `path-parameters-9f83a8` | No change | 58% (7/12) | 17% | 0 pts |
| `listing-webhook-events-tally-developer-docs-d24245` | No change | 67% (8/12) | 0% | 0 pts |
| `query-parameters-e9975b` | No change | 25% (3/12) | 17% | -33 pts |
| `response-533fe2` | Improved | 75% (9/12) | 8% | -8 pts |
| `listing-workspaces-tally-developer-docs-7eafaa` | Improved | 92% (11/12) | 50% | 0 pts |
| `fetching-workspaces-tally-developer-docs-fbe171` | No change | 75% (9/12) | 17% | +50 pts |
| `response-86ca2e` | Improved | 58% (7/12) | 8% | +33 pts |
| `path-parameters-1ff451` | No change | 58% (7/12) | 0% | +17 pts |
| `response-b9c87d` | No change | 33% (4/12) | 8% | +8 pts |
| `deprecated-endpoints-3ae542` | Improved | 75% (9/12) | 8% | +17 pts |
| `new-endpoints-ac4245` | No change | 100% (4/4) | 0% | 0 pts |
| `changed-endpoints-0289dd` | No change | 25% (3/12) | 0% | -17 pts |
| `changed-endpoints-41e9a9` | No change | 67% (8/12) | 50% | 0 pts |
| `changed-endpoints-c0ec0f` | No change | 50% (6/12) | 8% | 0 pts |
| `breaking-changes-17df6d` | No change | 83% (10/12) | 17% | -8 pts |
| `changed-endpoints-50c9ee` | Improved | 83% (10/12) | 0% | +8 pts |
| `embed-video-tally-developer-docs-b7a75c` | No change | 50% (6/12) | 0% | -8 pts |
| `changed-endpoints-67d2a0` | No change | 50% (6/12) | 0% | +8 pts |
| `breaking-changes-b83af0` | No change | 42% (5/12) | 17% | +17 pts |
| `changed-endpoints-a29133` | No change | 42% (5/12) | 0% | -8 pts |
| `new-endpoints-5f8977` | No change | 50% (6/12) | 8% | -25 pts |
| `path-parameters-3d89fd` | No change | 42% (5/12) | 0% | -42 pts |
| `response-88dda5` | No change | 58% (7/12) | 25% | -8 pts |
| `new-endpoints-12b54e` | Improved | 58% (7/12) | 0% | -8 pts |
| `cancelling-invites-tally-developer-docs-9f4e83` | No change | 58% (7/12) | 8% | 0 pts |
| `changelog-tally-developer-docs-7c2710` | Improved | 50% (6/12) | 8% | -8 pts |
| `response-09e6a6` | No change | 67% (8/12) | 33% | 0 pts |
| `path-parameters-1e7aef` | No change | 67% (8/12) | 50% | -17 pts |
| `response-7e528e` | No change | 50% (6/12) | 0% | +8 pts |
| `deleting-forms-tally-developer-docs-5e12f4` | No change | 67% (8/12) | 8% | +8 pts |
| `query-parameters-c3b20d` | Improved | 58% (7/12) | 17% | +17 pts |
| `listing-forms-tally-developer-docs-3044bf` | Improved | 75% (9/12) | 8% | -8 pts |
| `example-webhook-event-fb47e8` | No change | 75% (9/12) | 42% | 0 pts |
| `add-a-signing-secret-65a6e1` | No change | 67% (8/12) | 33% | +8 pts |
| `why-people-use-tally-s-webhook-integration-59ebd7` | No change | 42% (5/12) | 25% | 0 pts |
| `request-failure-and-retries-309520` | No change | 58% (7/12) | 0% | -17 pts |
| `add-http-headers-68e75b` | Improved | 92% (11/12) | 8% | +33 pts |
| `how-it-works-f2c0e8` | No change | 83% (10/12) | 33% | +8 pts |
| `example-webhook-event-bcb2a8` | No change | 17% (2/12) | 0% | -8 pts |
| `endpoint-url-ca4f95` | No change | 58% (7/12) | 58% | -17 pts |
| `add-a-webhook-a3e4ac` | No change | 67% (8/12) | 8% | +8 pts |
| `manage-webhooks-d1049a` | No change | 67% (8/12) | 8% | 0 pts |
| `webhooks-free-form-builder-with-webhooks-tally-68094b` | Improved | 58% (7/12) | 33% | +17 pts |

Each score is one graded run, and an unchanged skill can move by a check or two between days. Read a change that small as noise.

## What improved

**input-phone-number-tally-developer-docs-7dbff2** now passes:
- The 'isHidden' parameter must be set according to requirements (false in this case).
- You need to define the 'defaultAnswer' object, as required in the payload.
- The 'defaultCountryCode' parameter should be included in the block's properties.
- The block type must be 'INPUT_PHONE_NUMBER' as specified in the documentation.

**authorizations-bc7ea4** now passes:
- Authorization is a required header.
- Authorization is a required header.
- Authorization is specified as a required header.

**removing-users-tally-developer-docs-51640b** now passes:
- The endpoint requires the URL format: https://api.tally.so/organizations/{organizationId}/users/{userId}.
- An Authorization header with a Bearer token is needed for the request.
- The endpoint structure includes the organizationId and userId in the URL.
- The Authorization header must contain a Bearer token for proper authentication.
- The DELETE method is a mandatory component of this API call.

**response-6aa5c7** now passes:
- The response code specified is 204, indicating successful removal.
- The output states that the user was 'removed from organization successfully', confirming the operation's effect.
- The output includes the necessity of a DELETE request, which is crucial for the process.
- It mentions the necessity of a DELETE request, which is required for removing users.

**creating-invites-tally-developer-docs-0decf7** now passes:
- The request must be sent to the endpoint /organizations/{organizationId}/invites.
- The 'workspaceIds' parameter is an array of strings.
- Invites are created by hitting the POST endpoint /organizations/{organizationId}/invites.

**fetching-forms-tally-developer-docs-d75653** now passes:
- The API endpoint is specified as GET /forms/{formId}.
- The response includes a field for the form 'title'.
- The unit for submission data retention is specified as 'submissionsDataRetentionUnit'.

**path-parameters-7febb1** now passes:
- id is required as a path parameter.
- The process involves sending a DELETE request to the endpoint.
- Both workspaceId and id must be provided to successfully delete the folder.
- It is clearly stated that both workspaceId and id are required parameters for deletion.
- A DELETE request is necessary for this operation.
- The documentation indicates that both parameters must be specified.

**integration-methods-3ab242** now passes:
- You need to pick the method that fits the experience you want to build.
- There are three ways to put a Tally form on your site.

**embeds-e89cdd** now passes:
- The output refers specifically to using an `<iframe>`.
- The output indicates it can be done on any page of your site.
- The output specifies it applies to a webpage.
- The output indicates the form is rendered inline.

**response-c5b29e** now passes:
- The createdAt and updatedAt parameters must be included and are specified as date-time formatted strings.
- The documentation confirms that upon successful creation, an 'id' is returned as part of the response.

**add-the-widget-script-f8172d** now passes:
- The API name 'Tally widget script' is included in the document describing integration for popups.
- The documentation confirms that both methods for using it require the Form ID.
- It is mentioned that both methods involve using the Form ID which can be located in the URL of your form.

**response-ca57f9** now passes:
- The dropdown will contain the specified color options.
- The newly created form will return a confirmation containing 'id' and 'name'.
- The form will be created with a dropdown containing three color options.

**1-form-creation-enhancement-5fe7f1** now passes:
- The tool helps understand the context for providing relevant suggestions when creating forms.
- Content analysis is a primary function of TallyBot in enhancing your form suggestions.

**read-an-input-element-1b2e6b** now passes:
- UUIDs are stable for each block in a Tally form (document source).
- Use document.getElementById() to get the underlying input element (document source).
- You must use the UUID as the parameter for document.getElementById() (document source).

**code-injection-tally-developer-docs-de9211** now passes:
- You can read values entered by the respondent.
- You can prefill fields from an API call.
- The JavaScript runs inside the form page itself.
- You need to serve a form via your own custom domain.
- Use the Code injection box of your custom domain settings to paste your code.

**textarea-tally-developer-docs-0afaaf** now passes:
- You need to specify 'minCharacters' in the payload with a numeric value.
- The 'defaultAnswer' object should be included in the payload for providing a default text.
- The payload must include the 'isHidden' property set to true.
- A block must have a 'type' specified as 'TEXTAREA'.
- The block needs to have a unique 'uuid' associated with it.

**events-1b2c22** now passes:
- The events are dispatched as CustomEvent on the window.
- The events are dispatched as CustomEvent.

**tally-formloaded-66a69e** now passes:
- The payload includes the 'formId' parameter for additional information.
- The command 'window.addEventListener' is specified.
- The API name 'Tally.FormLoaded' appears in the solution.
- The use of 'message' as the event type is included.

**tally-formsubmitted-9c60b8** now passes:
- The event name 'Tally.FormSubmitted' is specifically mentioned as the trigger for capture.
- The method to handle the event is demonstrated with 'window.addEventListener' for both embeds and custom domains.
- Each field object has a 'type' property that specifies its data type, such as 'INPUT_TEXT' or 'MULTIPLE_CHOICE'.

**request-e07ec5** now passes:
- The request must be sent to the '/forms' endpoint.
- The payload must include a 'status' key with the value 'PUBLISHED'.
- Each block in the payload requires a unique 'uuid'.
- Each block requires a unique 'uuid' to be functioning properly.

**prerequisites-bd9204** now passes:
- A Tally account is listed as a prerequisite.
- An API key is required to use the Tally API.
- You need an existing form to interact with the API.

**heading-2-tally-developer-docs-18cb2d** now passes:
- groupType must also be 'HEADING_2'.
- The payload must include 'html' as a string.
- The combination of isHidden being true allows you to hide the block.

**form-title-tally-developer-docs-8c61dd** now passes:
- The block requires a valid `type`, which can only be `FORM_TITLE`.
- You must set the `type` of the block to `FORM_TITLE`.

**option-2-api-key-d6ead1** now passes:
- The requirement to include the API key in the Authorization header is clearly indicated.
- The specific format for the API key provided is 'Authorization: Bearer your_api_key'.

**captcha-tally-developer-docs-55b5c7** now passes:
- The block's `type` must be set to `CAPTCHA`.
- You need a unique `uuid` for the block.
- The `payload` is required for the CAPTCHA block to function.
- The block type must always be `CAPTCHA` to ensure it's recognized for bot protection.
- You must include the `payload` for the CAPTCHA block type.
- The `type` must be `CAPTCHA` to create the right block.
- The `payload` must be defined for the CAPTCHA block to work.
- The `type` of the block must be `CAPTCHA`, or it won’t function correctly.

**mcp-server-tally-developer-docs-5c7215** now passes:
- It handles configurations.
- It provides maintenance services for applications.
- It provides maintenance support.
- The product is in beta and subject to change.

**what-is-mcp-fea925** now passes:
- The system allows generating forms based on the details you provide.
- The Model Context Protocol (MCP) lets you retrieve forms or submissions only.
- MCP focuses on creating forms and accessing submissions, not modifications.

**fetching-form-submissions-c91450** now passes:
- The assistant adds the date range filter for 'January 2025'.
- The assistant applies the 'status' filter to fetch only completed submissions.
- The assistant utilizes the command to 'fetch submissions for any form'.
- The assistant filters based on 'status' to ensure only finished submissions are retrieved.
- It correctly interprets the date range starting from 'January 2025'.

**response-ebbe02** now passes:
- The response returns a 'createdAt' field which is a string in date-time format.
- The response must also include the 'isEnabled' field which is a boolean.
- The response includes 'eventTypes' which are an array of enums of type string.
- There should be an 'eventTypes' array that includes 'FORM_RESPONSE'.
- The 'id' should be a string present in the response.

**updating-webhooks-tally-developer-docs-f4e09b** now passes:
- The URL format must include the webhookId.
- You must include the Authorization header with a Bearer token.
- The payload should be sent as a JSON object in the --data parameter.
- The eventTypes parameter should include 'FORM_RESPONSE' as one of the values.

**response-fe77ed** now passes:
- The response includes 'workspaceId' as a required string field.
- The 'isClosed' field must be a boolean.
- The response should include an 'updatedAt' field of type string<date-time.

**response-fe97f4** now passes:
- The field 'email' is required in each invite object.
- 'createdAt' must be in string<date-time> format.

**listing-submissions-tally-developer-docs-214368** now passes:
- Failure to include the token will result in unauthorized access.
- The endpoint used does not allow public access without token authentication.

**query-parameters-b09f06** now passes:
- The default value for the 'limit' parameter is 25.
- The 'limit' parameter has a maximum value of 100.

**response-88581b** now passes:
- The operation to delete a submission requires a DELETE request to the submissions endpoint.
- The documentation logs that a successful deletion will show 'Submission deleted successfully'.
- A successful deletion yields a 204 response code.
- The API confirms the successful deletion with 'Submission deleted successfully'.

**api-keys-tally-developer-docs-50653c** now passes:
- With the key, you will be able to access all of the user’s resources
- You can generate an API key in your account settings
- The API keys section is specifically for managing your keys

**response-2f756e** now passes:
- The response has a status code of 200 indicating success.
- The response's content type is application/json as specified.
- The allowed values for status are `BLANK`, `DRAFT`, or `PUBLISHED`, which must be reflected in the response.

**body-61b185** now passes:
- The 'name' field is required as a string for the patch.
- The 'blocks' parameter can have an array of types including LabelBlock and Heading1Block.
- The request body must be formatted as application/json.

**path-parameters-29e3ab** now passes:
- The formId must be a string.
- The formId is defined as a 'string'.
- The formId must be provided as a path parameter.
- 'formId' is necessary as a path parameter.

**add-the-widget-script-15a300** now passes:
- The Tally widget script must be included only once on any page.
- This script is required for embedding the Tally widget.
- The code must be wrapped in a script tag.

**updating-forms-tally-developer-docs-eca615** now passes:
- This field accepts only a string in HTML format representing the email address.
- The documentation mentions updating respondent email settings within the forms endpoint.
- It is specifically stated that `respondentEmailBody` is required for modifying email body content.

**tally-loadembeds-c1d7b1** now passes:
- The command 'Tally.loadEmbeds()' must be called after the script has loaded.
- You must call 'Tally.loadEmbeds()' after the script has loaded.

**response-2309a0** now passes:
- The specified red color must be #eb4d4b.
- Styling is applicable to the title block of the form.
- The color for the title should be #eb4d4b.

**input-link-tally-developer-docs-560516** now passes:
- The 'defaultAnswer' attribute must be included in the payload.
- The 'uuid' is required for the block.
- The 'payload' is essential and must include attributes such as 'hasDefaultAnswer'.
- The 'type' must be set to 'INPUT_LINK'.

**prerequisites-c78df6** now passes:
- An API key is necessary.
- There must be an existing form with submissions.
- A Tally account is a prerequisite.
- Having an API key is necessary.
- An existing form with submissions is required.

**body-5d8a46** now passes:
- The request type is PATCH, as stated in the documentation.
- The name must be included in the JSON body of the PATCH request.
- The 'name' parameter is required for updating the folder's name.
- The 'name' parameter is explicitly listed as required.

**updating-folders-tally-developer-docs-012fcc** now passes:
- You need to send a PATCH request to update the folder.
- The URL to use is https://api.tally.so/workspaces/{workspaceId}/folders/{id}.

**response-826529** now passes:
- The response contains 'page' and 'limit' fields for pagination.
- The response includes a 'questions' array detailing each question in the form.
- Each submission object includes 'respondentId' to identify who submitted the form.

**response-533fe2** now passes:
- Parameter: page
- Parameter: limit
- Response property: hasMore

**listing-workspaces-tally-developer-docs-7eafaa** now passes:
- It specifies the correct API URL for workspaces.
- Response includes a 'total' attribute for total items
- 'hasMore' indicates if more pages are available
- An Authorization header is required for the request

**response-86ca2e** now passes:
- The response includes 'page', indicating the current page number.
- The response contains 'totalNumberOfEvents', which provides the total number of webhook events.
- The response will have 'events', which is the actual list of webhook events.
- The response includes 'hasMore', which shows if there are additional pages available.
- The response provides 'page' which shows the current page number.
- The response includes 'limit', showing the maximum number of events per page (25).
- The presence of 'hasMore' in the response, indicating if more results are available.

**deprecated-endpoints-3ae542** now passes:
- `GET /me` is listed as a deprecated endpoint.
- The deprecation date is specified as 2025-01-15.
- The version where this deprecation occurs is v0.1.0.
- The deprecation notice is effective from 2025-01-15.
- This change is noted in version v0.1.0.
- The deprecation takes effect on 2025-01-15.
- It is documented under version v0.1.0.
- The deprecation date is stated as 2025-01-15.
- The version reference for this change is v0.1.0.

**changed-endpoints-50c9ee** now passes:
- The response for GET /workspaces now contains a 'folders' array.
- The specific date of the change is June 19, 2026.
- The response for GET /workspaces/{workspaceId} now contains a 'folders' array.
- The update was made in version v0.8.0 on June 19, 2026.
- GET /workspaces/{workspaceId} also refers to the addition of a 'folders' array.

**new-endpoints-12b54e** now passes:
- GET /forms/{formId}/questions is available to get form questions.
- DELETE /organizations/{organizationId}/users/{userId} enables removal of users from the organization.
- GET /webhooks lists the configured webhooks.
- GET /webhooks/{webhookId}/events is intended for listing webhook events.
- POST /webhooks/{webhookId}/events/{eventId} retries specific webhook events.

**changelog-tally-developer-docs-7c2710** now passes:
- The API version can be specified using the 'tally-version' header.
- The documentation mentions a versioning approach based on dates.
- You can check the version by setting the 'tally-version' header.
- The format for specifying the version includes a date, as in 'tally-version: 2025-02-01'.

**query-parameters-c3b20d** now passes:
- Pagination requires specifying both `page` and `limit` to control the output.
- The `workspaceIds` parameter allows filtering forms by specific workspace IDs.
- Pagination still requires the `page` and `limit` parameters to function.
- The `limit` parameter can be set between 1 and 500 for controlling the number of forms returned per page.
- Both `page` and `limit` parameters are necessary for pagination.

**listing-forms-tally-developer-docs-3044bf** now passes:
- The endpoint to use is 'https://api.tally.so/forms'.
- The request method required is GET.
- The Authorization header must include a Bearer token.
- The header needed is 'Authorization: Bearer <token>'.
- You are accessing the endpoint '/forms' to list forms.
- The command includes a GET request to the URL 'https://api.tally.so/forms'.

**add-http-headers-68e75b** now passes:
- It indicates that these headers are sent with each webhook request.
- It indicates that custom headers will be sent with webhook requests.
- It confirms that these headers will be sent with each webhook request.

**webhooks-free-form-builder-with-webhooks-tally-68094b** now passes:
- You must 'Add a signing secret' as part of the webhook setup.
- Adding 'HTTP headers' is optional for further customization.


## Revisions not kept

These revisions did not pass enough more checks, or passed fewer of the held-out ones, so the previous skill stays.

- `request-b14773`
- `versioning-tally-developer-docs-0bb444`
- `input-time-tally-developer-docs-0d2aa2`
- `request-4cac83`
- `label-tally-developer-docs-b26479`
- `input-date-tally-developer-docs-06ea18`
- `example-d6a05e`
- `response-7e484f`
- `path-parameters-d39c2d`
- `file-upload-tally-developer-docs-da199a`
- `authorizations-bc7ea4`
- `response-77fdf5`
- `removing-users-tally-developer-docs-51640b`
- `body-4889ee`
- `response-8b9cec`
- `response-6aa5c7`
- `deleting-workspaces-tally-developer-docs-6c1e09`
- `path-parameters-faec60`
- `response-b6e149`
- `path-parameters-2b1b73`
- `path-parameters-e95fb2`
- `response-2f8e46`
- `updating-workspaces-tally-developer-docs-57cfa0`
- `listing-folders-tally-developer-docs-a2338e`
- `response-dbbacf`
- `body-36100b`
- `path-parameters-19f323`
- `submissions-tally-developer-docs-7a1b55`
- `listing-users-tally-developer-docs-e24722`
- `creating-invites-tally-developer-docs-0decf7`
- `path-parameters-cde966`
- `response-a39c5e`
- `fetching-forms-tally-developer-docs-e0e866`
- `fetching-forms-tally-developer-docs-77ff02`
- `path-parameters-6c1e9d`
- `response-0c4b1e`
- `fetching-submissions-tally-developer-docs-3b6d9a`
- `conditional-logic-tally-developer-docs-7f0320`
- `fetching-forms-tally-developer-docs-d75653`
- `visits-tally-developer-docs-2d0393`
- `response-26ed1e`
- `dimensions-tally-developer-docs-0a750f`
- `response-aa7d70`
- `response-cbfe18`
- `deleting-webhooks-tally-developer-docs-eaf7d0`
- `path-parameters-25d53b`
- `embed-in-react-tally-developer-docs-56ca6f`
- `deleting-folders-tally-developer-docs-f380e4`
- `response-376ac1`
- `embed-in-next-js-tally-developer-docs-b417d2`
- `path-parameters-7febb1`
- `integration-methods-3ab242`
- `examples-162ca3`
- `events-c86b41`
- `code-injection-a9d833`
- `embeds-e89cdd`
- `body-2ae7ef`
- `creating-folders-tally-developer-docs-79a9d4`
- `path-parameters-8f8264`
- `popups-f947dc`
- `reference-341c9a`
- `introduction-tally-developer-docs-841807`
- `response-c5b29e`
- `tally-openpopup-e46df5`
- `tally-closepopup-56c15a`
- `reference-6c620e`
- `events-8d677d`
- `save-page-url-and-query-parameters-9df8aa`
- `add-the-widget-script-f8172d`
- `blocking-tallybot-e61b36`
- `response-ca57f9`
- `what-is-tallybot-018683`
- `request-e35164`
- `using-robots-txt-f56c14`
- `respectful-crawling-1a76ab`
- `what-we-do-5ecfa3`
- `1-form-creation-enhancement-5fe7f1`
- `2-resource-validation-25b20f`
- `request-behavior-e3cc1e`
- `request-d8996a`
- `wait-for-the-dom-fff0eb`
- `set-a-value-on-an-input-element-e3ef07`
- `read-an-input-element-1b2e6b`
- `read-previously-entered-answers-6d131a`
- `code-injection-tally-developer-docs-de9211`
- `events-1b2c22`
- `tally-popupclosed-fe0146`
- `tally-formpageview-25a1be`
- `tally-formloaded-66a69e`
- `tally-formsubmitted-9c60b8`
- `page-break-tally-developer-docs-7f6738`
- `title-tally-developer-docs-6cb06c`
- `response-91e991`
- `prerequisites-bd9204`
- `request-d1e856`
- `matrix-column-tally-developer-docs-5a3fbc`
- `input-email-tally-developer-docs-54e44f`
- `ranking-option-tally-developer-docs-baf784`
- `request-280acf`
- `input-number-tally-developer-docs-d5eea2`
- `matrix-row-tally-developer-docs-700466`
- `heading-2-tally-developer-docs-18cb2d`
- `authentication-94b10b`
- `claude-code-cli-179adb`
- `updating-the-contact-form-4e3835`
- `example-usage-95bdb9`
- `claude-desktop-217806`
- `server-url-3b5429`
- `captcha-tally-developer-docs-55b5c7`
- `listing-forms-74c91d`
- `creating-a-simple-contact-form-e9a7d6`
- `cursor-376099`
- `what-is-mcp-fea925`
- `fetching-form-submissions-c91450`
- `configuring-the-tally-mcp-server-using-oauth-with-6f8b13`
- `heading-1-tally-developer-docs-ad8631`
- `embed-audio-tally-developer-docs-4c3dd8`
- `checkbox-tally-developer-docs-c81622`
- `divider-tally-developer-docs-40cad3`
- `image-tally-developer-docs-0a4c7d`
- `path-parameters-ab8dfe`
- `creating-webhooks-tally-developer-docs-2d3554`
- `body-f4c279`
- `response-ebbe02`
- `response-807bd2`
- `body-711a74`
- `body-49f381`
- `updating-webhooks-tally-developer-docs-f4e09b`
- `creating-forms-tally-developer-docs-ba1b5d`
- `creating-forms-tally-developer-docs-edfe54`
- `creating-forms-tally-developer-docs-48f9d0`
- `response-6de7d7`
- `query-parameters-154027`
- `response-fe97f4`
- `base-url-340824`
- `response-codes-159beb`
- `authentication-efc6a2`
- `listing-webhooks-tally-developer-docs-a8d011`
- `response-ef3a99`
- `listing-submissions-tally-developer-docs-214368`
- `body-a62285`
- `query-parameters-b09f06`
- `creating-workspaces-tally-developer-docs-139b4c`
- `response-c12f90`
- `listing-questions-tally-developer-docs-4ec2a4`
- `deleting-submissions-tally-developer-docs-b47a9e`
- `response-3007ba`
- `path-parameters-f48bf5`
- `response-88581b`
- `creating-an-api-key-f9c7fc`
- `response-c26d74`
- `response-28e7b3`
- `api-keys-tally-developer-docs-50653c`
- `drop-off-tally-developer-docs-bded55`
- `collect-the-respondent-s-ip-address-tally-develope-8fae3b`
- `embed-tally-developer-docs-9e0105`
- `body-61b185`
- `events-fcc5d9`
- `updating-forms-tally-developer-docs-548532`
- `path-parameters-29e3ab`
- `embeds-tally-developer-docs-8f4fac`
- `add-the-widget-script-15a300`
- `updating-forms-tally-developer-docs-eca615`
- `save-page-url-and-query-parameters-e44401`
- `updating-forms-tally-developer-docs-9ff78a`
- `add-an-embed-0d9a88`
- `tally-loadembeds-c1d7b1`
- `response-2309a0`
- `request-4cf9b0`
- `request-e7d902`
- `response-bbfe7b`
- `linear-scale-tally-developer-docs-57355c`
- `prerequisites-c78df6`
- `response-679de4`
- `path-parameters-6ae335`
- `query-parameters-6b7419`
- `body-5d8a46`
- `updating-folders-tally-developer-docs-012fcc`
- `response-369708`
- `request-39d9dc`
- `response-826529`
- `fetching-user-info-tally-developer-docs-17993f`
- `response-2bd0b5`
- `path-parameters-934e66`
- `query-parameters-2ed114`
- `path-parameters-9f83a8`
- `listing-webhook-events-tally-developer-docs-d24245`
- `query-parameters-e9975b`
- `response-533fe2`
- `fetching-workspaces-tally-developer-docs-fbe171`
- `response-86ca2e`
- `path-parameters-1ff451`
- `response-b9c87d`
- `changed-endpoints-0289dd`
- `changed-endpoints-41e9a9`
- `changed-endpoints-c0ec0f`
- `embed-video-tally-developer-docs-b7a75c`
- `changed-endpoints-67d2a0`
- `breaking-changes-b83af0`
- `changed-endpoints-a29133`
- `new-endpoints-5f8977`
- `path-parameters-3d89fd`
- `response-88dda5`
- `new-endpoints-12b54e`
- `cancelling-invites-tally-developer-docs-9f4e83`
- `changelog-tally-developer-docs-7c2710`
- `response-09e6a6`
- `path-parameters-1e7aef`
- `response-7e528e`
- `deleting-forms-tally-developer-docs-5e12f4`
- `query-parameters-c3b20d`
- `listing-forms-tally-developer-docs-3044bf`
- `why-people-use-tally-s-webhook-integration-59ebd7`
- `request-failure-and-retries-309520`
- `add-http-headers-68e75b`
- `example-webhook-event-bcb2a8`
- `endpoint-url-ca4f95`
- `add-a-webhook-a3e4ac`
- `manage-webhooks-d1049a`
- `webhooks-free-form-builder-with-webhooks-tally-68094b`

## Pages not in any skill

Run `npm run plan -- --replan` to plan skills that include them.

- https://developers.tally.so/
- https://developers.tally.so/api-reference/endpoint/workspaces/folders/post
- https://developers.tally.so/api-reference/endpoint/workspaces/folders/patch
- https://developers.tally.so/api-reference/endpoint/forms/analytics/dimensions
- https://developers.tally.so/api-reference/endpoint/forms/analytics/submissions
- https://developers.tally.so/api-reference/endpoint/forms/analytics/visits
- https://developers.tally.so/api-reference/endpoint/workspaces/folders/list
- https://developers.tally.so/api-reference/endpoint/workspaces/folders/delete
- https://developers.tally.so/api-reference/endpoint/forms/analytics/drop-off
- https://developers.tally.so/api-reference/endpoint/forms/analytics/metrics
- https://developers.tally.so/documentation/tally-bot
- https://developers.tally.so/documentation/creating-a-dropdown
- https://developers.tally.so/documentation/creating-a-mention
- https://developers.tally.so/documentation/fetching-form-submissions
- https://developers.tally.so/documentation/creating-a-form-with-settings
- https://developers.tally.so/documentation/creating-a-contact-form
- https://developers.tally.so/widgets/popups
- https://developers.tally.so/widgets/examples/nextjs
- https://developers.tally.so/documentation/adding-blocks-to-a-form
- https://developers.tally.so/widgets/events
- https://developers.tally.so/documentation/styling-title-blocks
- https://developers.tally.so/widgets/examples/collect-ip-address
- https://developers.tally.so/widgets/code-injection
- https://developers.tally.so/widgets/examples/react
- https://developers.tally.so/blocks-reference/conditional-logic
- and 73 more
