---
title: "Token"
method: POST
path: "/v1/oauth/token"
tags: ["oauth"]
---

# Token

`POST /v1/oauth/token`

## Request

- Base URL: `https://api.shapemaker.io` (the document declares no server; this is the origin it was published from)
- URL: `https://api.shapemaker.io/v1/oauth/token`
- Auth: HTTP basic

## Request body `application/x-www-form-urlencoded`

- BodyTokenV1OauthTokenPost
  - `grant_type` string, nullable: Must be `client_credentials`.
  - `client_id` string, nullable
  - `client_secret` string, nullable

## Response `200`

Successful Response

- OAuthTokenResponse: RFC 6749 section 5.1. Field names are fixed by the standard, so this model stays snake_case where the rest of the API is camelCase.
  - `access_token` string, required
  - `token_type` string, required
  - `expires_in` integer, required: Seconds until the access token expires.

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `422`: Validation Error
- `500`: Internal Server Error

---

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