Skip to content

erp-keys ​

← All modules

5 endpoints.

GET /api/v1/settings/erp-keys ​

List Keys

All managed connections (portal + service panels), secrets withheld.

200 — Successful Response

json
{}

GET /api/v1/settings/erp-keys/dashboard-sites ​

Get Dashboard Instances

This site's own /erp/instances tab override. Empty tabs means the site is on the default: one tab over its own books.

200 — Successful Response

json
{}

PUT /api/v1/settings/erp-keys/dashboard-sites ​

Put Dashboard Instances

Replace this site's dashboard tab list. An empty tabs list clears the override, reverting the site to the single default tab. Returns the refreshed tab list.

Request body

json
{
  "properties": {
    "tabs": {
      "items": {
        "properties": {
          "id": {
            "type": "string",
            "maxLength": 64,
            "minLength": 1,
            "title": "Id"
          },
          "label": {
            "type": "string",
            "maxLength": 128,
            "minLength": 1,
            "title": "Label"
          },
          "kind": {
            "type": "string",
            "pattern": "^local$",
            "title": "Kind",
            "default": "local"
          },
          "segment": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 255
              },
              {
                "type": "null"
              }
            ],
            "title": "Segment"
          },
          "site": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 64
              },
              {
                "type": "null"
              }
            ],
            "title": "Site"
          },
          "instance": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 64
              },
              {
                "type": "null"
              }
            ],
            "title": "Site"
          }
        },
        "type": "object",
        "required": [
          "id",
          "label"
        ],
        "title": "DashboardTabIn"
      },
      "type": "array",
      "title": "Tabs"
    }
  },
  "type": "object",
  "required": [
    "tabs"
  ],
  "title": "DashboardTabsIn"
}

200 — Successful Response

json
{}

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/settings/erp-keys/{conn_id} ​

Update Key

Upsert one connection's credentials, then return the refreshed (masked) connection list so the UI reflects the new state.

Parameters

NameInRequiredTypeDescription
conn_idpathyesstring

Request body

json
{
  "properties": {
    "url": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 512
        },
        {
          "type": "null"
        }
      ],
      "title": "Url"
    },
    "key": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 512
        },
        {
          "type": "null"
        }
      ],
      "title": "Key"
    },
    "secret": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 512
        },
        {
          "type": "null"
        }
      ],
      "title": "Secret"
    }
  },
  "type": "object",
  "title": "ErpKeyIn",
  "description": "Partial update for one connection. A field omitted (``None``) is left\nuntouched; an empty string clears that field's override (falls back to\n``.env``). ``key`` is the bearer token; ``secret`` is accepted for\nbackwards compatibility and ignored."
}

200 — Successful Response

json
{}

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"
}

POST /api/v1/settings/erp-keys/{conn_id}/test ​

Test Key

Live connectivity check using the currently-resolved credentials (DB-over-env). Returns {ok, detail}.

Parameters

NameInRequiredTypeDescription
conn_idpathyesstring

200 — Successful Response

json
{}

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