---
title: "The console link and steps to add a surface. Changes nothing."
method: GET
path: "/api/v1/orgs/{org_id}/add-surface"
---

# The console link and steps to add a surface. Changes nothing.

`GET /api/v1/orgs/{org_id}/add-surface`

## Request

- Base URL: `https://safegrd.dev`
- URL: `https://safegrd.dev/api/v1/orgs/{org_id}/add-surface`
- Auth: HTTP bearer

## Path parameters

- `org_id` string, required

## Query parameters

- `kind` 'supabase' | 'digitalocean' | 'heroku' | 'connection_string' | 'bucket' | 'on_host', required
- `project_id` string

## Response `200`

The link, the steps, and whether this caller can finish them

- AddGuide
  - `kind` string
  - `console_url` string
  - `steps` string[]
  - `commands` string[]
  - `can_finish` boolean: False when this caller, plan or server cannot complete it; note says why.
  - `note` string

## Other responses

- `400`: Refused. The body says why.
- `401`: Refused. The body says why.
- `403`: Refused. The body says why.
- `404`: Refused. The body says why.

---

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