---
title: "Create a service account"
method: POST
path: "/orgs/{orgName}/service-accounts"
tags: ["ServiceAccounts"]
---

# Create a service account

`POST /orgs/{orgName}/service-accounts`

## Request

- Base URL: `https://api.signadot.com/api/v2`
- URL: `https://api.signadot.com/api/v2/orgs/{orgName}/service-accounts`
- Auth: API key in header `signadot-api-key`

Create a new service account (non-human principal) for the org.

## Path parameters

- `orgName` string, required

## Request body

- ServiceAccount
  - `createdAt` string: CreatedAt is when the service account was created. Read-only.
  - `description` string: Description is an optional human-readable description.
  - `name` string: Name is the unique identifier within the org.
  - `role` string: Role is the authorization role for the service account: "admin" or "member".
  - `updatedAt` string: UpdatedAt is when the service account was last updated. Read-only.

## Response `200`

OK

- ServiceAccount
  - `createdAt` string: CreatedAt is when the service account was created. Read-only.
  - `description` string: Description is an optional human-readable description.
  - `name` string: Name is the unique identifier within the org.
  - `role` string: Role is the authorization role for the service account: "admin" or "member".
  - `updatedAt` string: UpdatedAt is when the service account was last updated. Read-only.

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `409`: Conflict

## Changes

- **2026-06-16** `40d6198d7957`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/signadot/apis/signadot-api/changes/orgs/:orgName/service-accounts/post.md)

---

[API](https://skmtc.dev/signadot/apis/signadot-api.md) - [All operations](https://skmtc.dev/signadot/apis/signadot-api/llms.txt) - [OpenAPI document](https://skmtc.dev/signadot/apis/signadot-api/revisions/5e80b0f9c718?raw)
