---
title: "Create an object with optional metadata and no financial agreement"
method: POST
path: "/v1/products/{productId}/objects/{kind}"
tags: ["Product objects"]
---

# Create an object with optional metadata and no financial agreement

`POST /v1/products/{productId}/objects/{kind}`

## Request

- Base URL: `https://hyperscale0.ai`
- URL: `https://hyperscale0.ai/v1/products/{productId}/objects/{kind}`
- Auth: one of:
  - HTTP bearer
  - HTTP bearer

Creates a new business object instance with an optional externalId and optional metadata fields. The owner is the caller, or the customer named in onBehalfOf.

## Path parameters

- `productId` string, required: Hyperscale product ID
- `kind` string, required

## Headers

- `X-Hyperscale-Environment` 'sandbox' | 'live'
- `Idempotency-Key` string, required

## Request body

- object
  - `externalId` string
  - `fields` object
  - `onBehalfOf` string: Customer the Product key or a member session acts for. The call runs with that customer's accounts and keeps the operator's view of records.

## Response `201`

Success

- ProductObjectsCreateOutput
  - `createdAt` string, date-time, required
  - `objectId` string, required
  - `kind` string, required
  - `revision` integer, required
  - `externalId` string
  - `fields` object, required
  - `productBuildId` string, required: Hyperscale product build ID

## Other responses

- `default`: ErrorResponse. See x-error-codes and x-errors for codes, HTTP statuses and retry guidance.

---

[API](https://skmtc.dev/hyperscale0/apis/hyperscale-product-api.md) · [All operations](https://skmtc.dev/hyperscale0/apis/hyperscale-product-api/llms.txt) · [OpenAPI document](https://skmtc.dev/hyperscale0/apis/hyperscale-product-api/revisions/e9e8faa044d5?raw)
