Fumadocs

Update a planet

Sometimes you make mistakes, that's fine. No worries, you can update all planets.

PUT
/planets/{planetId}
AuthorizationBearer <token>

JWT Bearer token authentication

In: header

Path Parameters

planetIdinteger

The ID of the planet to get

Formatint64

New information about the planet

namestring
description?string | null
type?string
Value in"terrestrial" | "gas_giant" | "ice_giant" | "dwarf" | "super_earth"
habitabilityIndex?number

A score from 0 to 1 indicating potential habitability

Formatfloat
Rangevalue <= 1
physicalProperties?object
atmosphere?array<object>

Atmospheric composition

discoveredAt?string
Formatdate-time
image?string
satellites?array<object>

Item: A natural satellite (moon) orbiting a planet

creator?object

A user

tags?array<string>
successCallbackUrl?string

URL which gets invoked upon a successful operation

Formaturi
failureCallbackUrl?string

URL which gets invoked upon a failed operation

Formaturi

Response Body

curl -X PUT "https://galaxy.scalar.com/planets/1" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Mars"
  }'
const body = JSON.stringify({
  "name": "Mars"
})

fetch("https://galaxy.scalar.com/planets/1", {
  body
})
package main

import (
  "fmt"
  "net/http"
  "io/ioutil"
  "strings"
)

func main() {
  url := "https://galaxy.scalar.com/planets/1"
  body := strings.NewReader(`{
    "name": "Mars"
  }`)
  req, _ := http.NewRequest("PUT", url, body)
  req.Header.Add("Content-Type", "application/json")
  res, _ := http.DefaultClient.Do(req)
  defer res.Body.Close()
  body, _ := ioutil.ReadAll(res.Body)

  fmt.Println(res)
  fmt.Println(string(body))
}
import requests

url = "https://galaxy.scalar.com/planets/1"
body = {
  "name": "Mars"
}
response = requests.request("PUT", url, json = body, headers = {
  "Content-Type": "application/json"
})

print(response.text)
{
  "id": 1,
  "name": "Mars",
  "description": "The red planet",
  "type": "terrestrial",
  "habitabilityIndex": 0.68,
  "physicalProperties": {
    "mass": 0.107,
    "radius": 0.532,
    "gravity": 0.378,
    "temperature": {
      "min": 130,
      "max": 308,
      "average": 210
    }
  },
  "atmosphere": [
    {
      "compound": "CO2",
      "percentage": 95.3
    }
  ],
  "discoveredAt": "1610-01-07T00:00:00Z",
  "image": "https://cdn.scalar.com/photos/mars.jpg",
  "satellites": [
    {
      "name": "Phobos",
      "diameter": 22.2
    }
  ],
  "creator": {
    "id": 1,
    "name": "Marc"
  },
  "tags": [
    "solar-system",
    "rocky",
    "explored"
  ],
  "lastUpdated": "2024-01-15T14:30:00Z",
  "successCallbackUrl": "https://example.com/webhook",
  "failureCallbackUrl": "https://example.com/webhook"
}
{
  "type": "https://example.com/errors/bad-request",
  "title": "Bad Request",
  "status": 400,
  "detail": "The request was invalid."
}
{
  "type": "https://example.com/errors/forbidden",
  "title": "Forbidden",
  "status": 403,
  "detail": "You are not authorized to access this resource."
}
{
  "type": "https://example.com/errors/not-found",
  "title": "Not Found",
  "status": 404,
  "detail": "The resource you are trying to access does not exist."
}

How is this guide?