diff --git a/README.md b/README.md index 561e58e3..bbc37aef 100644 --- a/README.md +++ b/README.md @@ -890,14 +890,10 @@ Their compliance with the [GraphQL over HTTP spec](https://graphql.github.io/gra | Name | Audit | |------|-------| | [apollo-server](https://www.apollographql.com/docs/apollo-server) | [✅ Compliant](/implementations/apollo-server/README.md) | -| [deno](https://deno.com/blog/build-a-graphql-server-with-deno) | [✅ Compliant](/implementations/deno/README.md) | | [graph-client](https://github.com/graphprotocol/graph-client) | [✅ Compliant](/implementations/graph-client/README.md) | -| [graphql-helix](https://www.graphql-helix.com) | [✅ Compliant](/implementations/graphql-helix/README.md) | | [graphql-yoga](https://www.the-guild.dev/graphql/yoga-server) | [✅ Compliant](/implementations/graphql-yoga/README.md) | | [hotchocolate](https://chillicream.com/docs/hotchocolate) | [✅ Compliant](/implementations/hotchocolate/README.md) | -| [lighthouse](https://lighthouse-php.com) | [✅ Compliant](/implementations/lighthouse/README.md) | | [pioneer](https://pioneer.dexclaimation.com) | [✅ Compliant](/implementations/pioneer/README.md) | -| [postgraphile](https://www.graphile.org/postgraphile) | [✅ Compliant](/implementations/postgraphile/README.md) | diff --git a/implementations/apollo-server/README.md b/implementations/apollo-server/README.md index d267c757..902516cc 100644 --- a/implementations/apollo-server/README.md +++ b/implementations/apollo-server/README.md @@ -3,18 +3,18 @@
22EB
SHOULD accept application/graphql-response+json and match the content-type22EB
MUST accept application/graphql-response+json and match the content-type4655
MUST accept application/json and match the content-type47DE
SHOULD accept */* and use application/json for the content-type80D8
SHOULD assume application/json content-type when accept is missing47DE
SHOULD accept */* and use application/graphql-response+json or application/json for the content-type80D8
SHOULD assume application/json or application/graphql-response+json content-type when accept is missing82A3
MUST use utf-8 encoding when respondingBF61
MUST accept utf-8 encoded request78D5
MUST assume utf-8 in request if encoding is unspecifiedLKJ1
MAY use 400 status code on number {query} parameterLKJ2
MAY use 400 status code on boolean {query} parameterLKJ3
MAY use 400 status code on array {query} parameter34A2
SHOULD allow string {query} parameter when accepting application/graphql-response+json34A2
MUST allow string {query} parameter when accepting application/graphql-response+json13EE
MUST allow string {query} parameter when accepting application/json6C00
MAY use 400 status code on object {operationName} parameter6C01
MAY use 400 status code on number {operationName} parameter6C02
MAY use 400 status code on boolean {operationName} parameter6C03
MAY use 400 status code on array {operationName} parameter8161
SHOULD allow string {operationName} parameter when accepting application/graphql-response+json8161
MUST allow string {operationName} parameter when accepting application/graphql-response+jsonB8B3
MUST allow string {operationName} parameter when accepting application/json94B0
SHOULD allow null {variables} parameter when accepting application/graphql-response+json94B0
MUST allow null {variables} parameter when accepting application/graphql-response+json0220
MUST allow null {variables} parameter when accepting application/json94B1
SHOULD allow null {operationName} parameter when accepting application/graphql-response+json94B1
MUST allow null {operationName} parameter when accepting application/graphql-response+json0221
MUST allow null {operationName} parameter when accepting application/json94B2
SHOULD allow null {extensions} parameter when accepting application/graphql-response+json94B2
MUST allow null {extensions} parameter when accepting application/graphql-response+json0222
MUST allow null {extensions} parameter when accepting application/json4760
MAY use 400 status code on string {variables} parameter4761
MAY use 400 status code on number {variables} parameter4762
MAY use 400 status code on boolean {variables} parameter4763
MAY use 400 status code on array {variables} parameter2EA1
SHOULD allow map {variables} parameter when accepting application/graphql-response+json2EA1
MUST allow map {variables} parameter when accepting application/graphql-response+json28B9
MUST allow map {variables} parameter when accepting application/json58B0
MAY use 400 status code on string {extensions} parameter58B1
MAY use 400 status code on number {extensions} parameter58B2
MAY use 400 status code on boolean {extensions} parameter58B3
MAY use 400 status code on array {extensions} parameter428F
SHOULD allow map {extensions} parameter when accepting application/graphql-response+json0280
MUST use 4xx or 5xx status codes on string {extensions} parameter when accepting application/graphql-response+json0281
MUST use 4xx or 5xx status codes on number {extensions} parameter when accepting application/graphql-response+json0282
MUST use 4xx or 5xx status codes on boolean {extensions} parameter when accepting application/graphql-response+json0283
MUST use 4xx or 5xx status codes on array {extensions} parameter when accepting application/graphql-response+json2330
SHOULD use 4xx status code on string {extensions} parameter when accepting application/graphql-response+json2331
SHOULD use 4xx status code on number {extensions} parameter when accepting application/graphql-response+json2332
SHOULD use 4xx status code on boolean {extensions} parameter when accepting application/graphql-response+json2333
SHOULD use 4xx status code on array {extensions} parameter when accepting application/graphql-response+json58B0
SHOULD use 4xx or 5xx status codes on string {extensions} parameter when accepting application/json58B1
SHOULD use 4xx or 5xx status codes on number {extensions} parameter when accepting application/json58B2
SHOULD use 4xx or 5xx status codes on boolean {extensions} parameter when accepting application/json58B3
SHOULD use 4xx or 5xx status codes on array {extensions} parameter when accepting application/json428F
MUST allow map {extensions} parameter when accepting application/graphql-response+json1B7A
MUST allow map {extensions} parameter when accepting application/jsonB6DC
MAY use 4xx or 5xx status codes on JSON parsing failureBCF8
MAY use 400 status code on JSON parsing failure8764
MAY use 4xx or 5xx status codes if parameters are invalid3E3A
MAY use 400 status code if parameters are invalid865D
SHOULD use 4xx or 5xx status codes on document parsing failure when accepting application/graphql-response+json865D
MUST use 4xx or 5xx status codes on document parsing failure when accepting application/graphql-response+json556A
SHOULD use 400 status code on document parsing failure when accepting application/graphql-response+jsonD586
SHOULD not contain the data entry on document parsing failure when accepting application/graphql-response+json51FE
SHOULD use 4xx or 5xx status codes on document validation failure when accepting application/graphql-response+json51FE
MUST use 4xx or 5xx status codes on document validation failure when accepting application/graphql-response+json74FF
SHOULD use 400 status code on document validation failure when accepting application/graphql-response+json5E5B
SHOULD not contain the data entry on document validation failure when accepting application/graphql-response+json86EE
SHOULD use a status code of 400 on variable coercion failure when accepting application/graphql-response+json4655
MUST accept application/json and match the content-type47DE
SHOULD accept */* and use application/json for the content-type80D8
SHOULD assume application/json content-type when accept is missing47DE
SHOULD accept */* and use application/graphql-response+json or application/json for the content-type80D8
SHOULD assume application/json or application/graphql-response+json content-type when accept is missing82A3
MUST use utf-8 encoding when respondingBF61
MUST accept utf-8 encoded request78D5
MUST assume utf-8 in request if encoding is unspecified4761
MAY use 400 status code on number {variables} parameter4762
MAY use 400 status code on boolean {variables} parameter28B9
MUST allow map {variables} parameter when accepting application/json0280
MUST use 4xx or 5xx status codes on string {extensions} parameter when accepting application/graphql-response+json0281
MUST use 4xx or 5xx status codes on number {extensions} parameter when accepting application/graphql-response+json0282
MUST use 4xx or 5xx status codes on boolean {extensions} parameter when accepting application/graphql-response+json0283
MUST use 4xx or 5xx status codes on array {extensions} parameter when accepting application/graphql-response+json2330
SHOULD use 4xx status code on string {extensions} parameter when accepting application/graphql-response+json2331
SHOULD use 4xx status code on number {extensions} parameter when accepting application/graphql-response+json2332
SHOULD use 4xx status code on boolean {extensions} parameter when accepting application/graphql-response+json2333
SHOULD use 4xx status code on array {extensions} parameter when accepting application/graphql-response+json1B7A
MUST allow map {extensions} parameter when accepting application/jsonB6DC
MAY use 4xx or 5xx status codes on JSON parsing failureBCF8
MAY use 400 status code on JSON parsing failure572B
SHOULD use 200 status code on document parsing failure when accepting application/jsonFDE2
SHOULD use 200 status code on document validation failure when accepting application/json7B9B
SHOULD use a status code of 200 on variable coercion failure when accepting application/json865D
SHOULD use 4xx or 5xx status codes on document parsing failure when accepting application/graphql-response+json51FE
SHOULD use 4xx or 5xx status codes on document validation failure when accepting application/graphql-response+json865D
MUST use 4xx or 5xx status codes on document parsing failure when accepting application/graphql-response+json51FE
MUST use 4xx or 5xx status codes on document validation failure when accepting application/graphql-response+json58B0
MAY use 400 status code on string {extensions} parameter
+8764
MAY use 4xx or 5xx status codes if parameters are invalid
{
"statusText": "OK",
"status": 200,
@@ -325,19 +334,19 @@ The server MAY support these, but are truly optional. These are suggestio
"vary": "Accept-Encoding",
"date": "",
"content-type": "application/json",
- "content-length": "59",
+ "content-length": "45",
"content-encoding": "gzip"
},
"body": {
- "data": {
- "__typename": "Query"
- }
+ "errors": [
+ {}
+ ]
}
}
58B1
MAY use 400 status code on number {extensions} parameter
+3E3A
MAY use 400 status code if parameters are invalid
{
@@ -347,21 +356,26 @@ The server MAY support these, but are truly optional. These are suggestio
"vary": "Accept-Encoding",
"date": "",
"content-type": "application/json",
- "content-length": "59",
+ "content-length": "45",
"content-encoding": "gzip"
},
"body": {
- "data": {
- "__typename": "Query"
- }
+ "errors": [
+ {}
+ ]
}
}
58B2
MAY use 400 status code on boolean {extensions} parameter
+58B0
SHOULD use 4xx or 5xx status codes on string {extensions} parameter when accepting application/json
{
"statusText": "OK",
"status": 200,
@@ -381,9 +395,9 @@ The server MAY support these, but are truly optional. These are suggestio
58B3
MAY use 400 status code on array {extensions} parameter
+58B1
SHOULD use 4xx or 5xx status codes on number {extensions} parameter when accepting application/json
{
"statusText": "OK",
"status": 200,
@@ -403,7 +417,7 @@ The server MAY support these, but are truly optional. These are suggestio
8764
MAY use 4xx or 5xx status codes if parameters are invalid
+58B2
SHOULD use 4xx or 5xx status codes on boolean {extensions} parameter when accepting application/json
{
@@ -413,21 +427,21 @@ The server MAY support these, but are truly optional. These are suggestio
"vary": "Accept-Encoding",
"date": "",
"content-type": "application/json",
- "content-length": "45",
+ "content-length": "59",
"content-encoding": "gzip"
},
"body": {
- "errors": [
- {}
- ]
+ "data": {
+ "__typename": "Query"
+ }
}
}
3E3A
MAY use 400 status code if parameters are invalid
+58B3
SHOULD use 4xx or 5xx status codes on array {extensions} parameter when accepting application/json
{
"statusText": "OK",
"status": 200,
@@ -435,26 +449,21 @@ The server MAY support these, but are truly optional. These are suggestio
"vary": "Accept-Encoding",
"date": "",
"content-type": "application/json",
- "content-length": "45",
+ "content-length": "59",
"content-encoding": "gzip"
},
"body": {
- "errors": [
- {}
- ]
+ "data": {
+ "__typename": "Query"
+ }
}
}
22EB
SHOULD accept application/graphql-response+json and match the content-type
+556A
SHOULD use 400 status code on document parsing failure when accepting application/graphql-response+json
{
"statusText": "Not Acceptable",
"status": 406,
@@ -469,9 +478,9 @@ The server SHOULD support these, but is not required.
34A2
SHOULD allow string {query} parameter when accepting application/graphql-response+json
+D586
SHOULD not contain the data entry on document parsing failure when accepting application/graphql-response+json
{
"statusText": "Not Acceptable",
"status": 406,
@@ -481,14 +490,14 @@ The server SHOULD support these, but is not required.
"content-type": "text/plain;charset=UTF-8",
"content-length": "14"
},
- "body": "Not Acceptable"
+ "body": null
}
8161
SHOULD allow string {operationName} parameter when accepting application/graphql-response+json
+74FF
SHOULD use 400 status code on document validation failure when accepting application/graphql-response+json
{
"statusText": "Not Acceptable",
"status": 406,
@@ -503,9 +512,9 @@ The server SHOULD support these, but is not required.
94B0
SHOULD allow null {variables} parameter when accepting application/graphql-response+json
+5E5B
SHOULD not contain the data entry on document validation failure when accepting application/graphql-response+json
{
"statusText": "Not Acceptable",
"status": 406,
@@ -515,14 +524,14 @@ The server SHOULD support these, but is not required.
"content-type": "text/plain;charset=UTF-8",
"content-length": "14"
},
- "body": "Not Acceptable"
+ "body": null
}
94B1
SHOULD allow null {operationName} parameter when accepting application/graphql-response+json
+86EE
SHOULD use a status code of 400 on variable coercion failure when accepting application/graphql-response+json
{
"statusText": "Not Acceptable",
"status": 406,
@@ -537,7 +546,12 @@ The server SHOULD support these, but is not required.
94B2
SHOULD allow null {extensions} parameter when accepting application/graphql-response+json
+22EB
MUST accept application/graphql-response+json and match the content-type
{
@@ -554,7 +568,7 @@ The server SHOULD support these, but is not required.
2EA1
SHOULD allow map {variables} parameter when accepting application/graphql-response+json
+34A2
MUST allow string {query} parameter when accepting application/graphql-response+json
{
@@ -571,7 +585,7 @@ The server SHOULD support these, but is not required.
428F
SHOULD allow map {extensions} parameter when accepting application/graphql-response+json
+8161
MUST allow string {operationName} parameter when accepting application/graphql-response+json
{
@@ -588,9 +602,9 @@ The server SHOULD support these, but is not required.
556A
SHOULD use 400 status code on document parsing failure when accepting application/graphql-response+json
+94B0
MUST allow null {variables} parameter when accepting application/graphql-response+json
{
"statusText": "Not Acceptable",
"status": 406,
@@ -605,9 +619,9 @@ The server SHOULD support these, but is not required.
D586
SHOULD not contain the data entry on document parsing failure when accepting application/graphql-response+json
+94B1
MUST allow null {operationName} parameter when accepting application/graphql-response+json
{
"statusText": "Not Acceptable",
"status": 406,
@@ -617,14 +631,14 @@ The server SHOULD support these, but is not required.
"content-type": "text/plain;charset=UTF-8",
"content-length": "14"
},
- "body": null
+ "body": "Not Acceptable"
}
74FF
SHOULD use 400 status code on document validation failure when accepting application/graphql-response+json
+94B2
MUST allow null {extensions} parameter when accepting application/graphql-response+json
{
"statusText": "Not Acceptable",
"status": 406,
@@ -639,9 +653,9 @@ The server SHOULD support these, but is not required.
5E5B
SHOULD not contain the data entry on document validation failure when accepting application/graphql-response+json
+2EA1
MUST allow map {variables} parameter when accepting application/graphql-response+json
{
"statusText": "Not Acceptable",
"status": 406,
@@ -651,14 +665,14 @@ The server SHOULD support these, but is not required.
"content-type": "text/plain;charset=UTF-8",
"content-length": "14"
},
- "body": null
+ "body": "Not Acceptable"
}
86EE
SHOULD use a status code of 400 on variable coercion failure when accepting application/graphql-response+json
+428F
MUST allow map {extensions} parameter when accepting application/graphql-response+json
{
"statusText": "Not Acceptable",
"status": 406,
@@ -674,4 +688,3 @@ The server SHOULD support these, but is not required.
4655
MUST accept application/json and match the content-type47DE
SHOULD accept */* and use application/json for the content-type80D8
SHOULD assume application/json content-type when accept is missing47DE
SHOULD accept */* and use application/graphql-response+json or application/json for the content-type80D8
SHOULD assume application/json or application/graphql-response+json content-type when accept is missing82A3
MUST use utf-8 encoding when respondingBF61
MUST accept utf-8 encoded request78D5
MUST assume utf-8 in request if encoding is unspecifiedLKJ1
MAY use 400 status code on number {query} parameterLKJ2
MAY use 400 status code on boolean {query} parameterLKJ3
MAY use 400 status code on array {query} parameter34A2
SHOULD allow string {query} parameter when accepting application/graphql-response+json34A2
MUST allow string {query} parameter when accepting application/graphql-response+json13EE
MUST allow string {query} parameter when accepting application/json8161
SHOULD allow string {operationName} parameter when accepting application/graphql-response+json8161
MUST allow string {operationName} parameter when accepting application/graphql-response+jsonB8B3
MUST allow string {operationName} parameter when accepting application/json94B0
SHOULD allow null {variables} parameter when accepting application/graphql-response+json94B0
MUST allow null {variables} parameter when accepting application/graphql-response+json0220
MUST allow null {variables} parameter when accepting application/json94B1
SHOULD allow null {operationName} parameter when accepting application/graphql-response+json94B1
MUST allow null {operationName} parameter when accepting application/graphql-response+json0221
MUST allow null {operationName} parameter when accepting application/json94B2
SHOULD allow null {extensions} parameter when accepting application/graphql-response+json94B2
MUST allow null {extensions} parameter when accepting application/graphql-response+json0222
MUST allow null {extensions} parameter when accepting application/json4760
MAY use 400 status code on string {variables} parameter2EA1
SHOULD allow map {variables} parameter when accepting application/graphql-response+json2EA1
MUST allow map {variables} parameter when accepting application/graphql-response+json28B9
MUST allow map {variables} parameter when accepting application/jsonD6D5
MAY allow URL-encoded JSON string {variables} parameter in GETs when accepting application/graphql-response+json6A70
MAY allow URL-encoded JSON string {variables} parameter in GETs when accepting application/json428F
SHOULD allow map {extensions} parameter when accepting application/graphql-response+json428F
MUST allow map {extensions} parameter when accepting application/graphql-response+json1B7A
MUST allow map {extensions} parameter when accepting application/jsonB6DC
MAY use 4xx or 5xx status codes on JSON parsing failureBCF8
MAY use 400 status code on JSON parsing failure8764
MAY use 4xx or 5xx status codes if parameters are invalid3E3A
MAY use 400 status code if parameters are invalid865D
SHOULD use 4xx or 5xx status codes on document parsing failure when accepting application/graphql-response+json865D
MUST use 4xx or 5xx status codes on document parsing failure when accepting application/graphql-response+json556A
SHOULD use 400 status code on document parsing failure when accepting application/graphql-response+jsonD586
SHOULD not contain the data entry on document parsing failure when accepting application/graphql-response+json51FE
SHOULD use 4xx or 5xx status codes on document validation failure when accepting application/graphql-response+json51FE
MUST use 4xx or 5xx status codes on document validation failure when accepting application/graphql-response+json74FF
SHOULD use 400 status code on document validation failure when accepting application/graphql-response+json5E5B
SHOULD not contain the data entry on document validation failure when accepting application/graphql-response+json86EE
SHOULD use a status code of 400 on variable coercion failure when accepting application/graphql-response+json58B0
MAY use 400 status code on string {extensions} parameter
+2330
SHOULD use 4xx status code on string {extensions} parameter when accepting application/graphql-response+json
{
"statusText": "OK",
"status": 200,
@@ -253,9 +259,9 @@ The server MAY support these, but are truly optional. These are suggestio
58B1
MAY use 400 status code on number {extensions} parameter
+2331
SHOULD use 4xx status code on number {extensions} parameter when accepting application/graphql-response+json
{
"statusText": "OK",
"status": 200,
@@ -277,9 +283,9 @@ The server MAY support these, but are truly optional. These are suggestio
58B2
MAY use 400 status code on boolean {extensions} parameter
+2332
SHOULD use 4xx status code on boolean {extensions} parameter when accepting application/graphql-response+json
{
"statusText": "OK",
"status": 200,
@@ -301,9 +307,9 @@ The server MAY support these, but are truly optional. These are suggestio
58B3
MAY use 400 status code on array {extensions} parameter
+2333
SHOULD use 4xx status code on array {extensions} parameter when accepting application/graphql-response+json
{
"statusText": "OK",
"status": 200,
@@ -325,14 +331,81 @@ The server MAY support these, but are truly optional. These are suggestio
22EB
SHOULD accept application/graphql-response+json and match the content-type
+58B0
SHOULD use 4xx or 5xx status codes on string {extensions} parameter when accepting application/json
{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "x-powered-by": "Express",
+ "keep-alive": "timeout=5",
+ "etag": "W/\"1f-yOwhVHjWKeagyuteVuktj+6mcMg\"",
+ "date": "",
+ "content-type": "application/json; charset=utf-8",
+ "content-length": "31",
+ "connection": "keep-alive"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+58B1
SHOULD use 4xx or 5xx status codes on number {extensions} parameter when accepting application/json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "x-powered-by": "Express",
+ "keep-alive": "timeout=5",
+ "etag": "W/\"1f-yOwhVHjWKeagyuteVuktj+6mcMg\"",
+ "date": "",
+ "content-type": "application/json; charset=utf-8",
+ "content-length": "31",
+ "connection": "keep-alive"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+58B2
SHOULD use 4xx or 5xx status codes on boolean {extensions} parameter when accepting application/json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "x-powered-by": "Express",
+ "keep-alive": "timeout=5",
+ "etag": "W/\"1f-yOwhVHjWKeagyuteVuktj+6mcMg\"",
+ "date": "",
+ "content-type": "application/json; charset=utf-8",
+ "content-length": "31",
+ "connection": "keep-alive"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+58B3
SHOULD use 4xx or 5xx status codes on array {extensions} parameter when accepting application/json
+{
"statusText": "OK",
"status": 200,
@@ -461,3 +534,127 @@ The server SHOULD support these, but is not required.
22EB
MUST accept application/graphql-response+json and match the content-type
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "x-powered-by": "Express",
+ "keep-alive": "timeout=5",
+ "etag": "W/\"1f-yOwhVHjWKeagyuteVuktj+6mcMg\"",
+ "date": "",
+ "content-type": "application/json; charset=utf-8",
+ "content-length": "31",
+ "connection": "keep-alive"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+0280
MUST use 4xx or 5xx status codes on string {extensions} parameter when accepting application/graphql-response+json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "x-powered-by": "Express",
+ "keep-alive": "timeout=5",
+ "etag": "W/\"1f-yOwhVHjWKeagyuteVuktj+6mcMg\"",
+ "date": "",
+ "content-type": "application/json; charset=utf-8",
+ "content-length": "31",
+ "connection": "keep-alive"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+0281
MUST use 4xx or 5xx status codes on number {extensions} parameter when accepting application/graphql-response+json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "x-powered-by": "Express",
+ "keep-alive": "timeout=5",
+ "etag": "W/\"1f-yOwhVHjWKeagyuteVuktj+6mcMg\"",
+ "date": "",
+ "content-type": "application/json; charset=utf-8",
+ "content-length": "31",
+ "connection": "keep-alive"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+0282
MUST use 4xx or 5xx status codes on boolean {extensions} parameter when accepting application/graphql-response+json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "x-powered-by": "Express",
+ "keep-alive": "timeout=5",
+ "etag": "W/\"1f-yOwhVHjWKeagyuteVuktj+6mcMg\"",
+ "date": "",
+ "content-type": "application/json; charset=utf-8",
+ "content-length": "31",
+ "connection": "keep-alive"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+0283
MUST use 4xx or 5xx status codes on array {extensions} parameter when accepting application/graphql-response+json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "x-powered-by": "Express",
+ "keep-alive": "timeout=5",
+ "etag": "W/\"1f-yOwhVHjWKeagyuteVuktj+6mcMg\"",
+ "date": "",
+ "content-type": "application/json; charset=utf-8",
+ "content-length": "31",
+ "connection": "keep-alive"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+22EB
SHOULD accept application/graphql-response+json and match the content-type22EB
MUST accept application/graphql-response+json and match the content-type4655
MUST accept application/json and match the content-type47DE
SHOULD accept */* and use application/json for the content-type80D8
SHOULD assume application/json content-type when accept is missing47DE
SHOULD accept */* and use application/graphql-response+json or application/json for the content-type80D8
SHOULD assume application/json or application/graphql-response+json content-type when accept is missing82A3
MUST use utf-8 encoding when respondingBF61
MUST accept utf-8 encoded request78D5
MUST assume utf-8 in request if encoding is unspecifiedLKJ1
MAY use 400 status code on number {query} parameterLKJ2
MAY use 400 status code on boolean {query} parameterLKJ3
MAY use 400 status code on array {query} parameter34A2
SHOULD allow string {query} parameter when accepting application/graphql-response+json34A2
MUST allow string {query} parameter when accepting application/graphql-response+json13EE
MUST allow string {query} parameter when accepting application/json6C00
MAY use 400 status code on object {operationName} parameter6C01
MAY use 400 status code on number {operationName} parameter6C02
MAY use 400 status code on boolean {operationName} parameter6C03
MAY use 400 status code on array {operationName} parameter8161
SHOULD allow string {operationName} parameter when accepting application/graphql-response+json8161
MUST allow string {operationName} parameter when accepting application/graphql-response+jsonB8B3
MUST allow string {operationName} parameter when accepting application/json94B0
SHOULD allow null {variables} parameter when accepting application/graphql-response+json94B0
MUST allow null {variables} parameter when accepting application/graphql-response+json0220
MUST allow null {variables} parameter when accepting application/json94B1
SHOULD allow null {operationName} parameter when accepting application/graphql-response+json94B1
MUST allow null {operationName} parameter when accepting application/graphql-response+json0221
MUST allow null {operationName} parameter when accepting application/json94B2
SHOULD allow null {extensions} parameter when accepting application/graphql-response+json94B2
MUST allow null {extensions} parameter when accepting application/graphql-response+json0222
MUST allow null {extensions} parameter when accepting application/json4760
MAY use 400 status code on string {variables} parameter4761
MAY use 400 status code on number {variables} parameter4762
MAY use 400 status code on boolean {variables} parameter4763
MAY use 400 status code on array {variables} parameter2EA1
SHOULD allow map {variables} parameter when accepting application/graphql-response+json2EA1
MUST allow map {variables} parameter when accepting application/graphql-response+json28B9
MUST allow map {variables} parameter when accepting application/jsonD6D5
MAY allow URL-encoded JSON string {variables} parameter in GETs when accepting application/graphql-response+json6A70
MAY allow URL-encoded JSON string {variables} parameter in GETs when accepting application/json58B0
MAY use 400 status code on string {extensions} parameter58B1
MAY use 400 status code on number {extensions} parameter58B2
MAY use 400 status code on boolean {extensions} parameter58B3
MAY use 400 status code on array {extensions} parameter428F
SHOULD allow map {extensions} parameter when accepting application/graphql-response+json0280
MUST use 4xx or 5xx status codes on string {extensions} parameter when accepting application/graphql-response+json0281
MUST use 4xx or 5xx status codes on number {extensions} parameter when accepting application/graphql-response+json0282
MUST use 4xx or 5xx status codes on boolean {extensions} parameter when accepting application/graphql-response+json0283
MUST use 4xx or 5xx status codes on array {extensions} parameter when accepting application/graphql-response+json2330
SHOULD use 4xx status code on string {extensions} parameter when accepting application/graphql-response+json2331
SHOULD use 4xx status code on number {extensions} parameter when accepting application/graphql-response+json2332
SHOULD use 4xx status code on boolean {extensions} parameter when accepting application/graphql-response+json2333
SHOULD use 4xx status code on array {extensions} parameter when accepting application/graphql-response+json58B0
SHOULD use 4xx or 5xx status codes on string {extensions} parameter when accepting application/json58B1
SHOULD use 4xx or 5xx status codes on number {extensions} parameter when accepting application/json58B2
SHOULD use 4xx or 5xx status codes on boolean {extensions} parameter when accepting application/json58B3
SHOULD use 4xx or 5xx status codes on array {extensions} parameter when accepting application/json428F
MUST allow map {extensions} parameter when accepting application/graphql-response+json1B7A
MUST allow map {extensions} parameter when accepting application/json8764
MAY use 4xx or 5xx status codes if parameters are invalid3E3A
MAY use 400 status code if parameters are invalid572B
SHOULD use 200 status code on document parsing failure when accepting application/jsonFDE2
SHOULD use 200 status code on document validation failure when accepting application/json7B9B
SHOULD use a status code of 200 on variable coercion failure when accepting application/json865D
SHOULD use 4xx or 5xx status codes on document parsing failure when accepting application/graphql-response+json865D
MUST use 4xx or 5xx status codes on document parsing failure when accepting application/graphql-response+json556A
SHOULD use 400 status code on document parsing failure when accepting application/graphql-response+jsonD586
SHOULD not contain the data entry on document parsing failure when accepting application/graphql-response+json51FE
SHOULD use 4xx or 5xx status codes on document validation failure when accepting application/graphql-response+json51FE
MUST use 4xx or 5xx status codes on document validation failure when accepting application/graphql-response+json74FF
SHOULD use 400 status code on document validation failure when accepting application/graphql-response+json5E5B
SHOULD not contain the data entry on document validation failure when accepting application/graphql-response+json86EE
SHOULD use a status code of 400 on variable coercion failure when accepting application/graphql-response+json4655
MUST accept application/json and match the content-type47DE
SHOULD accept */* and use application/json for the content-type80D8
SHOULD assume application/json content-type when accept is missing47DE
SHOULD accept */* and use application/graphql-response+json or application/json for the content-type80D8
SHOULD assume application/json or application/graphql-response+json content-type when accept is missing82A3
MUST use utf-8 encoding when respondingBF61
MUST accept utf-8 encoded request78D5
MUST assume utf-8 in request if encoding is unspecifiedLKJ1
MAY use 400 status code on number {query} parameterLKJ2
MAY use 400 status code on boolean {query} parameterLKJ3
MAY use 400 status code on array {query} parameter34A2
SHOULD allow string {query} parameter when accepting application/graphql-response+json34A2
MUST allow string {query} parameter when accepting application/graphql-response+json13EE
MUST allow string {query} parameter when accepting application/json6C00
MAY use 400 status code on object {operationName} parameter6C01
MAY use 400 status code on number {operationName} parameter6C02
MAY use 400 status code on boolean {operationName} parameter6C03
MAY use 400 status code on array {operationName} parameter8161
SHOULD allow string {operationName} parameter when accepting application/graphql-response+json8161
MUST allow string {operationName} parameter when accepting application/graphql-response+jsonB8B3
MUST allow string {operationName} parameter when accepting application/json94B0
SHOULD allow null {variables} parameter when accepting application/graphql-response+json94B0
MUST allow null {variables} parameter when accepting application/graphql-response+json0220
MUST allow null {variables} parameter when accepting application/json94B1
SHOULD allow null {operationName} parameter when accepting application/graphql-response+json94B1
MUST allow null {operationName} parameter when accepting application/graphql-response+json0221
MUST allow null {operationName} parameter when accepting application/json94B2
SHOULD allow null {extensions} parameter when accepting application/graphql-response+json94B2
MUST allow null {extensions} parameter when accepting application/graphql-response+json0222
MUST allow null {extensions} parameter when accepting application/json4760
MAY use 400 status code on string {variables} parameter2EA1
SHOULD allow map {variables} parameter when accepting application/graphql-response+json2EA1
MUST allow map {variables} parameter when accepting application/graphql-response+json28B9
MUST allow map {variables} parameter when accepting application/jsonD6D5
MAY allow URL-encoded JSON string {variables} parameter in GETs when accepting application/graphql-response+json6A70
MAY allow URL-encoded JSON string {variables} parameter in GETs when accepting application/json428F
SHOULD allow map {extensions} parameter when accepting application/graphql-response+json428F
MUST allow map {extensions} parameter when accepting application/graphql-response+json1B7A
MUST allow map {extensions} parameter when accepting application/jsonB6DC
MAY use 4xx or 5xx status codes on JSON parsing failureBCF8
MAY use 400 status code on JSON parsing failure8764
MAY use 4xx or 5xx status codes if parameters are invalid3E3A
MAY use 400 status code if parameters are invalid865D
SHOULD use 4xx or 5xx status codes on document parsing failure when accepting application/graphql-response+json865D
MUST use 4xx or 5xx status codes on document parsing failure when accepting application/graphql-response+json556A
SHOULD use 400 status code on document parsing failure when accepting application/graphql-response+jsonD586
SHOULD not contain the data entry on document parsing failure when accepting application/graphql-response+json51FE
SHOULD use 4xx or 5xx status codes on document validation failure when accepting application/graphql-response+json51FE
MUST use 4xx or 5xx status codes on document validation failure when accepting application/graphql-response+json74FF
SHOULD use 400 status code on document validation failure when accepting application/graphql-response+json5E5B
SHOULD not contain the data entry on document validation failure when accepting application/graphql-response+json86EE
SHOULD use a status code of 400 on variable coercion failure when accepting application/graphql-response+json58B0
MAY use 400 status code on string {extensions} parameter
+2330
SHOULD use 4xx status code on string {extensions} parameter when accepting application/graphql-response+json
{
"statusText": "OK",
"status": 200,
@@ -157,9 +163,9 @@ The server MAY support these, but are truly optional. These are suggestio
58B1
MAY use 400 status code on number {extensions} parameter
+2331
SHOULD use 4xx status code on number {extensions} parameter when accepting application/graphql-response+json
{
"statusText": "OK",
"status": 200,
@@ -180,9 +186,9 @@ The server MAY support these, but are truly optional. These are suggestio
58B2
MAY use 400 status code on boolean {extensions} parameter
+2332
SHOULD use 4xx status code on boolean {extensions} parameter when accepting application/graphql-response+json
{
"statusText": "OK",
"status": 200,
@@ -203,9 +209,9 @@ The server MAY support these, but are truly optional. These are suggestio
58B3
MAY use 400 status code on array {extensions} parameter
+2333
SHOULD use 4xx status code on array {extensions} parameter when accepting application/graphql-response+json
{
"statusText": "OK",
"status": 200,
@@ -226,14 +232,78 @@ The server MAY support these, but are truly optional. These are suggestio
22EB
SHOULD accept application/graphql-response+json and match the content-type
+58B0
SHOULD use 4xx or 5xx status codes on string {extensions} parameter when accepting application/json
{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "x-powered-by": "Express",
+ "keep-alive": "timeout=5",
+ "date": "",
+ "content-type": "application/json",
+ "content-length": "31",
+ "connection": "keep-alive"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+58B1
SHOULD use 4xx or 5xx status codes on number {extensions} parameter when accepting application/json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "x-powered-by": "Express",
+ "keep-alive": "timeout=5",
+ "date": "",
+ "content-type": "application/json",
+ "content-length": "31",
+ "connection": "keep-alive"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+58B2
SHOULD use 4xx or 5xx status codes on boolean {extensions} parameter when accepting application/json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "x-powered-by": "Express",
+ "keep-alive": "timeout=5",
+ "date": "",
+ "content-type": "application/json",
+ "content-length": "31",
+ "connection": "keep-alive"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+58B3
SHOULD use 4xx or 5xx status codes on array {extensions} parameter when accepting application/json
+{
"statusText": "OK",
"status": 200,
@@ -358,3 +428,122 @@ The server SHOULD support these, but is not required.
22EB
MUST accept application/graphql-response+json and match the content-type
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "x-powered-by": "Express",
+ "keep-alive": "timeout=5",
+ "date": "",
+ "content-type": "application/json",
+ "content-length": "31",
+ "connection": "keep-alive"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+0280
MUST use 4xx or 5xx status codes on string {extensions} parameter when accepting application/graphql-response+json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "x-powered-by": "Express",
+ "keep-alive": "timeout=5",
+ "date": "",
+ "content-type": "application/json",
+ "content-length": "31",
+ "connection": "keep-alive"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+0281
MUST use 4xx or 5xx status codes on number {extensions} parameter when accepting application/graphql-response+json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "x-powered-by": "Express",
+ "keep-alive": "timeout=5",
+ "date": "",
+ "content-type": "application/json",
+ "content-length": "31",
+ "connection": "keep-alive"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+0282
MUST use 4xx or 5xx status codes on boolean {extensions} parameter when accepting application/graphql-response+json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "x-powered-by": "Express",
+ "keep-alive": "timeout=5",
+ "date": "",
+ "content-type": "application/json",
+ "content-length": "31",
+ "connection": "keep-alive"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+0283
MUST use 4xx or 5xx status codes on array {extensions} parameter when accepting application/graphql-response+json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "x-powered-by": "Express",
+ "keep-alive": "timeout=5",
+ "date": "",
+ "content-type": "application/json",
+ "content-length": "31",
+ "connection": "keep-alive"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+22EB
SHOULD accept application/graphql-response+json and match the content-type22EB
MUST accept application/graphql-response+json and match the content-type4655
MUST accept application/json and match the content-type47DE
SHOULD accept */* and use application/json for the content-type80D8
SHOULD assume application/json content-type when accept is missing47DE
SHOULD accept */* and use application/graphql-response+json or application/json for the content-type80D8
SHOULD assume application/json or application/graphql-response+json content-type when accept is missing82A3
MUST use utf-8 encoding when respondingBF61
MUST accept utf-8 encoded request78D5
MUST assume utf-8 in request if encoding is unspecifiedLKJ1
MAY use 400 status code on number {query} parameterLKJ2
MAY use 400 status code on boolean {query} parameterLKJ3
MAY use 400 status code on array {query} parameter34A2
SHOULD allow string {query} parameter when accepting application/graphql-response+json34A2
MUST allow string {query} parameter when accepting application/graphql-response+json13EE
MUST allow string {query} parameter when accepting application/json6C00
MAY use 400 status code on object {operationName} parameter6C01
MAY use 400 status code on number {operationName} parameter6C02
MAY use 400 status code on boolean {operationName} parameter6C03
MAY use 400 status code on array {operationName} parameter8161
SHOULD allow string {operationName} parameter when accepting application/graphql-response+json8161
MUST allow string {operationName} parameter when accepting application/graphql-response+jsonB8B3
MUST allow string {operationName} parameter when accepting application/json94B0
SHOULD allow null {variables} parameter when accepting application/graphql-response+json94B0
MUST allow null {variables} parameter when accepting application/graphql-response+json0220
MUST allow null {variables} parameter when accepting application/json94B1
SHOULD allow null {operationName} parameter when accepting application/graphql-response+json94B1
MUST allow null {operationName} parameter when accepting application/graphql-response+json0221
MUST allow null {operationName} parameter when accepting application/json94B2
SHOULD allow null {extensions} parameter when accepting application/graphql-response+json94B2
MUST allow null {extensions} parameter when accepting application/graphql-response+json0222
MUST allow null {extensions} parameter when accepting application/json4760
MAY use 400 status code on string {variables} parameter4761
MAY use 400 status code on number {variables} parameter4762
MAY use 400 status code on boolean {variables} parameter4763
MAY use 400 status code on array {variables} parameter2EA1
SHOULD allow map {variables} parameter when accepting application/graphql-response+json2EA1
MUST allow map {variables} parameter when accepting application/graphql-response+json28B9
MUST allow map {variables} parameter when accepting application/jsonD6D5
MAY allow URL-encoded JSON string {variables} parameter in GETs when accepting application/graphql-response+json6A70
MAY allow URL-encoded JSON string {variables} parameter in GETs when accepting application/json58B0
MAY use 400 status code on string {extensions} parameter58B1
MAY use 400 status code on number {extensions} parameter58B2
MAY use 400 status code on boolean {extensions} parameter58B3
MAY use 400 status code on array {extensions} parameter428F
SHOULD allow map {extensions} parameter when accepting application/graphql-response+json0280
MUST use 4xx or 5xx status codes on string {extensions} parameter when accepting application/graphql-response+json0281
MUST use 4xx or 5xx status codes on number {extensions} parameter when accepting application/graphql-response+json0282
MUST use 4xx or 5xx status codes on boolean {extensions} parameter when accepting application/graphql-response+json0283
MUST use 4xx or 5xx status codes on array {extensions} parameter when accepting application/graphql-response+json2330
SHOULD use 4xx status code on string {extensions} parameter when accepting application/graphql-response+json2331
SHOULD use 4xx status code on number {extensions} parameter when accepting application/graphql-response+json2332
SHOULD use 4xx status code on boolean {extensions} parameter when accepting application/graphql-response+json2333
SHOULD use 4xx status code on array {extensions} parameter when accepting application/graphql-response+json58B0
SHOULD use 4xx or 5xx status codes on string {extensions} parameter when accepting application/json58B1
SHOULD use 4xx or 5xx status codes on number {extensions} parameter when accepting application/json58B2
SHOULD use 4xx or 5xx status codes on boolean {extensions} parameter when accepting application/json58B3
SHOULD use 4xx or 5xx status codes on array {extensions} parameter when accepting application/json428F
MUST allow map {extensions} parameter when accepting application/graphql-response+json1B7A
MUST allow map {extensions} parameter when accepting application/jsonB6DC
MAY use 4xx or 5xx status codes on JSON parsing failureBCF8
MAY use 400 status code on JSON parsing failure572B
SHOULD use 200 status code on document parsing failure when accepting application/jsonFDE2
SHOULD use 200 status code on document validation failure when accepting application/json7B9B
SHOULD use a status code of 200 on variable coercion failure when accepting application/json865D
SHOULD use 4xx or 5xx status codes on document parsing failure when accepting application/graphql-response+json865D
MUST use 4xx or 5xx status codes on document parsing failure when accepting application/graphql-response+json556A
SHOULD use 400 status code on document parsing failure when accepting application/graphql-response+jsonD586
SHOULD not contain the data entry on document parsing failure when accepting application/graphql-response+json51FE
SHOULD use 4xx or 5xx status codes on document validation failure when accepting application/graphql-response+json51FE
MUST use 4xx or 5xx status codes on document validation failure when accepting application/graphql-response+json74FF
SHOULD use 400 status code on document validation failure when accepting application/graphql-response+json5E5B
SHOULD not contain the data entry on document validation failure when accepting application/graphql-response+json86EE
SHOULD use a status code of 400 on variable coercion failure when accepting application/graphql-response+json22EB
SHOULD accept application/graphql-response+json and match the content-type22EB
MUST accept application/graphql-response+json and match the content-type4655
MUST accept application/json and match the content-type47DE
SHOULD accept */* and use application/graphql-response+json or application/json for the content-type80D8
SHOULD assume application/json or application/graphql-response+json content-type when accept is missing82A3
MUST use utf-8 encoding when respondingBF61
MUST accept utf-8 encoded request78D5
MUST assume utf-8 in request if encoding is unspecifiedLKJ1
MAY use 400 status code on number {query} parameterLKJ2
MAY use 400 status code on boolean {query} parameterLKJ3
MAY use 400 status code on array {query} parameter34A2
SHOULD allow string {query} parameter when accepting application/graphql-response+json34A2
MUST allow string {query} parameter when accepting application/graphql-response+json13EE
MUST allow string {query} parameter when accepting application/json6C00
MAY use 400 status code on object {operationName} parameter6C01
MAY use 400 status code on number {operationName} parameter6C02
MAY use 400 status code on boolean {operationName} parameter6C03
MAY use 400 status code on array {operationName} parameter8161
SHOULD allow string {operationName} parameter when accepting application/graphql-response+json8161
MUST allow string {operationName} parameter when accepting application/graphql-response+jsonB8B3
MUST allow string {operationName} parameter when accepting application/json94B0
SHOULD allow null {variables} parameter when accepting application/graphql-response+json94B0
MUST allow null {variables} parameter when accepting application/graphql-response+json0220
MUST allow null {variables} parameter when accepting application/json94B1
SHOULD allow null {operationName} parameter when accepting application/graphql-response+json94B1
MUST allow null {operationName} parameter when accepting application/graphql-response+json0221
MUST allow null {operationName} parameter when accepting application/json94B2
SHOULD allow null {extensions} parameter when accepting application/graphql-response+json94B2
MUST allow null {extensions} parameter when accepting application/graphql-response+json0222
MUST allow null {extensions} parameter when accepting application/json4760
MAY use 400 status code on string {variables} parameter4761
MAY use 400 status code on number {variables} parameter4762
MAY use 400 status code on boolean {variables} parameter4763
MAY use 400 status code on array {variables} parameter2EA1
SHOULD allow map {variables} parameter when accepting application/graphql-response+json2EA1
MUST allow map {variables} parameter when accepting application/graphql-response+json28B9
MUST allow map {variables} parameter when accepting application/jsonD6D5
MAY allow URL-encoded JSON string {variables} parameter in GETs when accepting application/graphql-response+json6A70
MAY allow URL-encoded JSON string {variables} parameter in GETs when accepting application/json58B0
MAY use 400 status code on string {extensions} parameter58B1
MAY use 400 status code on number {extensions} parameter58B2
MAY use 400 status code on boolean {extensions} parameter58B3
MAY use 400 status code on array {extensions} parameter428F
SHOULD allow map {extensions} parameter when accepting application/graphql-response+json0280
MUST use 4xx or 5xx status codes on string {extensions} parameter when accepting application/graphql-response+json0281
MUST use 4xx or 5xx status codes on number {extensions} parameter when accepting application/graphql-response+json0282
MUST use 4xx or 5xx status codes on boolean {extensions} parameter when accepting application/graphql-response+json0283
MUST use 4xx or 5xx status codes on array {extensions} parameter when accepting application/graphql-response+json2330
SHOULD use 4xx status code on string {extensions} parameter when accepting application/graphql-response+json2331
SHOULD use 4xx status code on number {extensions} parameter when accepting application/graphql-response+json2332
SHOULD use 4xx status code on boolean {extensions} parameter when accepting application/graphql-response+json2333
SHOULD use 4xx status code on array {extensions} parameter when accepting application/graphql-response+json428F
MUST allow map {extensions} parameter when accepting application/graphql-response+json1B7A
MUST allow map {extensions} parameter when accepting application/jsonB6DC
MAY use 4xx or 5xx status codes on JSON parsing failureBCF8
MAY use 400 status code on JSON parsing failure572B
SHOULD use 200 status code on document parsing failure when accepting application/jsonFDE2
SHOULD use 200 status code on document validation failure when accepting application/json7B9B
SHOULD use a status code of 200 on variable coercion failure when accepting application/json865D
SHOULD use 4xx or 5xx status codes on document parsing failure when accepting application/graphql-response+json865D
MUST use 4xx or 5xx status codes on document parsing failure when accepting application/graphql-response+json556A
SHOULD use 400 status code on document parsing failure when accepting application/graphql-response+jsonD586
SHOULD not contain the data entry on document parsing failure when accepting application/graphql-response+json51FE
SHOULD use 4xx or 5xx status codes on document validation failure when accepting application/graphql-response+json51FE
MUST use 4xx or 5xx status codes on document validation failure when accepting application/graphql-response+json74FF
SHOULD use 400 status code on document validation failure when accepting application/graphql-response+json5E5B
SHOULD not contain the data entry on document validation failure when accepting application/graphql-response+json86EE
SHOULD use a status code of 400 on variable coercion failure when accepting application/graphql-response+json47DE
SHOULD accept */* and use application/json for the content-type
+58B0
SHOULD use 4xx or 5xx status codes on string {extensions} parameter when accepting application/json
{
"statusText": "OK",
"status": 200,
@@ -83,20 +89,31 @@ The server SHOULD support these, but is not required.
"transfer-encoding": "chunked",
"server": "Kestrel",
"date": "",
- "content-type": "application/graphql-response+json;charset=utf-8"
+ "content-type": "application/json; charset=utf-8"
},
"body": {
- "data": {
- "__typename": "Query"
- }
+ "errors": [
+ {
+ "message": "Expected an object or a null-token, but found a String-token with value `string`.",
+ "locations": [
+ {
+ "line": 1,
+ "column": 40
+ }
+ ],
+ "extensions": {
+ "code": "HC0011"
+ }
+ }
+ ]
}
}
80D8
SHOULD assume application/json content-type when accept is missing
+58B1
SHOULD use 4xx or 5xx status codes on number {extensions} parameter when accepting application/json
{
"statusText": "OK",
"status": 200,
@@ -104,12 +121,87 @@ The server SHOULD support these, but is not required.
"transfer-encoding": "chunked",
"server": "Kestrel",
"date": "",
- "content-type": "application/graphql-response+json;charset=utf-8"
+ "content-type": "application/json; charset=utf-8"
},
"body": {
- "data": {
- "__typename": "Query"
- }
+ "errors": [
+ {
+ "message": "Expected an object or a null-token, but found a Integer-token with value `0`.",
+ "locations": [
+ {
+ "line": 1,
+ "column": 40
+ }
+ ],
+ "extensions": {
+ "code": "HC0011"
+ }
+ }
+ ]
+ }
+}
+
+58B2
SHOULD use 4xx or 5xx status codes on boolean {extensions} parameter when accepting application/json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "transfer-encoding": "chunked",
+ "server": "Kestrel",
+ "date": "",
+ "content-type": "application/json; charset=utf-8"
+ },
+ "body": {
+ "errors": [
+ {
+ "message": "Expected an object or a null-token, but found a Name-token with value `false`.",
+ "locations": [
+ {
+ "line": 1,
+ "column": 40
+ }
+ ],
+ "extensions": {
+ "code": "HC0011"
+ }
+ }
+ ]
+ }
+}
+
+58B3
SHOULD use 4xx or 5xx status codes on array {extensions} parameter when accepting application/json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "transfer-encoding": "chunked",
+ "server": "Kestrel",
+ "date": "",
+ "content-type": "application/json; charset=utf-8"
+ },
+ "body": {
+ "errors": [
+ {
+ "message": "Expected an object or a null-token, but found a LeftBracket-token with value ``.",
+ "locations": [
+ {
+ "line": 1,
+ "column": 40
+ }
+ ],
+ "extensions": {
+ "code": "HC0011"
+ }
+ }
+ ]
}
}
diff --git a/implementations/hotchocolate/report.json b/implementations/hotchocolate/report.json
index ddfc3f4e..fd5d4049 100644
--- a/implementations/hotchocolate/report.json
+++ b/implementations/hotchocolate/report.json
@@ -1,7 +1,7 @@
{
- "total": 60,
- "ok": 58,
+ "total": 68,
+ "ok": 64,
"notice": 0,
- "warn": 2,
+ "warn": 4,
"error": 0
}
diff --git a/implementations/lighthouse/README.md b/implementations/lighthouse/README.md
index 49f21d60..07b1f953 100644
--- a/implementations/lighthouse/README.md
+++ b/implementations/lighthouse/README.md
@@ -3,17 +3,18 @@
4655
MUST accept application/json and match the content-type47DE
SHOULD accept */* and use application/json for the content-type80D8
SHOULD assume application/json content-type when accept is missing47DE
SHOULD accept */* and use application/graphql-response+json or application/json for the content-type80D8
SHOULD assume application/json or application/graphql-response+json content-type when accept is missing82A3
MUST use utf-8 encoding when respondingBF61
MUST accept utf-8 encoded request78D5
MUST assume utf-8 in request if encoding is unspecified5A70
MAY accept application/x-www-form-urlencoded formatted GET requests03D4
MUST accept application/json POST requestsA5BF
MAY use 400 status code when request body is missing on POST34A2
SHOULD allow string {query} parameter when accepting application/graphql-response+json34A2
MUST allow string {query} parameter when accepting application/graphql-response+json13EE
MUST allow string {query} parameter when accepting application/json8161
SHOULD allow string {operationName} parameter when accepting application/graphql-response+json8161
MUST allow string {operationName} parameter when accepting application/graphql-response+jsonB8B3
MUST allow string {operationName} parameter when accepting application/json94B0
SHOULD allow null {variables} parameter when accepting application/graphql-response+json94B0
MUST allow null {variables} parameter when accepting application/graphql-response+json0220
MUST allow null {variables} parameter when accepting application/json94B1
SHOULD allow null {operationName} parameter when accepting application/graphql-response+json94B1
MUST allow null {operationName} parameter when accepting application/graphql-response+json0221
MUST allow null {operationName} parameter when accepting application/json94B2
SHOULD allow null {extensions} parameter when accepting application/graphql-response+json94B2
MUST allow null {extensions} parameter when accepting application/graphql-response+json0222
MUST allow null {extensions} parameter when accepting application/json2EA1
SHOULD allow map {variables} parameter when accepting application/graphql-response+json2EA1
MUST allow map {variables} parameter when accepting application/graphql-response+json28B9
MUST allow map {variables} parameter when accepting application/jsonD6D5
MAY allow URL-encoded JSON string {variables} parameter in GETs when accepting application/graphql-response+json6A70
MAY allow URL-encoded JSON string {variables} parameter in GETs when accepting application/json428F
SHOULD allow map {extensions} parameter when accepting application/graphql-response+json428F
MUST allow map {extensions} parameter when accepting application/graphql-response+json1B7A
MUST allow map {extensions} parameter when accepting application/jsonB6DC
MAY use 4xx or 5xx status codes on JSON parsing failureBCF8
MAY use 400 status code on JSON parsing failure58B0
MAY use 400 status code on string {extensions} parameter
-{
- "statusText": "OK",
- "status": 200,
- "headers": {
- "x-powered-by": "PHP/8.2.19",
- "host": "localhost:4000",
- "date": "",
- "content-type": "application/json",
- "connection": "close",
- "cache-control": "no-cache, private"
- },
- "body": {
- "data": {
- "__typename": "Query"
- }
- }
-}
-
-58B1
MAY use 400 status code on number {extensions} parameter
-{
- "statusText": "OK",
- "status": 200,
- "headers": {
- "x-powered-by": "PHP/8.2.19",
- "host": "localhost:4000",
- "date": "",
- "content-type": "application/json",
- "connection": "close",
- "cache-control": "no-cache, private"
- },
- "body": {
- "data": {
- "__typename": "Query"
- }
- }
-}
-
-58B2
MAY use 400 status code on boolean {extensions} parameter
-{
- "statusText": "OK",
- "status": 200,
- "headers": {
- "x-powered-by": "PHP/8.2.19",
- "host": "localhost:4000",
- "date": "",
- "content-type": "application/json",
- "connection": "close",
- "cache-control": "no-cache, private"
- },
- "body": {
- "data": {
- "__typename": "Query"
- }
- }
-}
-
-58B3
MAY use 400 status code on array {extensions} parameter
-{
- "statusText": "OK",
- "status": 200,
- "headers": {
- "x-powered-by": "PHP/8.2.19",
- "host": "localhost:4000",
- "date": "",
- "content-type": "application/json",
- "connection": "close",
- "cache-control": "no-cache, private"
- },
- "body": {
- "data": {
- "__typename": "Query"
- }
- }
-}
-
-8764
MAY use 4xx or 5xx status codes if parameters are invalid
22EB
SHOULD accept application/graphql-response+json and match the content-type
+2330
SHOULD use 4xx status code on string {extensions} parameter when accepting application/graphql-response+json
{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "x-powered-by": "PHP/8.2.19",
+ "host": "localhost:4000",
+ "date": "",
+ "content-type": "application/json",
+ "connection": "close",
+ "cache-control": "no-cache, private"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+2331
SHOULD use 4xx status code on number {extensions} parameter when accepting application/graphql-response+json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "x-powered-by": "PHP/8.2.19",
+ "host": "localhost:4000",
+ "date": "",
+ "content-type": "application/json",
+ "connection": "close",
+ "cache-control": "no-cache, private"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+2332
SHOULD use 4xx status code on boolean {extensions} parameter when accepting application/graphql-response+json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "x-powered-by": "PHP/8.2.19",
+ "host": "localhost:4000",
+ "date": "",
+ "content-type": "application/json",
+ "connection": "close",
+ "cache-control": "no-cache, private"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+2333
SHOULD use 4xx status code on array {extensions} parameter when accepting application/graphql-response+json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "x-powered-by": "PHP/8.2.19",
+ "host": "localhost:4000",
+ "date": "",
+ "content-type": "application/json",
+ "connection": "close",
+ "cache-control": "no-cache, private"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+58B0
SHOULD use 4xx or 5xx status codes on string {extensions} parameter when accepting application/json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "x-powered-by": "PHP/8.2.19",
+ "host": "localhost:4000",
+ "date": "",
+ "content-type": "application/json",
+ "connection": "close",
+ "cache-control": "no-cache, private"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+58B1
SHOULD use 4xx or 5xx status codes on number {extensions} parameter when accepting application/json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "x-powered-by": "PHP/8.2.19",
+ "host": "localhost:4000",
+ "date": "",
+ "content-type": "application/json",
+ "connection": "close",
+ "cache-control": "no-cache, private"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+58B2
SHOULD use 4xx or 5xx status codes on boolean {extensions} parameter when accepting application/json
+{
"statusText": "OK",
"status": 200,
@@ -4203,9 +4250,32 @@ The server SHOULD support these, but is not required.
865D
SHOULD use 4xx or 5xx status codes on document parsing failure when accepting application/graphql-response+json
+58B3
SHOULD use 4xx or 5xx status codes on array {extensions} parameter when accepting application/json
{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "x-powered-by": "PHP/8.2.19",
+ "host": "localhost:4000",
+ "date": "",
+ "content-type": "application/json",
+ "connection": "close",
+ "cache-control": "no-cache, private"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+556A
SHOULD use 400 status code on document parsing failure when accepting application/graphql-response+json
+{
"statusText": "OK",
"status": 200,
@@ -4238,7 +4308,7 @@ The server SHOULD support these, but is not required.
556A
SHOULD use 400 status code on document parsing failure when accepting application/graphql-response+json
+74FF
SHOULD use 400 status code on document validation failure when accepting application/graphql-response+json
{
@@ -4255,11 +4325,11 @@ The server SHOULD support these, but is not required.
"body": {
"errors": [
{
- "message": "Syntax Error: Expected Name, found ",
+ "message": "Syntax Error: Expected Name, found Int \"8\"",
"locations": [
{
"line": 1,
- "column": 2
+ "column": 3
}
],
"extensions": {
@@ -4273,9 +4343,9 @@ The server SHOULD support these, but is not required.
51FE
SHOULD use 4xx or 5xx status codes on document validation failure when accepting application/graphql-response+json
+86EE
SHOULD use a status code of 400 on variable coercion failure when accepting application/graphql-response+json
{
"statusText": "OK",
"status": 200,
@@ -4290,16 +4360,16 @@ The server SHOULD support these, but is not required.
"body": {
"errors": [
{
- "message": "Syntax Error: Expected Name, found Int \"8\"",
+ "message": "Variable \"$id\" is never used in operation \"CoerceFailure\".",
"locations": [
{
"line": 1,
- "column": 3
+ "column": 21
}
],
"extensions": {
- "line": 382,
- "file": "/app/vendor/webonyx/graphql-php/src/Language/Parser.php"
+ "line": 41,
+ "file": "/app/vendor/webonyx/graphql-php/src/Validator/Rules/NoUnusedVariables.php"
}
}
]
@@ -4308,9 +4378,129 @@ The server SHOULD support these, but is not required.
74FF
SHOULD use 400 status code on document validation failure when accepting application/graphql-response+json
+22EB
MUST accept application/graphql-response+json and match the content-type
{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "x-powered-by": "PHP/8.2.19",
+ "host": "localhost:4000",
+ "date": "",
+ "content-type": "application/json",
+ "connection": "close",
+ "cache-control": "no-cache, private"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+0280
MUST use 4xx or 5xx status codes on string {extensions} parameter when accepting application/graphql-response+json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "x-powered-by": "PHP/8.2.19",
+ "host": "localhost:4000",
+ "date": "",
+ "content-type": "application/json",
+ "connection": "close",
+ "cache-control": "no-cache, private"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+0281
MUST use 4xx or 5xx status codes on number {extensions} parameter when accepting application/graphql-response+json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "x-powered-by": "PHP/8.2.19",
+ "host": "localhost:4000",
+ "date": "",
+ "content-type": "application/json",
+ "connection": "close",
+ "cache-control": "no-cache, private"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+0282
MUST use 4xx or 5xx status codes on boolean {extensions} parameter when accepting application/graphql-response+json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "x-powered-by": "PHP/8.2.19",
+ "host": "localhost:4000",
+ "date": "",
+ "content-type": "application/json",
+ "connection": "close",
+ "cache-control": "no-cache, private"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+0283
MUST use 4xx or 5xx status codes on array {extensions} parameter when accepting application/graphql-response+json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "x-powered-by": "PHP/8.2.19",
+ "host": "localhost:4000",
+ "date": "",
+ "content-type": "application/json",
+ "connection": "close",
+ "cache-control": "no-cache, private"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+865D
MUST use 4xx or 5xx status codes on document parsing failure when accepting application/graphql-response+json
+{
"statusText": "OK",
"status": 200,
@@ -4325,11 +4515,11 @@ The server SHOULD support these, but is not required.
"body": {
"errors": [
{
- "message": "Syntax Error: Expected Name, found Int \"8\"",
+ "message": "Syntax Error: Expected Name, found ",
"locations": [
{
"line": 1,
- "column": 3
+ "column": 2
}
],
"extensions": {
@@ -4343,9 +4533,9 @@ The server SHOULD support these, but is not required.
86EE
SHOULD use a status code of 400 on variable coercion failure when accepting application/graphql-response+json
+51FE
MUST use 4xx or 5xx status codes on document validation failure when accepting application/graphql-response+json
{
"statusText": "OK",
"status": 200,
@@ -4360,16 +4550,16 @@ The server SHOULD support these, but is not required.
"body": {
"errors": [
{
- "message": "Variable \"$id\" is never used in operation \"CoerceFailure\".",
+ "message": "Syntax Error: Expected Name, found Int \"8\"",
"locations": [
{
"line": 1,
- "column": 21
+ "column": 3
}
],
"extensions": {
- "line": 41,
- "file": "/app/vendor/webonyx/graphql-php/src/Validator/Rules/NoUnusedVariables.php"
+ "line": 382,
+ "file": "/app/vendor/webonyx/graphql-php/src/Language/Parser.php"
}
}
]
@@ -4379,4 +4569,3 @@ The server SHOULD support these, but is not required.
4655
MUST accept application/json and match the content-type47DE
SHOULD accept */* and use application/json for the content-type80D8
SHOULD assume application/json content-type when accept is missing47DE
SHOULD accept */* and use application/graphql-response+json or application/json for the content-type80D8
SHOULD assume application/json or application/graphql-response+json content-type when accept is missing82A3
MUST use utf-8 encoding when respondingBF61
MUST accept utf-8 encoded request78D5
MUST assume utf-8 in request if encoding is unspecified423L
MAY use 400 status code on missing {query} parameterLKJ0
MAY use 400 status code on object {query} parameterLKJ3
MAY use 400 status code on array {query} parameter34A2
SHOULD allow string {query} parameter when accepting application/graphql-response+json34A2
MUST allow string {query} parameter when accepting application/graphql-response+json13EE
MUST allow string {query} parameter when accepting application/json6C00
MAY use 400 status code on object {operationName} parameter6C03
MAY use 400 status code on array {operationName} parameter8161
SHOULD allow string {operationName} parameter when accepting application/graphql-response+json8161
MUST allow string {operationName} parameter when accepting application/graphql-response+jsonB8B3
MUST allow string {operationName} parameter when accepting application/json94B0
SHOULD allow null {variables} parameter when accepting application/graphql-response+json94B0
MUST allow null {variables} parameter when accepting application/graphql-response+json0220
MUST allow null {variables} parameter when accepting application/json94B1
SHOULD allow null {operationName} parameter when accepting application/graphql-response+json94B1
MUST allow null {operationName} parameter when accepting application/graphql-response+json0221
MUST allow null {operationName} parameter when accepting application/json4760
MAY use 400 status code on string {variables} parameter4763
MAY use 400 status code on array {variables} parameter2EA1
SHOULD allow map {variables} parameter when accepting application/graphql-response+json2EA1
MUST allow map {variables} parameter when accepting application/graphql-response+json28B9
MUST allow map {variables} parameter when accepting application/jsonD6D5
MAY allow URL-encoded JSON string {variables} parameter in GETs when accepting application/graphql-response+json6A70
MAY allow URL-encoded JSON string {variables} parameter in GETs when accepting application/json58B0
MAY use 400 status code on string {extensions} parameter58B1
MAY use 400 status code on number {extensions} parameter58B2
MAY use 400 status code on boolean {extensions} parameter58B3
MAY use 400 status code on array {extensions} parameter428F
SHOULD allow map {extensions} parameter when accepting application/graphql-response+json0280
MUST use 4xx or 5xx status codes on string {extensions} parameter when accepting application/graphql-response+json0281
MUST use 4xx or 5xx status codes on number {extensions} parameter when accepting application/graphql-response+json0282
MUST use 4xx or 5xx status codes on boolean {extensions} parameter when accepting application/graphql-response+json0283
MUST use 4xx or 5xx status codes on array {extensions} parameter when accepting application/graphql-response+json2330
SHOULD use 4xx status code on string {extensions} parameter when accepting application/graphql-response+json2331
SHOULD use 4xx status code on number {extensions} parameter when accepting application/graphql-response+json2332
SHOULD use 4xx status code on boolean {extensions} parameter when accepting application/graphql-response+json2333
SHOULD use 4xx status code on array {extensions} parameter when accepting application/graphql-response+json58B0
SHOULD use 4xx or 5xx status codes on string {extensions} parameter when accepting application/json58B1
SHOULD use 4xx or 5xx status codes on number {extensions} parameter when accepting application/json58B2
SHOULD use 4xx or 5xx status codes on boolean {extensions} parameter when accepting application/json58B3
SHOULD use 4xx or 5xx status codes on array {extensions} parameter when accepting application/json428F
MUST allow map {extensions} parameter when accepting application/graphql-response+json1B7A
MUST allow map {extensions} parameter when accepting application/jsonB6DC
MAY use 4xx or 5xx status codes on JSON parsing failureBCF8
MAY use 400 status code on JSON parsing failure8764
MAY use 4xx or 5xx status codes if parameters are invalid3E3A
MAY use 400 status code if parameters are invalid7B9B
SHOULD use a status code of 200 on variable coercion failure when accepting application/json865D
SHOULD use 4xx or 5xx status codes on document parsing failure when accepting application/graphql-response+json865D
MUST use 4xx or 5xx status codes on document parsing failure when accepting application/graphql-response+json556A
SHOULD use 400 status code on document parsing failure when accepting application/graphql-response+json51FE
SHOULD use 4xx or 5xx status codes on document validation failure when accepting application/graphql-response+json51FE
MUST use 4xx or 5xx status codes on document validation failure when accepting application/graphql-response+json74FF
SHOULD use 400 status code on document validation failure when accepting application/graphql-response+json22EB
SHOULD accept application/graphql-response+json and match the content-type
-{
- "statusText": "OK",
- "status": 200,
- "headers": {
- "keep-alive": "timeout=72",
- "date": "",
- "content-type": "application/json; charset=utf-8",
- "content-length": "31",
- "connection": "keep-alive"
- },
- "body": {
- "data": {
- "__typename": "Query"
- }
- }
-}
-
-94B2
SHOULD allow null {extensions} parameter when accepting application/graphql-response+json
-{
- "statusText": "Bad Request",
- "status": 400,
- "headers": {
- "keep-alive": "timeout=72",
- "date": "",
- "content-type": "application/json; charset=utf-8",
- "content-length": "69",
- "connection": "keep-alive"
- },
- "body": {
- "errors": [
- {
- "message": "body/extensions must be object"
- }
- ],
- "data": null
- }
-}
-
-572B
SHOULD use 200 status code on document parsing failure when accepting application/json
22EB
MUST accept application/graphql-response+json and match the content-type
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "keep-alive": "timeout=72",
+ "date": "",
+ "content-type": "application/json; charset=utf-8",
+ "content-length": "31",
+ "connection": "keep-alive"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+94B2
MUST allow null {extensions} parameter when accepting application/graphql-response+json
+{
+ "statusText": "Bad Request",
+ "status": 400,
+ "headers": {
+ "keep-alive": "timeout=72",
+ "date": "",
+ "content-type": "application/json; charset=utf-8",
+ "content-length": "69",
+ "connection": "keep-alive"
+ },
+ "body": {
+ "errors": [
+ {
+ "message": "body/extensions must be object"
+ }
+ ],
+ "data": null
+ }
+}
+
+0222
MUST allow null {extensions} parameter when accepting application/json
4655
MUST accept application/json and match the content-type47DE
SHOULD accept */* and use application/json for the content-type80D8
SHOULD assume application/json content-type when accept is missing47DE
SHOULD accept */* and use application/graphql-response+json or application/json for the content-type80D8
SHOULD assume application/json or application/graphql-response+json content-type when accept is missing82A3
MUST use utf-8 encoding when respondingBF61
MUST accept utf-8 encoded request78D5
MUST assume utf-8 in request if encoding is unspecified423L
MAY use 400 status code on missing {query} parameterLKJ1
MAY use 400 status code on number {query} parameterLKJ2
MAY use 400 status code on boolean {query} parameter34A2
SHOULD allow string {query} parameter when accepting application/graphql-response+json34A2
MUST allow string {query} parameter when accepting application/graphql-response+json13EE
MUST allow string {query} parameter when accepting application/json6C00
MAY use 400 status code on object {operationName} parameter6C01
MAY use 400 status code on number {operationName} parameter6C02
MAY use 400 status code on boolean {operationName} parameter6C03
MAY use 400 status code on array {operationName} parameter8161
SHOULD allow string {operationName} parameter when accepting application/graphql-response+json8161
MUST allow string {operationName} parameter when accepting application/graphql-response+jsonB8B3
MUST allow string {operationName} parameter when accepting application/json94B0
SHOULD allow null {variables} parameter when accepting application/graphql-response+json94B0
MUST allow null {variables} parameter when accepting application/graphql-response+json0220
MUST allow null {variables} parameter when accepting application/json94B1
SHOULD allow null {operationName} parameter when accepting application/graphql-response+json94B1
MUST allow null {operationName} parameter when accepting application/graphql-response+json0221
MUST allow null {operationName} parameter when accepting application/json94B2
SHOULD allow null {extensions} parameter when accepting application/graphql-response+json94B2
MUST allow null {extensions} parameter when accepting application/graphql-response+json0222
MUST allow null {extensions} parameter when accepting application/json4760
MAY use 400 status code on string {variables} parameter4761
MAY use 400 status code on number {variables} parameter4762
MAY use 400 status code on boolean {variables} parameter2EA1
SHOULD allow map {variables} parameter when accepting application/graphql-response+json2EA1
MUST allow map {variables} parameter when accepting application/graphql-response+json28B9
MUST allow map {variables} parameter when accepting application/json428F
SHOULD allow map {extensions} parameter when accepting application/graphql-response+json428F
MUST allow map {extensions} parameter when accepting application/graphql-response+json1B7A
MUST allow map {extensions} parameter when accepting application/jsonB6DC
MAY use 4xx or 5xx status codes on JSON parsing failureBCF8
MAY use 400 status code on JSON parsing failure8764
MAY use 4xx or 5xx status codes if parameters are invalid3E3A
MAY use 400 status code if parameters are invalid865D
SHOULD use 4xx or 5xx status codes on document parsing failure when accepting application/graphql-response+json865D
MUST use 4xx or 5xx status codes on document parsing failure when accepting application/graphql-response+json556A
SHOULD use 400 status code on document parsing failure when accepting application/graphql-response+jsonD586
SHOULD not contain the data entry on document parsing failure when accepting application/graphql-response+json51FE
SHOULD use 4xx or 5xx status codes on document validation failure when accepting application/graphql-response+json51FE
MUST use 4xx or 5xx status codes on document validation failure when accepting application/graphql-response+json74FF
SHOULD use 400 status code on document validation failure when accepting application/graphql-response+json5E5B
SHOULD not contain the data entry on document validation failure when accepting application/graphql-response+json86EE
SHOULD use a status code of 400 on variable coercion failure when accepting application/graphql-response+json58B0
MAY use 400 status code on string {extensions} parameter
+2330
SHOULD use 4xx status code on string {extensions} parameter when accepting application/graphql-response+json
{
"statusText": "OK",
"status": 200,
@@ -229,9 +235,9 @@ The server MAY support these, but are truly optional. These are suggestio
58B1
MAY use 400 status code on number {extensions} parameter
+2331
SHOULD use 4xx status code on number {extensions} parameter when accepting application/graphql-response+json
{
"statusText": "OK",
"status": 200,
@@ -251,9 +257,9 @@ The server MAY support these, but are truly optional. These are suggestio
58B2
MAY use 400 status code on boolean {extensions} parameter
+2332
SHOULD use 4xx status code on boolean {extensions} parameter when accepting application/graphql-response+json
{
"statusText": "OK",
"status": 200,
@@ -273,9 +279,9 @@ The server MAY support these, but are truly optional. These are suggestio
58B3
MAY use 400 status code on array {extensions} parameter
+2333
SHOULD use 4xx status code on array {extensions} parameter when accepting application/graphql-response+json
{
"statusText": "OK",
"status": 200,
@@ -295,14 +301,75 @@ The server MAY support these, but are truly optional. These are suggestio
22EB
SHOULD accept application/graphql-response+json and match the content-type
+58B0
SHOULD use 4xx or 5xx status codes on string {extensions} parameter when accepting application/json
{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "keep-alive": "timeout=5",
+ "date": "",
+ "content-type": "application/json; charset=utf-8",
+ "content-length": "31",
+ "connection": "keep-alive"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+58B1
SHOULD use 4xx or 5xx status codes on number {extensions} parameter when accepting application/json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "keep-alive": "timeout=5",
+ "date": "",
+ "content-type": "application/json; charset=utf-8",
+ "content-length": "31",
+ "connection": "keep-alive"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+58B2
SHOULD use 4xx or 5xx status codes on boolean {extensions} parameter when accepting application/json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "keep-alive": "timeout=5",
+ "date": "",
+ "content-type": "application/json; charset=utf-8",
+ "content-length": "31",
+ "connection": "keep-alive"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+58B3
SHOULD use 4xx or 5xx status codes on array {extensions} parameter when accepting application/json
+{
"statusText": "OK",
"status": 200,
@@ -414,3 +481,117 @@ The server SHOULD support these, but is not required.
22EB
MUST accept application/graphql-response+json and match the content-type
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "keep-alive": "timeout=5",
+ "date": "",
+ "content-type": "application/json; charset=utf-8",
+ "content-length": "31",
+ "connection": "keep-alive"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+0280
MUST use 4xx or 5xx status codes on string {extensions} parameter when accepting application/graphql-response+json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "keep-alive": "timeout=5",
+ "date": "",
+ "content-type": "application/json; charset=utf-8",
+ "content-length": "31",
+ "connection": "keep-alive"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+0281
MUST use 4xx or 5xx status codes on number {extensions} parameter when accepting application/graphql-response+json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "keep-alive": "timeout=5",
+ "date": "",
+ "content-type": "application/json; charset=utf-8",
+ "content-length": "31",
+ "connection": "keep-alive"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+0282
MUST use 4xx or 5xx status codes on boolean {extensions} parameter when accepting application/graphql-response+json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "keep-alive": "timeout=5",
+ "date": "",
+ "content-type": "application/json; charset=utf-8",
+ "content-length": "31",
+ "connection": "keep-alive"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+0283
MUST use 4xx or 5xx status codes on array {extensions} parameter when accepting application/graphql-response+json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "keep-alive": "timeout=5",
+ "date": "",
+ "content-type": "application/json; charset=utf-8",
+ "content-length": "31",
+ "connection": "keep-alive"
+ },
+ "body": {
+ "data": {
+ "__typename": "Query"
+ }
+ }
+}
+
+4655
MUST accept application/json and match the content-type47DE
SHOULD accept */* and use application/json for the content-type80D8
SHOULD assume application/json content-type when accept is missing47DE
SHOULD accept */* and use application/graphql-response+json or application/json for the content-type80D8
SHOULD assume application/json or application/graphql-response+json content-type when accept is missing82A3
MUST use utf-8 encoding when respondingBF61
MUST accept utf-8 encoded request78D5
MUST assume utf-8 in request if encoding is unspecified2C94
MUST accept POST requests5A70
MAY accept application/x-www-form-urlencoded formatted GET requests03D4
MUST accept application/json POST requests34A2
SHOULD allow string {query} parameter when accepting application/graphql-response+json8161
SHOULD allow string {operationName} parameter when accepting application/graphql-response+json2EA1
SHOULD allow map {variables} parameter when accepting application/graphql-response+json34A2
MUST allow string {query} parameter when accepting application/graphql-response+json8161
MUST allow string {operationName} parameter when accepting application/graphql-response+json2EA1
MUST allow map {variables} parameter when accepting application/graphql-response+jsonD6D5
MAY allow URL-encoded JSON string {variables} parameter in GETs when accepting application/graphql-response+json428F
SHOULD allow map {extensions} parameter when accepting application/graphql-response+json428F
MUST allow map {extensions} parameter when accepting application/graphql-response+json572B
SHOULD use 200 status code on document parsing failure when accepting application/jsonFDE2
SHOULD use 200 status code on document validation failure when accepting application/json7B9B
SHOULD use a status code of 200 on variable coercion failure when accepting application/json58B0
MAY use 400 status code on string {extensions} parameter
+B6DC
MAY use 4xx or 5xx status codes on JSON parsing failure
{
"statusText": "OK",
"status": 200,
@@ -648,7 +648,7 @@ The server MAY support these, but are truly optional. These are suggestio
58B1
MAY use 400 status code on number {extensions} parameter
+BCF8
MAY use 400 status code on JSON parsing failure
{
@@ -682,9 +682,9 @@ The server MAY support these, but are truly optional. These are suggestio
58B2
MAY use 400 status code on boolean {extensions} parameter
+8764
MAY use 4xx or 5xx status codes if parameters are invalid
{
"statusText": "OK",
"status": 200,
@@ -716,7 +716,7 @@ The server MAY support these, but are truly optional. These are suggestio
58B3
MAY use 400 status code on array {extensions} parameter
+3E3A
MAY use 400 status code if parameters are invalid
{
@@ -750,7 +750,12 @@ The server MAY support these, but are truly optional. These are suggestio
B6DC
MAY use 4xx or 5xx status codes on JSON parsing failure
+2330
SHOULD use 4xx status code on string {extensions} parameter when accepting application/graphql-response+json
{
@@ -784,9 +789,9 @@ The server MAY support these, but are truly optional. These are suggestio
BCF8
MAY use 400 status code on JSON parsing failure
+2331
SHOULD use 4xx status code on number {extensions} parameter when accepting application/graphql-response+json
{
"statusText": "OK",
"status": 200,
@@ -818,9 +823,9 @@ The server MAY support these, but are truly optional. These are suggestio
8764
MAY use 4xx or 5xx status codes if parameters are invalid
+2332
SHOULD use 4xx status code on boolean {extensions} parameter when accepting application/graphql-response+json
{
"statusText": "OK",
"status": 200,
@@ -852,9 +857,9 @@ The server MAY support these, but are truly optional. These are suggestio
3E3A
MAY use 400 status code if parameters are invalid
+2333
SHOULD use 4xx status code on array {extensions} parameter when accepting application/graphql-response+json
{
"statusText": "OK",
"status": 200,
@@ -886,14 +891,9 @@ The server MAY support these, but are truly optional. These are suggestio
22EB
SHOULD accept application/graphql-response+json and match the content-type
+58B0
SHOULD use 4xx or 5xx status codes on string {extensions} parameter when accepting application/json
{
"statusText": "OK",
"status": 200,
@@ -925,9 +925,9 @@ The server SHOULD support these, but is not required.
94B0
SHOULD allow null {variables} parameter when accepting application/graphql-response+json
+58B1
SHOULD use 4xx or 5xx status codes on number {extensions} parameter when accepting application/json
{
"statusText": "OK",
"status": 200,
@@ -959,9 +959,9 @@ The server SHOULD support these, but is not required.
94B1
SHOULD allow null {operationName} parameter when accepting application/graphql-response+json
+58B2
SHOULD use 4xx or 5xx status codes on boolean {extensions} parameter when accepting application/json
{
"statusText": "OK",
"status": 200,
@@ -993,9 +993,9 @@ The server SHOULD support these, but is not required.
94B2
SHOULD allow null {extensions} parameter when accepting application/graphql-response+json
+58B3
SHOULD use 4xx or 5xx status codes on array {extensions} parameter when accepting application/json
{
"statusText": "OK",
"status": 200,
@@ -1027,9 +1027,9 @@ The server SHOULD support these, but is not required.
865D
SHOULD use 4xx or 5xx status codes on document parsing failure when accepting application/graphql-response+json
+556A
SHOULD use 400 status code on document parsing failure when accepting application/graphql-response+json
{
"statusText": "OK",
"status": 200,
@@ -1061,7 +1061,7 @@ The server SHOULD support these, but is not required.
556A
SHOULD use 400 status code on document parsing failure when accepting application/graphql-response+json
+74FF
SHOULD use 400 status code on document validation failure when accepting application/graphql-response+json
{
@@ -1095,9 +1095,9 @@ The server SHOULD support these, but is not required.
51FE
SHOULD use 4xx or 5xx status codes on document validation failure when accepting application/graphql-response+json
+86EE
SHOULD use a status code of 400 on variable coercion failure when accepting application/graphql-response+json
{
"statusText": "OK",
"status": 200,
@@ -1129,9 +1129,14 @@ The server SHOULD support these, but is not required.
74FF
SHOULD use 400 status code on document validation failure when accepting application/graphql-response+json
+22EB
MUST accept application/graphql-response+json and match the content-type
{
"statusText": "OK",
"status": 200,
@@ -1163,9 +1168,9 @@ The server SHOULD support these, but is not required.
86EE
SHOULD use a status code of 400 on variable coercion failure when accepting application/graphql-response+json
+13EE
MUST allow string {query} parameter when accepting application/json
{
"statusText": "OK",
"status": 200,
@@ -1197,12 +1202,7 @@ The server SHOULD support these, but is not required.
13EE
MUST allow string {query} parameter when accepting application/json
+B8B3
MUST allow string {operationName} parameter when accepting application/json
{
@@ -1236,7 +1236,7 @@ The server MUST support these.
B8B3
MUST allow string {operationName} parameter when accepting application/json
+94B0
MUST allow null {variables} parameter when accepting application/graphql-response+json
{
@@ -1304,6 +1304,40 @@ The server MUST support these.
94B1
MUST allow null {operationName} parameter when accepting application/graphql-response+json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "vary": "Accept-Encoding",
+ "transfer-encoding": "chunked",
+ "set-cookie": "",
+ "server": "cloudflare",
+ "last-modified": "Mon, 02 Dec 2024 20:56:39 GMT",
+ "expires": "",
+ "etag": "W/\"cffa996b9fb9470d034909269c4d8d0f\"",
+ "date": "",
+ "content-type": "application/json",
+ "content-encoding": "br",
+ "connection": "keep-alive",
+ "cf-ray": "",
+ "cf-cache-status": "HIT",
+ "cache-control": "public, max-age=3600",
+ "age": ""
+ },
+ "body": {
+ "errors": [
+ {
+ "message": "This endpoint has been removed. If you have any questions, reach out to support@thegraph.zendesk.com"
+ }
+ ]
+ }
+}
+
+0221
MUST allow null {operationName} parameter when accepting application/json
94B2
MUST allow null {extensions} parameter when accepting application/graphql-response+json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "vary": "Accept-Encoding",
+ "transfer-encoding": "chunked",
+ "set-cookie": "",
+ "server": "cloudflare",
+ "last-modified": "Mon, 02 Dec 2024 20:56:39 GMT",
+ "expires": "",
+ "etag": "W/\"cffa996b9fb9470d034909269c4d8d0f\"",
+ "date": "",
+ "content-type": "application/json",
+ "content-encoding": "br",
+ "connection": "keep-alive",
+ "cf-ray": "",
+ "cf-cache-status": "HIT",
+ "cache-control": "public, max-age=3600",
+ "age": ""
+ },
+ "body": {
+ "errors": [
+ {
+ "message": "This endpoint has been removed. If you have any questions, reach out to support@thegraph.zendesk.com"
+ }
+ ]
+ }
+}
+
+0222
MUST allow null {extensions} parameter when accepting application/json
0280
MUST use 4xx or 5xx status codes on string {extensions} parameter when accepting application/graphql-response+json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "vary": "Accept-Encoding",
+ "transfer-encoding": "chunked",
+ "set-cookie": "",
+ "server": "cloudflare",
+ "last-modified": "Mon, 02 Dec 2024 20:56:39 GMT",
+ "expires": "",
+ "etag": "W/\"cffa996b9fb9470d034909269c4d8d0f\"",
+ "date": "",
+ "content-type": "application/json",
+ "content-encoding": "br",
+ "connection": "keep-alive",
+ "cf-ray": "",
+ "cf-cache-status": "HIT",
+ "cache-control": "public, max-age=3600",
+ "age": ""
+ },
+ "body": {
+ "errors": [
+ {
+ "message": "This endpoint has been removed. If you have any questions, reach out to support@thegraph.zendesk.com"
+ }
+ ]
+ }
+}
+
+0281
MUST use 4xx or 5xx status codes on number {extensions} parameter when accepting application/graphql-response+json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "vary": "Accept-Encoding",
+ "transfer-encoding": "chunked",
+ "set-cookie": "",
+ "server": "cloudflare",
+ "last-modified": "Mon, 02 Dec 2024 20:56:39 GMT",
+ "expires": "",
+ "etag": "W/\"cffa996b9fb9470d034909269c4d8d0f\"",
+ "date": "",
+ "content-type": "application/json",
+ "content-encoding": "br",
+ "connection": "keep-alive",
+ "cf-ray": "",
+ "cf-cache-status": "HIT",
+ "cache-control": "public, max-age=3600",
+ "age": ""
+ },
+ "body": {
+ "errors": [
+ {
+ "message": "This endpoint has been removed. If you have any questions, reach out to support@thegraph.zendesk.com"
+ }
+ ]
+ }
+}
+
+0282
MUST use 4xx or 5xx status codes on boolean {extensions} parameter when accepting application/graphql-response+json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "vary": "Accept-Encoding",
+ "transfer-encoding": "chunked",
+ "set-cookie": "",
+ "server": "cloudflare",
+ "last-modified": "Mon, 02 Dec 2024 20:56:39 GMT",
+ "expires": "",
+ "etag": "W/\"cffa996b9fb9470d034909269c4d8d0f\"",
+ "date": "",
+ "content-type": "application/json",
+ "content-encoding": "br",
+ "connection": "keep-alive",
+ "cf-ray": "",
+ "cf-cache-status": "HIT",
+ "cache-control": "public, max-age=3600",
+ "age": ""
+ },
+ "body": {
+ "errors": [
+ {
+ "message": "This endpoint has been removed. If you have any questions, reach out to support@thegraph.zendesk.com"
+ }
+ ]
+ }
+}
+
+0283
MUST use 4xx or 5xx status codes on array {extensions} parameter when accepting application/graphql-response+json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "vary": "Accept-Encoding",
+ "transfer-encoding": "chunked",
+ "set-cookie": "",
+ "server": "cloudflare",
+ "last-modified": "Mon, 02 Dec 2024 20:56:39 GMT",
+ "expires": "",
+ "etag": "W/\"cffa996b9fb9470d034909269c4d8d0f\"",
+ "date": "",
+ "content-type": "application/json",
+ "content-encoding": "br",
+ "connection": "keep-alive",
+ "cf-ray": "",
+ "cf-cache-status": "HIT",
+ "cache-control": "public, max-age=3600",
+ "age": ""
+ },
+ "body": {
+ "errors": [
+ {
+ "message": "This endpoint has been removed. If you have any questions, reach out to support@thegraph.zendesk.com"
+ }
+ ]
+ }
+}
+
+1B7A
MUST allow map {extensions} parameter when accepting application/json
865D
MUST use 4xx or 5xx status codes on document parsing failure when accepting application/graphql-response+json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "vary": "Accept-Encoding",
+ "transfer-encoding": "chunked",
+ "set-cookie": "",
+ "server": "cloudflare",
+ "last-modified": "Mon, 02 Dec 2024 20:56:39 GMT",
+ "expires": "",
+ "etag": "W/\"cffa996b9fb9470d034909269c4d8d0f\"",
+ "date": "",
+ "content-type": "application/json",
+ "content-encoding": "br",
+ "connection": "keep-alive",
+ "cf-ray": "",
+ "cf-cache-status": "HIT",
+ "cache-control": "public, max-age=3600",
+ "age": ""
+ },
+ "body": {
+ "errors": [
+ {
+ "message": "This endpoint has been removed. If you have any questions, reach out to support@thegraph.zendesk.com"
+ }
+ ]
+ }
+}
+
+51FE
MUST use 4xx or 5xx status codes on document validation failure when accepting application/graphql-response+json
+{
+ "statusText": "OK",
+ "status": 200,
+ "headers": {
+ "vary": "Accept-Encoding",
+ "transfer-encoding": "chunked",
+ "set-cookie": "",
+ "server": "cloudflare",
+ "last-modified": "Mon, 02 Dec 2024 20:56:39 GMT",
+ "expires": "",
+ "etag": "W/\"cffa996b9fb9470d034909269c4d8d0f\"",
+ "date": "",
+ "content-type": "application/json",
+ "content-encoding": "br",
+ "connection": "keep-alive",
+ "cf-ray": "",
+ "cf-cache-status": "HIT",
+ "cache-control": "public, max-age=3600",
+ "age": ""
+ },
+ "body": {
+ "errors": [
+ {
+ "message": "This endpoint has been removed. If you have any questions, reach out to support@thegraph.zendesk.com"
+ }
+ ]
+ }
+}
+
+