├── .editorconfig ├── .github ├── .dependabot.yml ├── CODEOWNERS └── workflows │ └── release.yml ├── .gitignore ├── .releaserc.yml ├── .vscode ├── extensions.json └── settings.json ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE.txt ├── README.md ├── _config.yml ├── rulesets ├── .eslintignore ├── .estlintrc ├── jest.config.js ├── package-lock.json ├── package.json ├── src │ ├── .spectral.yml │ ├── authentication.ruleset.yml │ ├── collections.ruleset.yml │ ├── errors.ruleset.yml │ ├── naming.ruleset.yml │ ├── request-response.ruleset.yml │ ├── root.ruleset.yml │ ├── serialization.ruleset.yml │ ├── specification.ruleset.yml │ ├── url-structure.ruleset.yml │ └── webhooks.ruleset.yml ├── test │ ├── authentication │ │ └── sps-no-http-basic.test.js │ ├── collections │ │ ├── sps-collection-missing-results-array.test.js │ │ ├── sps-disallow-resource-identifier-filtering.test.js │ │ ├── sps-filtering-only-get-requests.test.js │ │ ├── sps-hybird-filtering-exists-with-root-filter.test.js │ │ ├── sps-missing-pagination-query-parameters.test.js │ │ ├── sps-no-collection-paging-capability.test.js │ │ ├── sps-post-request-body-missing-paging-object.test.js │ │ ├── sps-sorting-parameters-only-get-requests.test.js │ │ └── sps-unreasonable-query-parameters-limit.test.js │ ├── errors │ │ └── sps-unknown-error-format.test.js │ ├── harness │ │ └── spectral-test-harness.js │ ├── naming │ │ ├── sps-camel-case-properties.test.js │ │ ├── sps-disallowed-boolean-prefixes.test.js │ │ ├── sps-disallowed-prepositions.test.js │ │ ├── sps-fingerprint-naming.test.js │ │ ├── sps-invalid-createdby-type.test.js │ │ ├── sps-invalid-createddatetime-type.test.js │ │ ├── sps-invalid-deletedby-type.test.js │ │ ├── sps-invalid-description-type.test.js │ │ ├── sps-invalid-fingerprint-type.test.js │ │ ├── sps-invalid-id-type.test.js │ │ ├── sps-invalid-modifiedby-type.test.js │ │ ├── sps-invalid-modifieddatetime-type.test.js │ │ ├── sps-invalid-name-type.test.js │ │ ├── sps-invalid-orgid-type.test.js │ │ ├── sps-invalid-ref-type.test.js │ │ ├── sps-invalid-requestid-type.test.js │ │ ├── sps-mandate-abbreviations-identifier.test.js │ │ ├── sps-mandate-abbreviations-organization.test.js │ │ ├── sps-no-keyword-conflicts.test.js │ │ ├── sps-ref-property-name.test.js │ │ └── sps-ref-schema.test.js │ ├── request-response │ │ ├── sps-authorization-missing.test.js │ │ ├── sps-default-content-language.test.js │ │ ├── sps-invalid-custom-header-format.test.js │ │ ├── sps-invalid-delete-response-code.test.js │ │ ├── sps-invalid-get-response-code.test.js │ │ ├── sps-invalid-head-response-code.test.js │ │ ├── sps-invalid-http-method.test.js │ │ ├── sps-invalid-location-header.test.js │ │ ├── sps-invalid-mime-type.test.js │ │ ├── sps-invalid-options-response-code.test.js │ │ ├── sps-invalid-patch-response-code.test.js │ │ ├── sps-invalid-post-response-code.test.js │ │ ├── sps-invalid-put-response-code.test.js │ │ ├── sps-invalid-response-body.test.js │ │ ├── sps-invalid-status-code.test.js │ │ ├── sps-missing-500-response.test.js │ │ ├── sps-no-explicit-headers.test.js │ │ ├── sps-no-resource-extensions.test.js │ │ ├── sps-request-delete-no-body.test.js │ │ ├── sps-request-get-no-body.test.js │ │ ├── sps-request-head-no-body.test.js │ │ ├── sps-request-options-no-body.test.js │ │ ├── sps-request-patch-missing-body.test.js │ │ ├── sps-response-delete-no-body.test.js │ │ ├── sps-response-get-missing-body.test.js │ │ ├── sps-response-get-missing-success-code.test.js │ │ ├── sps-response-head-no-body.test.js │ │ ├── sps-response-options-no-body.test.js │ │ └── sps-sensitive-data-in-headers.test.js │ ├── root.openapi.yml │ ├── root.test.js │ ├── root │ │ └── info-contact.test.js │ ├── serialization │ │ ├── sps-no-numeric-ids.test.js │ │ └── sps-request-support-json.test.js │ ├── specification │ │ ├── sps-response-names-pascal-case.test.js │ │ ├── sps-schema-names-pascal-case.test.js │ │ └── sps-semver.test.js │ ├── url-structure │ │ ├── sps-hosts-https-only.test.js │ │ ├── sps-hosts-lowercase.test.js │ │ ├── sps-hosts-no-port.test.js │ │ ├── sps-hosts-spscommerce-domain.test.js │ │ ├── sps-limit-path-size.test.js │ │ ├── sps-path-no-environment.test.js │ │ ├── sps-paths-empty-segments.test.js │ │ ├── sps-paths-expose-extension.test.js │ │ ├── sps-paths-expose-technology.test.js │ │ ├── sps-paths-kebab-case.test.js │ │ ├── sps-paths-limit-path-parameters.test.js │ │ ├── sps-paths-limit-sub-resources.test.js │ │ ├── sps-paths-no-special-characters.test.js │ │ ├── sps-paths-params-camel-case.test.js │ │ ├── sps-paths-trailing-slash.test.js │ │ ├── sps-paths-with-api.test.js │ │ ├── sps-paths-with-http-methods.test.js │ │ ├── sps-query-params-camel-case.test.js │ │ ├── sps-query-params-characters.test.js │ │ ├── sps-query-params-no-api-keys.test.js │ │ ├── sps-query-params-not-in-path.test.js │ │ └── sps-query-params-not-required.test.js │ └── webhooks │ │ ├── sps-webhooks-internal.test.js │ │ ├── sps-webhooks-path.test.js │ │ └── sps-webhooks-post.test.js └── tsconfig.json ├── spectralRulesetSchema.json ├── sps-api-standards.spectral.yml └── standards ├── authentication.md ├── bulk.md ├── collections.md ├── errors.md ├── naming.md ├── request-response.md ├── serialization.md ├── url-structure.md └── webhooks.md /.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/.editorconfig -------------------------------------------------------------------------------- /.github/.dependabot.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/.github/.dependabot.yml -------------------------------------------------------------------------------- /.github/CODEOWNERS: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/.github/CODEOWNERS -------------------------------------------------------------------------------- /.github/workflows/release.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/.github/workflows/release.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | 3 | -------------------------------------------------------------------------------- /.releaserc.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/.releaserc.yml -------------------------------------------------------------------------------- /.vscode/extensions.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/.vscode/extensions.json -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/.vscode/settings.json -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/CODE_OF_CONDUCT.md -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /LICENSE.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/LICENSE.txt -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/README.md -------------------------------------------------------------------------------- /_config.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/_config.yml -------------------------------------------------------------------------------- /rulesets/.eslintignore: -------------------------------------------------------------------------------- 1 | node_modules -------------------------------------------------------------------------------- /rulesets/.estlintrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/.estlintrc -------------------------------------------------------------------------------- /rulesets/jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/jest.config.js -------------------------------------------------------------------------------- /rulesets/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/package-lock.json -------------------------------------------------------------------------------- /rulesets/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/package.json -------------------------------------------------------------------------------- /rulesets/src/.spectral.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/src/.spectral.yml -------------------------------------------------------------------------------- /rulesets/src/authentication.ruleset.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/src/authentication.ruleset.yml -------------------------------------------------------------------------------- /rulesets/src/collections.ruleset.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/src/collections.ruleset.yml -------------------------------------------------------------------------------- /rulesets/src/errors.ruleset.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/src/errors.ruleset.yml -------------------------------------------------------------------------------- /rulesets/src/naming.ruleset.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/src/naming.ruleset.yml -------------------------------------------------------------------------------- /rulesets/src/request-response.ruleset.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/src/request-response.ruleset.yml -------------------------------------------------------------------------------- /rulesets/src/root.ruleset.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/src/root.ruleset.yml -------------------------------------------------------------------------------- /rulesets/src/serialization.ruleset.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/src/serialization.ruleset.yml -------------------------------------------------------------------------------- /rulesets/src/specification.ruleset.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/src/specification.ruleset.yml -------------------------------------------------------------------------------- /rulesets/src/url-structure.ruleset.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/src/url-structure.ruleset.yml -------------------------------------------------------------------------------- /rulesets/src/webhooks.ruleset.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/src/webhooks.ruleset.yml -------------------------------------------------------------------------------- /rulesets/test/authentication/sps-no-http-basic.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/authentication/sps-no-http-basic.test.js -------------------------------------------------------------------------------- /rulesets/test/collections/sps-collection-missing-results-array.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/collections/sps-collection-missing-results-array.test.js -------------------------------------------------------------------------------- /rulesets/test/collections/sps-disallow-resource-identifier-filtering.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/collections/sps-disallow-resource-identifier-filtering.test.js -------------------------------------------------------------------------------- /rulesets/test/collections/sps-filtering-only-get-requests.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/collections/sps-filtering-only-get-requests.test.js -------------------------------------------------------------------------------- /rulesets/test/collections/sps-hybird-filtering-exists-with-root-filter.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/collections/sps-hybird-filtering-exists-with-root-filter.test.js -------------------------------------------------------------------------------- /rulesets/test/collections/sps-missing-pagination-query-parameters.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/collections/sps-missing-pagination-query-parameters.test.js -------------------------------------------------------------------------------- /rulesets/test/collections/sps-no-collection-paging-capability.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/collections/sps-no-collection-paging-capability.test.js -------------------------------------------------------------------------------- /rulesets/test/collections/sps-post-request-body-missing-paging-object.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/collections/sps-post-request-body-missing-paging-object.test.js -------------------------------------------------------------------------------- /rulesets/test/collections/sps-sorting-parameters-only-get-requests.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/collections/sps-sorting-parameters-only-get-requests.test.js -------------------------------------------------------------------------------- /rulesets/test/collections/sps-unreasonable-query-parameters-limit.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/collections/sps-unreasonable-query-parameters-limit.test.js -------------------------------------------------------------------------------- /rulesets/test/errors/sps-unknown-error-format.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/errors/sps-unknown-error-format.test.js -------------------------------------------------------------------------------- /rulesets/test/harness/spectral-test-harness.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/harness/spectral-test-harness.js -------------------------------------------------------------------------------- /rulesets/test/naming/sps-camel-case-properties.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/naming/sps-camel-case-properties.test.js -------------------------------------------------------------------------------- /rulesets/test/naming/sps-disallowed-boolean-prefixes.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/naming/sps-disallowed-boolean-prefixes.test.js -------------------------------------------------------------------------------- /rulesets/test/naming/sps-disallowed-prepositions.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/naming/sps-disallowed-prepositions.test.js -------------------------------------------------------------------------------- /rulesets/test/naming/sps-fingerprint-naming.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/naming/sps-fingerprint-naming.test.js -------------------------------------------------------------------------------- /rulesets/test/naming/sps-invalid-createdby-type.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/naming/sps-invalid-createdby-type.test.js -------------------------------------------------------------------------------- /rulesets/test/naming/sps-invalid-createddatetime-type.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/naming/sps-invalid-createddatetime-type.test.js -------------------------------------------------------------------------------- /rulesets/test/naming/sps-invalid-deletedby-type.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/naming/sps-invalid-deletedby-type.test.js -------------------------------------------------------------------------------- /rulesets/test/naming/sps-invalid-description-type.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/naming/sps-invalid-description-type.test.js -------------------------------------------------------------------------------- /rulesets/test/naming/sps-invalid-fingerprint-type.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/naming/sps-invalid-fingerprint-type.test.js -------------------------------------------------------------------------------- /rulesets/test/naming/sps-invalid-id-type.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/naming/sps-invalid-id-type.test.js -------------------------------------------------------------------------------- /rulesets/test/naming/sps-invalid-modifiedby-type.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/naming/sps-invalid-modifiedby-type.test.js -------------------------------------------------------------------------------- /rulesets/test/naming/sps-invalid-modifieddatetime-type.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/naming/sps-invalid-modifieddatetime-type.test.js -------------------------------------------------------------------------------- /rulesets/test/naming/sps-invalid-name-type.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/naming/sps-invalid-name-type.test.js -------------------------------------------------------------------------------- /rulesets/test/naming/sps-invalid-orgid-type.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/naming/sps-invalid-orgid-type.test.js -------------------------------------------------------------------------------- /rulesets/test/naming/sps-invalid-ref-type.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/naming/sps-invalid-ref-type.test.js -------------------------------------------------------------------------------- /rulesets/test/naming/sps-invalid-requestid-type.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/naming/sps-invalid-requestid-type.test.js -------------------------------------------------------------------------------- /rulesets/test/naming/sps-mandate-abbreviations-identifier.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/naming/sps-mandate-abbreviations-identifier.test.js -------------------------------------------------------------------------------- /rulesets/test/naming/sps-mandate-abbreviations-organization.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/naming/sps-mandate-abbreviations-organization.test.js -------------------------------------------------------------------------------- /rulesets/test/naming/sps-no-keyword-conflicts.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/naming/sps-no-keyword-conflicts.test.js -------------------------------------------------------------------------------- /rulesets/test/naming/sps-ref-property-name.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/naming/sps-ref-property-name.test.js -------------------------------------------------------------------------------- /rulesets/test/naming/sps-ref-schema.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/naming/sps-ref-schema.test.js -------------------------------------------------------------------------------- /rulesets/test/request-response/sps-authorization-missing.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/request-response/sps-authorization-missing.test.js -------------------------------------------------------------------------------- /rulesets/test/request-response/sps-default-content-language.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/request-response/sps-default-content-language.test.js -------------------------------------------------------------------------------- /rulesets/test/request-response/sps-invalid-custom-header-format.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/request-response/sps-invalid-custom-header-format.test.js -------------------------------------------------------------------------------- /rulesets/test/request-response/sps-invalid-delete-response-code.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/request-response/sps-invalid-delete-response-code.test.js -------------------------------------------------------------------------------- /rulesets/test/request-response/sps-invalid-get-response-code.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/request-response/sps-invalid-get-response-code.test.js -------------------------------------------------------------------------------- /rulesets/test/request-response/sps-invalid-head-response-code.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/request-response/sps-invalid-head-response-code.test.js -------------------------------------------------------------------------------- /rulesets/test/request-response/sps-invalid-http-method.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/request-response/sps-invalid-http-method.test.js -------------------------------------------------------------------------------- /rulesets/test/request-response/sps-invalid-location-header.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/request-response/sps-invalid-location-header.test.js -------------------------------------------------------------------------------- /rulesets/test/request-response/sps-invalid-mime-type.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/request-response/sps-invalid-mime-type.test.js -------------------------------------------------------------------------------- /rulesets/test/request-response/sps-invalid-options-response-code.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/request-response/sps-invalid-options-response-code.test.js -------------------------------------------------------------------------------- /rulesets/test/request-response/sps-invalid-patch-response-code.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/request-response/sps-invalid-patch-response-code.test.js -------------------------------------------------------------------------------- /rulesets/test/request-response/sps-invalid-post-response-code.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/request-response/sps-invalid-post-response-code.test.js -------------------------------------------------------------------------------- /rulesets/test/request-response/sps-invalid-put-response-code.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/request-response/sps-invalid-put-response-code.test.js -------------------------------------------------------------------------------- /rulesets/test/request-response/sps-invalid-response-body.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/request-response/sps-invalid-response-body.test.js -------------------------------------------------------------------------------- /rulesets/test/request-response/sps-invalid-status-code.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/request-response/sps-invalid-status-code.test.js -------------------------------------------------------------------------------- /rulesets/test/request-response/sps-missing-500-response.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/request-response/sps-missing-500-response.test.js -------------------------------------------------------------------------------- /rulesets/test/request-response/sps-no-explicit-headers.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/request-response/sps-no-explicit-headers.test.js -------------------------------------------------------------------------------- /rulesets/test/request-response/sps-no-resource-extensions.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/request-response/sps-no-resource-extensions.test.js -------------------------------------------------------------------------------- /rulesets/test/request-response/sps-request-delete-no-body.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/request-response/sps-request-delete-no-body.test.js -------------------------------------------------------------------------------- /rulesets/test/request-response/sps-request-get-no-body.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/request-response/sps-request-get-no-body.test.js -------------------------------------------------------------------------------- /rulesets/test/request-response/sps-request-head-no-body.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/request-response/sps-request-head-no-body.test.js -------------------------------------------------------------------------------- /rulesets/test/request-response/sps-request-options-no-body.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/request-response/sps-request-options-no-body.test.js -------------------------------------------------------------------------------- /rulesets/test/request-response/sps-request-patch-missing-body.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/request-response/sps-request-patch-missing-body.test.js -------------------------------------------------------------------------------- /rulesets/test/request-response/sps-response-delete-no-body.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/request-response/sps-response-delete-no-body.test.js -------------------------------------------------------------------------------- /rulesets/test/request-response/sps-response-get-missing-body.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/request-response/sps-response-get-missing-body.test.js -------------------------------------------------------------------------------- /rulesets/test/request-response/sps-response-get-missing-success-code.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/request-response/sps-response-get-missing-success-code.test.js -------------------------------------------------------------------------------- /rulesets/test/request-response/sps-response-head-no-body.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/request-response/sps-response-head-no-body.test.js -------------------------------------------------------------------------------- /rulesets/test/request-response/sps-response-options-no-body.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/request-response/sps-response-options-no-body.test.js -------------------------------------------------------------------------------- /rulesets/test/request-response/sps-sensitive-data-in-headers.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/request-response/sps-sensitive-data-in-headers.test.js -------------------------------------------------------------------------------- /rulesets/test/root.openapi.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/root.openapi.yml -------------------------------------------------------------------------------- /rulesets/test/root.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/root.test.js -------------------------------------------------------------------------------- /rulesets/test/root/info-contact.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/root/info-contact.test.js -------------------------------------------------------------------------------- /rulesets/test/serialization/sps-no-numeric-ids.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/serialization/sps-no-numeric-ids.test.js -------------------------------------------------------------------------------- /rulesets/test/serialization/sps-request-support-json.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/serialization/sps-request-support-json.test.js -------------------------------------------------------------------------------- /rulesets/test/specification/sps-response-names-pascal-case.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/specification/sps-response-names-pascal-case.test.js -------------------------------------------------------------------------------- /rulesets/test/specification/sps-schema-names-pascal-case.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/specification/sps-schema-names-pascal-case.test.js -------------------------------------------------------------------------------- /rulesets/test/specification/sps-semver.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/specification/sps-semver.test.js -------------------------------------------------------------------------------- /rulesets/test/url-structure/sps-hosts-https-only.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/url-structure/sps-hosts-https-only.test.js -------------------------------------------------------------------------------- /rulesets/test/url-structure/sps-hosts-lowercase.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/url-structure/sps-hosts-lowercase.test.js -------------------------------------------------------------------------------- /rulesets/test/url-structure/sps-hosts-no-port.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/url-structure/sps-hosts-no-port.test.js -------------------------------------------------------------------------------- /rulesets/test/url-structure/sps-hosts-spscommerce-domain.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/url-structure/sps-hosts-spscommerce-domain.test.js -------------------------------------------------------------------------------- /rulesets/test/url-structure/sps-limit-path-size.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/url-structure/sps-limit-path-size.test.js -------------------------------------------------------------------------------- /rulesets/test/url-structure/sps-path-no-environment.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/url-structure/sps-path-no-environment.test.js -------------------------------------------------------------------------------- /rulesets/test/url-structure/sps-paths-empty-segments.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/url-structure/sps-paths-empty-segments.test.js -------------------------------------------------------------------------------- /rulesets/test/url-structure/sps-paths-expose-extension.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/url-structure/sps-paths-expose-extension.test.js -------------------------------------------------------------------------------- /rulesets/test/url-structure/sps-paths-expose-technology.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/url-structure/sps-paths-expose-technology.test.js -------------------------------------------------------------------------------- /rulesets/test/url-structure/sps-paths-kebab-case.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/url-structure/sps-paths-kebab-case.test.js -------------------------------------------------------------------------------- /rulesets/test/url-structure/sps-paths-limit-path-parameters.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/url-structure/sps-paths-limit-path-parameters.test.js -------------------------------------------------------------------------------- /rulesets/test/url-structure/sps-paths-limit-sub-resources.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/url-structure/sps-paths-limit-sub-resources.test.js -------------------------------------------------------------------------------- /rulesets/test/url-structure/sps-paths-no-special-characters.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/url-structure/sps-paths-no-special-characters.test.js -------------------------------------------------------------------------------- /rulesets/test/url-structure/sps-paths-params-camel-case.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/url-structure/sps-paths-params-camel-case.test.js -------------------------------------------------------------------------------- /rulesets/test/url-structure/sps-paths-trailing-slash.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/url-structure/sps-paths-trailing-slash.test.js -------------------------------------------------------------------------------- /rulesets/test/url-structure/sps-paths-with-api.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/url-structure/sps-paths-with-api.test.js -------------------------------------------------------------------------------- /rulesets/test/url-structure/sps-paths-with-http-methods.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/url-structure/sps-paths-with-http-methods.test.js -------------------------------------------------------------------------------- /rulesets/test/url-structure/sps-query-params-camel-case.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/url-structure/sps-query-params-camel-case.test.js -------------------------------------------------------------------------------- /rulesets/test/url-structure/sps-query-params-characters.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/url-structure/sps-query-params-characters.test.js -------------------------------------------------------------------------------- /rulesets/test/url-structure/sps-query-params-no-api-keys.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/url-structure/sps-query-params-no-api-keys.test.js -------------------------------------------------------------------------------- /rulesets/test/url-structure/sps-query-params-not-in-path.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/url-structure/sps-query-params-not-in-path.test.js -------------------------------------------------------------------------------- /rulesets/test/url-structure/sps-query-params-not-required.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/url-structure/sps-query-params-not-required.test.js -------------------------------------------------------------------------------- /rulesets/test/webhooks/sps-webhooks-internal.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/webhooks/sps-webhooks-internal.test.js -------------------------------------------------------------------------------- /rulesets/test/webhooks/sps-webhooks-path.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/webhooks/sps-webhooks-path.test.js -------------------------------------------------------------------------------- /rulesets/test/webhooks/sps-webhooks-post.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/test/webhooks/sps-webhooks-post.test.js -------------------------------------------------------------------------------- /rulesets/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/rulesets/tsconfig.json -------------------------------------------------------------------------------- /spectralRulesetSchema.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/spectralRulesetSchema.json -------------------------------------------------------------------------------- /sps-api-standards.spectral.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/sps-api-standards.spectral.yml -------------------------------------------------------------------------------- /standards/authentication.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/standards/authentication.md -------------------------------------------------------------------------------- /standards/bulk.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/standards/bulk.md -------------------------------------------------------------------------------- /standards/collections.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/standards/collections.md -------------------------------------------------------------------------------- /standards/errors.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/standards/errors.md -------------------------------------------------------------------------------- /standards/naming.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/standards/naming.md -------------------------------------------------------------------------------- /standards/request-response.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/standards/request-response.md -------------------------------------------------------------------------------- /standards/serialization.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/standards/serialization.md -------------------------------------------------------------------------------- /standards/url-structure.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/standards/url-structure.md -------------------------------------------------------------------------------- /standards/webhooks.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SPSCommerce/sps-api-standards/HEAD/standards/webhooks.md --------------------------------------------------------------------------------