---
title: "Add campaign areas from GeoJSON features (admins only)."
method: POST
path: "/v1/campaigns/areas/upload"
tags: ["resource-facade"]
---

# Add campaign areas from GeoJSON features (admins only).

`POST /v1/campaigns/areas/upload`

## Headers

- `x-api-key` string, nullable

## Request body

- AreaUploadInput
  - `slug` string, required
  - `kind` string
  - `features` object[]

## Response `200`

Successful Response

- AreaUploadOutput
  - `created` integer, required
  - `areas` object[]

## Other responses

- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not Found
- `422` — Validation Error
- `500` — Internal Server Error

---

[API](https://skmtc.dev/geopera/apis/geopera-data-platform.md) · [All operations](https://skmtc.dev/geopera/apis/geopera-data-platform/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/geopera/geopera-data-platform/revisions/27294869ca25/schema)
