# Get pull data for multiple repos


[API catalog](/reference/api/) · [Publisher analytics overview](/reference/api/dvp/latest/) · [Product manual](https://docs.docker.com/docker-hub/repos/manage/trusted-content/insights-analytics/) · [OpenAPI specification](/reference/api/dvp/latest.yaml)

API version: 1.0.0



`GET /repos/pulls`

Gets pull for the given repos.

## Connection and access

[API connection and authentication guidance](/reference/api/dvp/latest/#authentication)


Server: `https://hub.docker.com/api/publisher/analytics/v1`

Effective security: alternatives are OR; schemes within an alternative are AND. An empty array declares no HTTP authentication requirement.

```json
[
  {
    "HubAuth": []
  }
]
```
## Example request

Replace placeholders and provide the required credentials or request body.

```console
curl \
  --request GET \
  --header "Authorization: Bearer ${TOKEN}" \
  --header 'Accept: application/json' \
  'https://hub.docker.com/api/publisher/analytics/v1/repos/pulls?repos=%3CREPOS%3E'
```

## Parameters

### repos

Location: query. Required: yes.

Repositories to fetch data for (maximum of 50 repositories per request).

```json
{
  "description": "Repositories to fetch data for (maximum of 50 repositories per request).",
  "in": "query",
  "name": "repos",
  "pointer": "/paths/~1repos~1pulls/get/parameters/0",
  "required": true,
  "schema": {
    "items": {
      "type": "string"
    },
    "type": "array"
  }
}
```

### timespan

Location: query. Required: no.

Timespan type for fetching data

```json
{
  "description": "Timespan type for fetching data",
  "in": "query",
  "name": "timespan",
  "pointer": "/paths/~1repos~1pulls/get/parameters/1",
  "required": false,
  "schema": {
    "$ref": "#/components/schemas/TimespanType"
  }
}
```

### period

Location: query. Required: no.

Relative period of the period to fetch data

```json
{
  "description": "Relative period of the period to fetch data",
  "in": "query",
  "name": "period",
  "pointer": "/paths/~1repos~1pulls/get/parameters/2",
  "required": false,
  "schema": {
    "$ref": "#/components/schemas/PeriodType"
  }
}
```

### group

Location: query. Required: no.

Field to group the data by

```json
{
  "description": "Field to group the data by",
  "in": "query",
  "name": "group",
  "pointer": "/paths/~1repos~1pulls/get/parameters/3",
  "required": false,
  "schema": {
    "$ref": "#/components/schemas/GroupType"
  }
}
```

## Request and responses

### Response 200 application/json

Success


Schema:

```json
{
  "$ref": "#/components/schemas/ReposPullData"
}
```




Schema example:
```json
{
  "repos": {
    "org2/neo4j": {
      "pulls": [
        {
          "end": "2022-08-07T00:00:00Z",
          "ipCount": 41490,
          "pullCount": 272407,
          "repo": "neo4j",
          "start": "2022-08-01T00:00:00Z"
        },
        {
          "end": "2022-08-14T00:00:00Z",
          "ipCount": 41490,
          "pullCount": 272407,
          "repo": "neo4j",
          "start": "2022-08-08T00:00:00Z"
        }
      ]
    },
    "org2/neo4j-admin": {
      "pulls": [
        {
          "end": "2022-08-07T00:00:00Z",
          "ipCount": 10,
          "pullCount": 11,
          "repo": "neo4j-admin",
          "start": "2022-08-01T00:00:00Z"
        },
        {
          "end": "2022-08-14T00:00:00Z",
          "ipCount": 10,
          "pullCount": 11,
          "repo": "neo4j-admin",
          "start": "2022-08-08T00:00:00Z"
        }
      ]
    }
  }
}
```


## Complete operation contract

```json
{
  "description": "Gets pull for the given repos.",
  "operationId": "getManyReposPulls",
  "parameters": [
    {
      "description": "Repositories to fetch data for (maximum of 50 repositories per request).",
      "in": "query",
      "name": "repos",
      "required": true,
      "schema": {
        "items": {
          "type": "string"
        },
        "type": "array"
      }
    },
    {
      "description": "Timespan type for fetching data",
      "in": "query",
      "name": "timespan",
      "required": false,
      "schema": {
        "$ref": "#/components/schemas/TimespanType"
      }
    },
    {
      "description": "Relative period of the period to fetch data",
      "in": "query",
      "name": "period",
      "required": false,
      "schema": {
        "$ref": "#/components/schemas/PeriodType"
      }
    },
    {
      "description": "Field to group the data by",
      "in": "query",
      "name": "group",
      "required": false,
      "schema": {
        "$ref": "#/components/schemas/GroupType"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ReposPullData"
          }
        }
      },
      "description": "Success"
    }
  },
  "summary": "Get pull data for multiple repos",
  "tags": [
    "namespaces"
  ]
}
```

## Referenced schemas

- [#/components/schemas/GroupType](/reference/api/dvp/latest/schemas/GroupType/)

- [#/components/schemas/PeriodType](/reference/api/dvp/latest/schemas/PeriodType/)

- [#/components/schemas/ReposPullData](/reference/api/dvp/latest/schemas/ReposPullData/)

- [#/components/schemas/TimespanType](/reference/api/dvp/latest/schemas/TimespanType/)




