# JSON Schema and API requests

Part of Corner cases by Baltor.

JSON Schema 2020-12 conformance test groups, and API request cases that each change one field of a valid request and expect exactly one validation error.

## What to watch for

- format only annotates in JSON Schema 2020-12 unless a validator is asked to assert it.
- Integers above 2^53 lose precision as JavaScript numbers.
- A pattern in JSON Schema follows ECMA-262 regular expressions, not every engine's dialect.

## Components

- [JSON Schema 2020-12 conformance test groups for the format keyword](https://baltor.ai/components/json-schema-2020-12-conformance-test-groups-for-the-form-496a0f05): JSON Schema 2020-12 conformance test groups for the format keyword: schemas with valid and invalid instances: 19 rows with a JSON Schema, a checked loader and tests. Name `format.json`, licence MIT, 8 files.
- [JSON Schema 2020-12 conformance test groups for the pattern keyword](https://baltor.ai/components/json-schema-2020-12-conformance-test-groups-for-the-patt-d3830f76): JSON Schema 2020-12 conformance test groups for the pattern keyword: schemas with valid and invalid instances: 3 rows with a JSON Schema, a checked loader and tests. Name `pattern.json`, licence MIT, 8 files.
- [JSON Schema 2020-12 conformance test groups for the enum keyword](https://baltor.ai/components/json-schema-2020-12-conformance-test-groups-for-the-enum-167525cb): JSON Schema 2020-12 conformance test groups for the enum keyword: schemas with valid and invalid instances: 16 rows with a JSON Schema, a checked loader and tests. Name `enum.json`, licence MIT, 8 files.
- [JSON Schema 2020-12 conformance test groups for the required keyword](https://baltor.ai/components/json-schema-2020-12-conformance-test-groups-for-the-requ-461d8118): JSON Schema 2020-12 conformance test groups for the required keyword: schemas with valid and invalid instances: 5 rows with a JSON Schema, a checked loader and tests. Name `required.json`, licence MIT, 8 files.
- [JSON Schema 2020-12 conformance test groups for the type keyword](https://baltor.ai/components/json-schema-2020-12-conformance-test-groups-for-the-type-7cea8f2f): JSON Schema 2020-12 conformance test groups for the type keyword: schemas with valid and invalid instances: 11 rows with a JSON Schema, a checked loader and tests. Name `type.json`, licence MIT, 8 files.
- [JSON Schema 2020-12 conformance test groups for the minimum keyword](https://baltor.ai/components/json-schema-2020-12-conformance-test-groups-for-the-mini-131483a3): JSON Schema 2020-12 conformance test groups for the minimum keyword: schemas with valid and invalid instances: 2 rows with a JSON Schema, a checked loader and tests. Name `minimum.json`, licence MIT, 8 files.
- [JSON Schema 2020-12 conformance test groups for the multipleOf keyword](https://baltor.ai/components/json-schema-2020-12-conformance-test-groups-for-the-mult-ac41c42f): JSON Schema 2020-12 conformance test groups for the multipleOf keyword: schemas with valid and invalid instances: 5 rows with a JSON Schema, a checked loader and tests. Name `multipleOf.json`, licence MIT, 8 files.
- [JSON Schema 2020-12 conformance test groups for the uniqueItems keyword](https://baltor.ai/components/json-schema-2020-12-conformance-test-groups-for-the-uniq-fb215285): JSON Schema 2020-12 conformance test groups for the uniqueItems keyword: schemas with valid and invalid instances: 6 rows with a JSON Schema, a checked loader and tests. Name `uniqueItems.json`, licence MIT, 8 files.
- [JSON Schema 2020-12 conformance test groups for the oneOf keyword](https://baltor.ai/components/json-schema-2020-12-conformance-test-groups-for-the-oneo-f2dc25dc): JSON Schema 2020-12 conformance test groups for the oneOf keyword: schemas with valid and invalid instances: 11 rows with a JSON Schema, a checked loader and tests. Name `oneOf.json`, licence MIT, 8 files.
- [JSON Schema 2020-12 conformance test groups for the if-then-else keyword](https://baltor.ai/components/json-schema-2020-12-conformance-test-groups-for-the-if-t-27139fdc): JSON Schema 2020-12 conformance test groups for the if-then-else keyword: schemas with valid and invalid instances: 12 rows with a JSON Schema, a checked loader and tests. Name `if-then-else.json`, licence MIT, 8 files.
- [JSON Schema 2020-12 optional test groups for bignum](https://baltor.ai/components/json-schema-2020-12-optional-test-groups-for-bignum-2ada3f3e): JSON Schema 2020-12 optional test groups for bignum: schemas with valid and invalid instances: 7 rows with a JSON Schema, a checked loader and tests. Name `bignum.json`, licence MIT, 8 files.
- [JSON Schema 2020-12 optional regex format tests](https://baltor.ai/components/json-schema-2020-12-optional-regex-format-tests-af571ab6): JSON Schema 2020-12 optional regex format tests: ECMA-262 regular expression edge cases: 6 rows with a JSON Schema, a checked loader and tests. Name `ecmascript-regex.json`, licence MIT, 8 files.
- [JSON Schema 2020-12 tests for regexes with non-BMP characters](https://baltor.ai/components/json-schema-2020-12-tests-for-regexes-with-non-bmp-chara-e6bb7443): JSON Schema 2020-12 optional tests for regexes with non-BMP (astral) characters: 2 rows with a JSON Schema, a checked loader and tests. Name `non-bmp-regex.json`, licence MIT, 8 files.
- [ListCodeReviews request cases (codeguru-reviewer)](https://baltor.ai/components/listcodereviews-request-cases-codeguru-reviewer-628f349f): Isolated constraint checks for GET /codereviews#Type parameters; 30 case jobs. Name `GET /codereviews#Type parameters`, licence MIT AND Apache-2.0, 42 files.
- [CreateSipRule request cases (chime)](https://baltor.ai/components/createsiprule-request-cases-chime-01012f6d): Isolated constraint checks for POST /sip-rules request; 21 case jobs. Name `POST /sip-rules request`, licence MIT AND Apache-2.0, 34 files.
- [SearchProfiles request cases (customer-profiles)](https://baltor.ai/components/searchprofiles-request-cases-customer-profiles-02d5984f): Isolated constraint checks for POST /domains/{DomainName}/profiles/search request; 21 case jobs. Name `POST /domains/{DomainName}/profiles/search request`, licence MIT AND Apache-2.0, 34 files.
- [ListContacts request cases (groundstation)](https://baltor.ai/components/listcontacts-request-cases-groundstation-7b6b542a): Isolated constraint checks for POST /contacts request; 17 case jobs. Name `POST /contacts request`, licence MIT AND Apache-2.0, 30 files.
- [ListAddons request cases (eks)](https://baltor.ai/components/listaddons-request-cases-eks-dd92054d): Isolated constraint checks for GET /clusters/{name}/addons parameters; 20 case jobs. Name `GET /clusters/{name}/addons parameters`, licence MIT AND Apache-2.0, 33 files.

Your agent downloads these through Baltor with Pro, $49 a month: https://baltor.ai/get-started
