Skip to content

system-map ​

← All modules

6 endpoints.

GET /api/v1/system-map ​

List System Maps

The picker's index — titles only, never the (large) bodies.

200 — Successful Response

json
{
  "items": {
    "properties": {
      "slug": {
        "type": "string",
        "title": "Slug"
      },
      "title": {
        "type": "string",
        "title": "Title"
      },
      "summary": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ],
        "title": "Summary"
      },
      "enabled": {
        "type": "boolean",
        "title": "Enabled",
        "default": true
      },
      "sort_order": {
        "type": "integer",
        "title": "Sort Order",
        "default": 0
      }
    },
    "type": "object",
    "required": [
      "slug",
      "title"
    ],
    "title": "SystemMapSummary"
  },
  "type": "array",
  "title": "Response List System Maps Api V1 System Map Get"
}

POST /api/v1/system-map ​

Create System Map

Add a map. The slug is derived from the title unless one is given, and is rejected rather than silently suffixed if it is already taken — a slug is a permanent link handle, so a surprise -2 is worse than an error.

Request body

json
{
  "properties": {
    "title": {
      "type": "string",
      "title": "Title"
    },
    "slug": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Slug"
    },
    "summary": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Summary"
    },
    "html": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Html"
    },
    "enabled": {
      "type": "boolean",
      "title": "Enabled",
      "default": true
    },
    "sort_order": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "title": "Sort Order"
    }
  },
  "type": "object",
  "required": [
    "title"
  ],
  "title": "SystemMapCreate"
}

201 — Successful Response

json
{
  "properties": {
    "slug": {
      "type": "string",
      "title": "Slug"
    },
    "title": {
      "type": "string",
      "title": "Title"
    },
    "summary": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Summary"
    },
    "enabled": {
      "type": "boolean",
      "title": "Enabled",
      "default": true
    },
    "sort_order": {
      "type": "integer",
      "title": "Sort Order",
      "default": 0
    },
    "html": {
      "type": "string",
      "title": "Html"
    }
  },
  "type": "object",
  "required": [
    "slug",
    "title",
    "html"
  ],
  "title": "SystemMapDoc"
}

422 — Validation Error

json
{
  "properties": {
    "detail": {
      "items": {
        "properties": {
          "loc": {
            "items": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "integer"
                }
              ]
            },
            "type": "array",
            "title": "Location"
          },
          "msg": {
            "type": "string",
            "title": "Message"
          },
          "type": {
            "type": "string",
            "title": "Error Type"
          }
        },
        "type": "object",
        "required": [
          "loc",
          "msg",
          "type"
        ],
        "title": "ValidationError"
      },
      "type": "array",
      "title": "Detail"
    }
  },
  "type": "object",
  "title": "HTTPValidationError"
}

GET /api/v1/system-map/{slug} ​

Get System Map

Parameters

NameInRequiredTypeDescription
slugpathyesstring

200 — Successful Response

json
{
  "properties": {
    "slug": {
      "type": "string",
      "title": "Slug"
    },
    "title": {
      "type": "string",
      "title": "Title"
    },
    "summary": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Summary"
    },
    "enabled": {
      "type": "boolean",
      "title": "Enabled",
      "default": true
    },
    "sort_order": {
      "type": "integer",
      "title": "Sort Order",
      "default": 0
    },
    "html": {
      "type": "string",
      "title": "Html"
    }
  },
  "type": "object",
  "required": [
    "slug",
    "title",
    "html"
  ],
  "title": "SystemMapDoc"
}

422 — Validation Error

json
{
  "properties": {
    "detail": {
      "items": {
        "properties": {
          "loc": {
            "items": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "integer"
                }
              ]
            },
            "type": "array",
            "title": "Location"
          },
          "msg": {
            "type": "string",
            "title": "Message"
          },
          "type": {
            "type": "string",
            "title": "Error Type"
          }
        },
        "type": "object",
        "required": [
          "loc",
          "msg",
          "type"
        ],
        "title": "ValidationError"
      },
      "type": "array",
      "title": "Detail"
    }
  },
  "type": "object",
  "title": "HTTPValidationError"
}

PUT /api/v1/system-map/{slug} ​

Update System Map

Save a document edited in place on the viewer page — the body alone.

Writes to the hub DB the read path uses, so an edit made from any site lands on the one set of documents the whole estate shares. Same superuser gate.

Parameters

