title: Github GrapQL API returns only the last StatusContext for each context
body: <p>I'm cross-posting the question from <a href="https://github.community/t/statuscontext-should-be-a-list-of-nodes-not-a-node/189261" rel="nofollow noreferrer">here</a>.</p>
  <p>I’m interested in knowing whether it’s possible to fetch all the statuses for all the contexts for a given reference using the GQL API.</p>
  <p>The query that I’m currently doing is the following:</p>
  <pre><code>{
    repository(owner: &quot;owner&quot;, name: &quot;name&quot;) {
      pullRequests(headRefName: &quot;head-ref&quot;, last: 1) {
        nodes {
          id
          commits(first: 10) {
            nodes {
              commit {
                oid
                status {
                  contexts {
                    context
                    createdAt
                    id
                    description
                    state
                  }
                }
              }
            }
          }
        }
      }
    }
  }
  </code></pre>
  <p>This query returns a single status for each status context, and those are the last ones for each:</p>
  <pre><code>{
    &quot;data&quot;: {
      &quot;repository&quot;: {
        &quot;pullRequests&quot;: {
          &quot;nodes&quot;: [
            {
              &quot;id&quot;: &quot;some-id&quot;,
              &quot;commits&quot;: {
                &quot;nodes&quot;: [
                  {
                    &quot;commit&quot;: {
                      &quot;oid&quot;: &quot;some-oid&quot;,
                      &quot;status&quot;: {
                        &quot;contexts&quot;: [
                          {
                            &quot;context&quot;: &quot;context-1&quot;,
                            &quot;createdAt&quot;: &quot;2021-07-06T21:28:26Z&quot;,
                            &quot;id&quot;: &quot;***&quot;,
                            &quot;description&quot;: &quot;Your tests passed!&quot;,
                            &quot;state&quot;: &quot;SUCCESS&quot;
                          },
                          {
                            &quot;context&quot;: &quot;context-2&quot;,
                            &quot;createdAt&quot;: &quot;2021-07-06T21:25:26Z&quot;,
                            &quot;id&quot;: &quot;***&quot;,
                            &quot;description&quot;: &quot;Your tests passed!&quot;,
                            &quot;state&quot;: &quot;SUCCESS&quot;
                          },
                        ]
                      }
                    }
                  }
                ]
              }
            }
          ]
        }
      }
    }
  }
  </code></pre>
  <p>On the other hand, if I use the REST API with this query:</p>
  <pre><code>curl -i -u se7entyse7en:$(cat token) https://api.github.com/repos/owner/name/commits/some-oid/statuses
  </code></pre>
  <p>where some-oid is the corresponding retrieved with the GQL API, the output contains ALL the statuses. In particular, I can see all the statuses of context-1 and context-2 that happened before those that are returned by the GQL API.</p>
  <p>It seems a limitation of the GQL schema given that StatusContext is a node instead of being a list of nodes. Basically, I expect StatusContext to be of type [Status!]! where Status represents a single status for the given context.</p>
  <p>Am I missing something? Is this something expected to be changed in the future? Is the REST API the only option?</p>
  <p>Thanks.</p>