# GitHub User Repositories API

> List a GitHub user's public repositories (name, description, language, stars, and forks) with sorting and cursor pagination.

Source: https://www.sandbase.ai/apis/github/user-repositories
API reference: https://www.sandbase.ai/apis/github/user-repositories#api

## Facts

- Provider: GitHub
- Type: Data API
- Endpoint: `POST https://api.sandbase.ai/v1/api/github/user-repositories`
- Price: From $0.0012 per call
- Capabilities: api, github, developer, code
- Billing: pay per use from one SandBase balance; no provider account or subscription needed

## Call it

`POST https://api.sandbase.ai/v1/api/github/user-repositories` with `Authorization: Bearer $SANDBASE_API_KEY` and the parameters as a JSON body.

| Parameter | Type | Required | Allowed values |
| --- | --- | --- | --- |
| `handle` | string | yes |  |
| `sort` | string | no | created, updated, pushed, full_name |
| `type` | string | no | owner, all, member |
| `cursor` | string | no |  |
| `direction` | string | no | asc, desc |

## FAQ

### How do I use the GitHub User Repositories API?

Send a POST request to https://api.sandbase.ai/v1/api/github/user-repositories with your SandBase API key in the Authorization header (Bearer) and the parameters as a JSON body. You can also try it in the Playground on this page without writing code.

### How much does the GitHub User Repositories API cost?

From $0.0012 per call, billed from your SandBase balance. You are only charged for calls you make; there is no subscription.

### What parameters does the GitHub User Repositories API accept?

Required: handle (string). Optional: sort (one of created, updated, pushed, full_name), type (one of owner, all, member), cursor (string) and direction (one of asc, desc). The Parameters table and the Playground on this page list every field.

### What does the GitHub User Repositories API return?

A JSON response returned in the same HTTP request (synchronous).

### Do I need a GitHub developer account or API key?

No. GitHub User Repositories runs through SandBase, so one SandBase API key covers this endpoint and every other API and model in the catalog. You do not need to apply for GitHub API access separately.

## README

### GitHub User Repositories API

List a GitHub user's public repositories (name, description, language, stars, and forks) with sorting and cursor pagination.

#### Request

```bash
curl -X POST "https://api.sandbase.ai/v1/run" \
  -H "Authorization: Bearer $SANDBASE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "github/user-repositories", "handle": "torvalds"}'
```

The result is returned in `outputs[0].data`. Lookups that find nothing fail with a not-found error.

#### Parameters

| Name | Type | Required | Description |
|---|---|---|---|
| `handle` | string | Yes | GitHub username. |
| `cursor` | string | No | Opaque pagination cursor from a previous response's nextCursor. Omit for the first page; pass it back to fetch the next page. |
| `direction` | string | No | Sort direction, ascending or descending, paired with sort. One of: `asc`, `desc`. |
| `sort` | string | No | Repository ordering. One of: `created`, `updated`, `pushed`, `full_name`. Default `"updated"`. |
| `type` | string | No | Which repositories to include: owner (default), all, or member. One of: `owner`, `all`, `member`. |

#### Pricing

Billed at the actual cost of each call, about $0.0012 per request. A call can cost more when the first data source fails and another one answers. Failed calls and lookups that find nothing are not charged.
