Sign in
Docs
API referenceInfrastructure

API reference

Register a stack

Have a token? Manage tokens in the console
PUT
/v1/infra/stacks/{stack_id}

Register a stack or change one: kind ansible or tofu, the engine (tofu by default, or the account's own terraform), the repository and the path in it, the hosts it targets and its time budget.

Needs scope infra:run.

Authorization

bearer
headerAuthorizationBearer <JWT>

An access token from the identity provider: a person's, or a customer's from the client credentials grant with an API key (developers.inorbit.hr). The gateway verifies it; the audience is iohr-api.

Path Parameters

stack_id*string

The stack's id: a name the account picks, base.

Request Body

iohr.infra.v1.UpsertStackRequest; path variables override their fields

application/json
  1. body

iohr.infra.v1.UpsertStackRequest

stack?

iohr.infra.v1.Stack

stack_id?string

Response Body

iohr.infra.v1.UpsertStackResponse

application/json
  1. response

iohr.infra.v1.UpsertStackResponse

created*boolean
stack?

iohr.infra.v1.Stack

import { ApiError, Public } from "@inorbithr/sdk";// Reads INORBIT_TOKEN, or INORBIT_KEY_ID and INORBIT_KEY_SECRET.const api = Public.fromEnv();try {  const { value } = await api.infra.upsertStack("<stack_id>", {});  console.log(value);} catch (e) {  if (!(e instanceof ApiError)) throw e;  console.error(`${e.code}: ${e.problem} (request id ${e.raw.requestId})`);  process.exitCode = 1;}

npm install @inorbithr/sdk. Calls the package's public surface; an operation newer than your package needs the next release or a client generated for your account. The SDKs.

Example Response
{  "created": true,  "stack": {    "budget_seconds": 0,    "cluster_id": "string",    "engine": "string",    "environment": "string",    "host_ids": [      "string"    ],    "inventory": "string",    "kind": "string",    "name": "string",    "path": "string",    "playbook": "string",    "ref": "string",    "repository": "string",    "stack_id": "string",    "updated_at": "string",    "updated_by": "string",    "workspace": "string"  }}