Skip to content

Latest commit

 

History

History
98 lines (93 loc) · 7.96 KB

File metadata and controls

98 lines (93 loc) · 7.96 KB

* This report was auto-generated by graphql-http

GraphQL over HTTP audit report

  • 79 audits in total
  • 77 pass
  • ⚠️ 2 warnings (optional)

Passing

  1. SHOULD accept application/graphql-response+json and match the content-type
  2. MUST accept application/json and match the content-type
  3. MUST use utf-8 encoding when responding
  4. MUST accept utf-8 encoding
  5. MUST assume utf-8 if encoding is unspecified
  6. MUST accept POST requests
  7. MAY accept application/x-www-form-urlencoded formatted GET requests
  8. MAY NOT allow executing mutations on GET requests
  9. SHOULD respond with 4xx status code if content-type is not supplied on POST requests
  10. MUST accept application/json POST requests
  11. MUST require a request body on POST
  12. SHOULD use 400 status code on missing {query} parameter when accepting application/graphql-response+json
  13. SHOULD use 200 status code with errors field on missing {query} parameter when accepting application/json
  14. SHOULD use 400 status code on object {query} parameter when accepting application/graphql-response+json
  15. SHOULD use 400 status code on number {query} parameter when accepting application/graphql-response+json
  16. SHOULD use 400 status code on boolean {query} parameter when accepting application/graphql-response+json
  17. SHOULD use 400 status code on array {query} parameter when accepting application/graphql-response+json
  18. SHOULD use 200 status code with errors field on object {query} parameter when accepting application/json
  19. SHOULD use 200 status code with errors field on number {query} parameter when accepting application/json
  20. SHOULD use 200 status code with errors field on boolean {query} parameter when accepting application/json
  21. SHOULD use 200 status code with errors field on array {query} parameter when accepting application/json
  22. SHOULD allow string {query} parameter when accepting application/graphql-response+json
  23. MUST allow string {query} parameter when accepting application/json
  24. SHOULD use 400 status code on object {operationName} parameter when accepting application/graphql-response+json
  25. SHOULD use 400 status code on number {operationName} parameter when accepting application/graphql-response+json
  26. SHOULD use 400 status code on boolean {operationName} parameter when accepting application/graphql-response+json
  27. SHOULD use 400 status code on array {operationName} parameter when accepting application/graphql-response+json
  28. SHOULD use 200 status code with errors field on object {operationName} parameter when accepting application/json
  29. SHOULD use 200 status code with errors field on number {operationName} parameter when accepting application/json
  30. SHOULD use 200 status code with errors field on boolean {operationName} parameter when accepting application/json
  31. SHOULD use 200 status code with errors field on array {operationName} parameter when accepting application/json
  32. SHOULD allow string {operationName} parameter when accepting application/graphql-response+json
  33. MUST allow string {operationName} parameter when accepting application/json
  34. SHOULD allow null {variables} parameter when accepting application/graphql-response+json
  35. MUST allow null {variables} parameter when accepting application/json
  36. SHOULD allow null {operationName} parameter when accepting application/graphql-response+json
  37. MUST allow null {operationName} parameter when accepting application/json
  38. SHOULD allow null {extensions} parameter when accepting application/graphql-response+json
  39. MUST allow null {extensions} parameter when accepting application/json
  40. SHOULD use 400 status code on string {variables} parameter when accepting application/graphql-response+json
  41. SHOULD use 400 status code on number {variables} parameter when accepting application/graphql-response+json
  42. SHOULD use 400 status code on boolean {variables} parameter when accepting application/graphql-response+json
  43. SHOULD use 400 status code on array {variables} parameter when accepting application/graphql-response+json
  44. SHOULD use 200 status code with errors field on string {variables} parameter when accepting application/json
  45. SHOULD use 200 status code with errors field on number {variables} parameter when accepting application/json
  46. SHOULD use 200 status code with errors field on boolean {variables} parameter when accepting application/json
  47. SHOULD use 200 status code with errors field on array {variables} parameter when accepting application/json
  48. SHOULD allow map {variables} parameter when accepting application/graphql-response+json
  49. MUST allow map {variables} parameter when accepting application/json
  50. MAY allow URL-encoded JSON string {variables} parameter in GETs when accepting application/graphql-response+json
  51. MAY allow URL-encoded JSON string {variables} parameter in GETs when accepting application/json
  52. SHOULD use 400 status code on string {extensions} parameter when accepting application/graphql-response+json
  53. SHOULD use 400 status code on number {extensions} parameter when accepting application/graphql-response+json
  54. SHOULD use 400 status code on boolean {extensions} parameter when accepting application/graphql-response+json
  55. SHOULD use 400 status code on array {extensions} parameter when accepting application/graphql-response+json
  56. SHOULD use 200 status code with errors field on string {extensions} parameter when accepting application/json
  57. SHOULD use 200 status code with errors field on number {extensions} parameter when accepting application/json
  58. SHOULD use 200 status code with errors field on boolean {extensions} parameter when accepting application/json
  59. SHOULD use 200 status code with errors field on array {extensions} parameter when accepting application/json
  60. SHOULD allow map {extensions} parameter when accepting application/graphql-response+json
  61. MUST allow map {extensions} parameter when accepting application/json
  62. SHOULD use 200 status code on JSON parsing failure when accepting application/json
  63. SHOULD use 200 status code if parameters are invalid when accepting application/json
  64. SHOULD use 200 status code on document parsing failure when accepting application/json
  65. SHOULD use 200 status code on document validation failure when accepting application/json
  66. SHOULD use 4xx or 5xx status codes on JSON parsing failure when accepting application/graphql-response+json
  67. SHOULD use 400 status code on JSON parsing failure when accepting application/graphql-response+json
  68. SHOULD not contain the data entry on JSON parsing failure when accepting application/graphql-response+json
  69. SHOULD use 4xx or 5xx status codes if parameters are invalid when accepting application/graphql-response+json
  70. SHOULD use 400 status code if parameters are invalid when accepting application/graphql-response+json
  71. SHOULD not contain the data entry if parameters are invalid when accepting application/graphql-response+json
  72. SHOULD use 4xx or 5xx status codes on document parsing failure when accepting application/graphql-response+json
  73. SHOULD use 400 status code on document parsing failure when accepting application/graphql-response+json
  74. SHOULD not contain the data entry on document parsing failure when accepting application/graphql-response+json
  75. SHOULD use 4xx or 5xx status codes on document validation failure when accepting application/graphql-response+json
  76. SHOULD use 400 status code on document validation failure when accepting application/graphql-response+json
  77. SHOULD not contain the data entry on document validation failure when accepting application/graphql-response+json

Warnings

The server SHOULD support these, but is not required.

  1. SHOULD accept */* and use application/json for the content-type
Content-Type header "application/graphql-response+json;charset=utf-8" does not contain "application/json"
  1. SHOULD assume application/json content-type when accept is missing
Content-Type header "application/graphql-response+json;charset=utf-8" does not contain "application/json"