---
title: "Create S3 Account"
method: POST
path: "/v0/s3-accounts"
tags: ["S3 Accounts"]
---

# Create S3 Account

`POST /v0/s3-accounts`

Create a new S3 Account connected to OneSchema.

## Request body

- S3AccountPostRequest
  - `name` string, required — The name of the S3 Account
  - `role_arn` string, required — The IAM role ARN used to access S3 buckets via STS AssumeRole
  - `external_id` string, required — The external ID used for secure cross-account role assumption

## Response `201`

The request has succeeded and a new resource has been created as a result.

- S3AccountResource
  - `id` integer — The unique identifier of the S3 Account
  - `name` string — The name of the S3 Account
  - `role_arn` string — The IAM role ARN used to access S3 buckets via STS AssumeRole

## Other responses

- `400` — Bad request
- `401` — Unauthorized (missing or invalid API key)
- `403` — Forbidden

---

[API](https://skmtc.net/oneschema/apis/templates.md) · [All operations](https://skmtc.net/oneschema/apis/templates/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/oneschema/templates/revisions/40674aa6d4d9/schema)