NameInRequiredTypeDescription
slugpathyesstring

Request body

json
{
  "properties": {
    "html": {
      "type": "string",
      "title": "Html"
    }
  },
  "type": "object",
  "required": [
    "html"
  ],
  "title": "SystemMapBody"
}

200 — Successful Response

json
{
  "properties": {
    "slug": {
      "type": "string",
      "title": "Slug"
    },
    "title": {
      "type": "string",
      "title": "Title"
    },
    "summary": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Summary"
    },
    "enabled": {
      "type": "boolean",
      "title": "Enabled",
      "default": true
    },
    "sort_order": {
      "type": "integer",
      "title": "Sort Order",
      "default": 0
    },
    "html": {
      "type": "string",
      "title": "Html"
    }
  },
  "type": "object",
  "required": [
    "slug",
    "title",
    "html"
  ],
  "title": "SystemMapDoc"
}

422 — Validation Error

json
{
  "properties": {
    "detail": {
      "items": {
        "properties": {
          "loc": {
            "items": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "integer"
                }
              ]
            },
            "type": "array",
            "title": "Location"
          },
          "msg": {
            "type": "string",
            "title": "Message"
          },
          "type": {
            "type": "string",
            "title": "Error Type"
          }
        },
        "type": "object",
        "required": [
          "loc",
          "msg",
          "type"
        ],
        "title": "ValidationError"
      },
      "type": "array",
      "title": "Detail"
    }
  },
  "type": "object",
  "title": "HTTPValidationError"
}

PATCH /api/v1/system-map/{slug} ​

Update System Map Meta

Title / summary / published / order — everything except the body and the slug, which stays fixed for the life of the map (it is the link handle).

Parameters

NameInRequiredTypeDescription
slugpathyesstring

Request body

json
{
  "properties": {
    "title": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Title"
    },
    "summary": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Summary"
    },
    "enabled": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "title": "Enabled"
    },
    "sort_order": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "title": "Sort Order"
    }
  },
  "type": "object",
  "title": "SystemMapMeta",
  "description": "Metadata edit. Every field optional — only what is SENT is written, so the\ndialog can save one field without having to round-trip the others."
}

200 — Successful Response

json
{
  "properties": {
    "slug": {
      "type": "string",
      "title": "Slug"
    },
    "title": {
      "type": "string",
      "title": "Title"
    },
    "summary": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Summary"
    },
    "enabled": {
      "type": "boolean",
      "title": "Enabled",
      "default": true
    },
    "sort_order": {
      "type": "integer",
      "title": "Sort Order",
      "default": 0
    },
    "html": {
      "type": "string",
      "title": "Html"
    }
  },
  "type": "object",
  "required": [
    "slug",
    "title",
    "html"
  ],
  "title": "SystemMapDoc"
}

422 — Validation Error

json
{
  "properties": {
    "detail": {
      "items": {
        "properties": {
          "loc": {
            "items": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "integer"
                }
              ]
            },
            "type": "array",
            "title": "Location"
          },
          "msg": {
            "type": "string",
            "title": "Message"
          },
          "type": {
            "type": "string",
            "title": "Error Type"
          }
        },
        "type": "object",
        "required": [
          "loc",
          "msg",
          "type"
        ],
        "title": "ValidationError"
      },
      "type": "array",
      "title": "Detail"
    }
  },
  "type": "object",
  "title": "HTTPValidationError"
}

DELETE /api/v1/system-map/{slug} ​

Delete System Map

Soft-delete — the row and its body survive, so a document deleted by mistake is recoverable from the DB (the same shape the grid's Delete had). Note the slug stays taken: the column is UNIQUE across deleted rows too.

Parameters

NameInRequiredTypeDescription
slugpathyesstring

204 — Successful Response

422 — Validation Error

json
{
  "properties": {
    "detail": {
      "items": {
        "properties": {
          "loc": {
            "items": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "integer"
                }
              ]
            },
            "type": "array",
            "title": "Location"
          },
          "msg": {
            "type": "string",
            "title": "Message"
          },
          "type": {
            "type": "string",
            "title": "Error Type"
          }
        },
        "type": "object",
        "required": [
          "loc",
          "msg",
          "type"
        ],
        "title": "ValidationError"
      },
      "type": "array",
      "title": "Detail"
    }
  },
  "type": "object",
  "title": "HTTPValidationError"
}

Lubb One Documentation