# Cosport



Cosport's sports-service marketplace — searchable listings, plus the sports, categories, and locations that give the filters their vocabulary.



## Cosport Catalog Search

Search Cosport's sports-service listings — jersey rentals, event photographers, referees — by type, keyword, sport, category, and price band.

- Method: `GET`
- Path: `/v1/sports/cosport/catalogs`

**Parameters**

| Name | Type | | Description |
|---|---|---|---|
| `type` | string | optional | `RENT`, `SALE`, or `SERVICE`. |
| `keyword` | string | optional | Match a listing title or description. |
| `sport` | string | optional | Only listings tagged with this sport slug — see the sports list. |
| `category` | string | optional | Only listings in this category slug — see the categories list. |
| `min_price` | number | optional | Lowest price to include. |
| `max_price` | number | optional | Highest price to include. |
| `page` | integer | optional | 1 to 500. |
| `size` | integer | optional | Results per page, 1 to 50. |
| `max_age` | integer (seconds) | optional | Ask for data no older than this. Clamped to the product's own floor, so it can narrow the window but never force a refresh on every call. |

**Example request**

```bash
curl https://api.diraz.ae/v1/sports/cosport/catalogs \
  -H "Authorization: Bearer drz_live_…"
```

**Example response**

```json
{
  "data": {
    "page": 1,
    "page_size": 20,
    "total_pages": 1,
    "results": [
      {
        "id": "cce5f88c-12d4-4cc1-9ed4-cb092f4a8dcc",
        "type": "RENT",
        "status": "ACTIVE",
        "title": "Hijau Putih by SewaJerseyKutaraja",
        "slug": "hijau-putih-by-sewajerseykutaraja",
        "description": "Jersey premium siap pakai yang cocok untuk turnamen maupun fun match.",
        "price": 10000,
        "discounted_price": 8000,
        "discount_percentage": 20,
        "unit": "PCS",
        "duration_unit": null,
        "pricing_type": "QUANTITY",
        "sports": [{ "slug": "football", "name": "Sepak Bola" }],
        "category": { "slug": "jersey", "title": "Jersey" },
        "partner_name": "SewaJerseyKutaraja",
        "partner_handle": "sewajerseykutaraja",
        "city": "Kota Banda Aceh",
        "image": "https://storage.cosport.co.id/catalog-partner/490b6174-23d4-4664-bcee-202c2c2bc576/cce5f88c-12d4-4cc1-9ed4-cb092f4a8dcc/thumb-f60ccc41-3124-4da1-bb95-80fd81ac1f7c.jpg"
      }
    ]
  },
  "meta": {
    "request_id": "req_7Q2fK4mZ",
    "as_of": "2026-08-20T04:05:00.000Z",
    "age_seconds": 12,
    "next_update_at": "2026-08-20T04:35:00.000Z"
  }
}
```

## Cosport Sports List

Every sport a Cosport listing can be tagged with — `football`, `futsal`, `badminton`, and the rest — the vocabulary of the catalog search's `sport` filter.

- Method: `GET`
- Path: `/v1/sports/cosport/sports`

**Parameters**

| Name | Type | | Description |
|---|---|---|---|
| `max_age` | integer (seconds) | optional | Ask for data no older than this. Clamped to the product's own floor, so it can narrow the window but never force a refresh on every call. |

**Example request**

```bash
curl https://api.diraz.ae/v1/sports/cosport/sports \
  -H "Authorization: Bearer drz_live_…"
```

**Example response**

```json
{
  "data": {
    "sports": [
      { "slug": "badminton", "name": "Badminton" },
      { "slug": "football", "name": "Sepak Bola" },
      { "slug": "futsal", "name": "Futsal" }
    ]
  },
  "meta": {
    "request_id": "req_7Q2fK4mZ",
    "as_of": "2026-08-20T04:05:00.000Z",
    "age_seconds": 3600,
    "next_update_at": "2026-08-21T04:05:00.000Z"
  }
}
```

## Cosport Categories List

Every category a Cosport listing can be filed under — jersey, photographer, referee, coach, and the rest.

- Method: `GET`
- Path: `/v1/sports/cosport/categories`

**Parameters**

| Name | Type | | Description |
|---|---|---|---|
| `max_age` | integer (seconds) | optional | Ask for data no older than this. Clamped to the product's own floor, so it can narrow the window but never force a refresh on every call. |

**Example request**

```bash
curl https://api.diraz.ae/v1/sports/cosport/categories \
  -H "Authorization: Bearer drz_live_…"
```

**Example response**

```json
{
  "data": {
    "categories": [
      { "slug": "jersey", "title": "Jersey" },
      { "slug": "photographer", "title": "Fotografer" },
      { "slug": "referee", "title": "Wasit" }
    ]
  },
  "meta": {
    "request_id": "req_7Q2fK4mZ",
    "as_of": "2026-08-20T04:05:00.000Z",
    "age_seconds": 3600,
    "next_update_at": "2026-08-21T04:05:00.000Z"
  }
}
```

## Cosport Location Search

Search the cities and regencies Cosport itself filters listings by — Banda Aceh to Bandung, with province codes.

- Method: `GET`
- Path: `/v1/sports/cosport/locations`

**Parameters**

| Name | Type | | Description |
|---|---|---|---|
| `q` | string | required | Location name to search for. At least two characters. |
| `limit` | integer | optional | 1 to 50. |
| `max_age` | integer (seconds) | optional | Ask for data no older than this. Clamped to the product's own floor, so it can narrow the window but never force a refresh on every call. |

**Example request**

```bash
curl https://api.diraz.ae/v1/sports/cosport/locations \
  -H "Authorization: Bearer drz_live_…"
```

**Example response**

```json
{
  "data": {
    "query": "bandung",
    "results": [
      {
        "code": "32.04",
        "name": "Bandung",
        "type": "Kabupaten",
        "province_code": "32",
        "province_name": "Jawa Barat"
      },
      {
        "code": "32.73",
        "name": "Bandung",
        "type": "Kota",
        "province_code": "32",
        "province_name": "Jawa Barat"
      }
    ]
  },
  "meta": {
    "request_id": "req_7Q2fK4mZ",
    "as_of": "2026-08-20T04:05:00.000Z",
    "age_seconds": 3600,
    "next_update_at": "2026-08-21T04:05:00.000Z"
  }
}
```