Developer platform

TEIBOS SDK

@teibos/sdkv0.1.0Internal preview

A generated TypeScript client for the published TEIBOS web contracts. Server-side only, private preview.

What the SDK is (and is not)

The SDK is a generated, thin client of the published <module>.web.v1 contracts. It maps TypeScript calls to ORDS requests and returns typed results; it is not a second business layer.

Hard limits

  • Server-side onlyRun it in a BFF or a worker. Never ship it to the browser.
  • No business decisionsBusiness validation, authorization and rounding stay in the database packages that own them.
  • Agents use ORDSAI agents keep their own ORDS channel; they do not go through the SDK.
  • Not on npmThe package is private and is not published to the npm registry.

Specimen

Request

const page = await listOrders(ctx, {
  org_id: "1", from: "2026-09-01", to: "2026-09-30", tab: "ALL",
});

Response

{
  "items": [{ "doc_id": "99461599164628992", "total_amount": "376.5" }],
  "next": null
}

Request

const preview = await createOrder(ctx, { ...draft, mode: "preview" });
const receipt = await createOrder(ctx, { ...draft, mode: "execute" }, crypto.randomUUID());

Response

{
  "mode": "PREVIEW",
  "guards_failed": []
}
{
  "mode": "EXECUTED"
}
// same key again → "REPLAY" · same key, other body → WebError kind "conflict"

Call context and wire rules

Context

baseUrl
string
bearer
string | BearerSource
sessionToken
string
fetch
typeof fetch

Headers

Session
X-Teibos-Session
Idempotency
Idempotency-Key

Wire rules

Identifier
^[0-9]{1,20}$
Decimal
^-?[0-9]+(\.[0-9]+)?$
Date
YYYY-MM-DD
Max body
1048576 bytes

Error kinds

StatusKindMeaning
400parseThe request body or values did not match the contract.
401unauthenticatedThe session or token is missing, expired or invalid.
403forbiddenThe caller is authenticated but not allowed to run this operation.
404not_foundThe referenced record does not exist in the caller scope.
409conflictThe state changed, or the idempotency key was reused with a different body.
413too_largeThe JSON body is over the size ceiling.
422invalidThe contract rejected a field value as invalid.
503unavailableA dependency is temporarily unavailable; retry with backoff.
500serverAn unexpected server error; the caller should not read the body as a result.

Operations

sal.web.v1

@teibos/sdk/sal
FunctionMethodPathSessionIdempotency
listOrdersGET/ordersRequiredNot required
createOrderPOST/ordersRequiredIdempotency-Key on execute
listExceptionsGET/exceptionsRequiredNot required
listExceptionsV2GET/exceptions/v2RequiredNot required
listOrderCountsGET/orders/countsRequiredNot required
allocateOrderIdsPOST/orders/idsRequiredNot required
getOrderGET/orders/{doc_id}RequiredNot required
readOrderRevisionGET/orders/{doc_id}/reviseRequiredNot required
reviseOrderPOST/orders/{doc_id}/reviseRequiredIdempotency-Key on execute
quoteOrderRevisionPOST/orders/{doc_id}/revise-priceRequiredNot required
getOrderActionsGET/orders/{doc_id}/actionsRequiredNot required
getOrderLineageGET/orders/{doc_id}/lineageRequiredNot required
getOrderAuditGET/orders/{doc_id}/auditRequiredNot required
openOrderPOST/orders/{doc_id}/openRequiredIdempotency-Key on execute
cancelOrderPOST/orders/{doc_id}/cancelRequiredIdempotency-Key on execute
amendLinePOST/orders/{doc_id}/lines/{line_id}/amendRequiredIdempotency-Key on execute
closeShortLinePOST/orders/{doc_id}/lines/{line_id}/close-shortRequiredIdempotency-Key on execute
getOrderPricingGET/orders/{doc_id}/pricingRequiredNot required
getOrderPrintGET/orders/{doc_id}/printRequiredNot required
deriveLinePOST/lines/deriveRequiredNot required
previewOrderDraftPostingPOST/orders/draft-postingRequiredNot required
readOrderDraftStockPOST/orders/draft-stockRequiredNot required
estimateOrderDraftTaxPOST/orders/draft-taxRequiredNot required
quotePricePOST/pricing/quoteRequiredNot required
requestPriceOverridePOST/pricing/override-requestsRequiredIdempotency-Key on execute
listCurrenciesGET/lov/currenciesRequiredNot required
listItemsGET/lov/itemsRequiredNot required
listCustomersGET/lov/customersRequiredNot required
listItemUomsGET/lov/items/{item_id}/uomsRequiredNot required
listPaymentTermsGET/lov/payment-termsRequiredNot required
listShipTosGET/lov/ship-toRequiredNot required
listBillTosGET/lov/bill-toRequiredNot required
listContactsGET/lov/contactsRequiredNot required
listPriceListsGET/lov/price-listsRequiredNot required
listWarehousesGET/lov/warehousesRequiredNot required
listDimensionValuesGET/lov/dimensions/{dim_code}RequiredNot required
listReasonsGET/lov/reasonsRequiredNot required
getSiteSummaryGET/sites/{site_id}/summaryRequiredNot required
getOrganizationSummaryGET/organization/summaryRequiredNot required
getFxPreviewGET/orders/fx-previewRequiredNot required
getCustomerSummaryGET/customers/{customer_id}/summaryRequiredNot required
getCustomerOpenCashGET/customers/{customer_id}/open-cashRequiredNot required
previewCiDraftPOST/export/ci-draft/previewRequiredNot required
allocatePiIdsPOST/export/pi/idsRequiredNot required
createPiPOST/export/piRequiredIdempotency-Key on execute
openPiPOST/export/pi/{doc_id}/openRequiredIdempotency-Key on execute
cancelPiPOST/export/pi/{doc_id}/cancelRequiredIdempotency-Key on execute
allocateCiIdsPOST/export/ci/idsRequiredNot required
createCiDraftPOST/export/ciRequiredIdempotency-Key on execute
requestOrderRevisionApprovalPOST/orders/{doc_id}/revise-approvalRequiredNot required
listPriceLevelsGET/lov/price-levelsRequiredNot required

sec.web.v1

@teibos/sdk/sec
FunctionMethodPathSessionIdempotency
loginBeginPOST/login/beginNoneNot required
loginCompletePOST/login/completeNoneNot required
meGET/meRequiredNot required
setCompanyPOST/session/companyRequiredNot required
setActiveAssignPOST/session/roleRequiredNot required
listPagesGET/pagesRequiredNot required
myLearningGET/me/learningRequiredNot required
putMyLearningPUT/me/learning/{track_code}RequiredNot required
logoutPOST/logoutRequiredNot required
logoutAllPOST/logout/allRequiredNot required

sec.admin.web.v1

@teibos/sdk/sec-admin
FunctionMethodPathSessionIdempotency
listRolesGET/rolesRequiredNot required
getRoleVersionGET/roles/{role_code}/versions/{role_ver}RequiredNot required
getEntitlementGET/entitlementRequiredNot required
listPrincipalsGET/principalsRequiredNot required
onboardPrincipalPOST/principalsRequiredIdempotency-Key on execute
getPrincipalAccessGET/principals/{principal_id}/accessRequiredNot required
assignRolePOST/principals/{principal_id}/assignmentsRequiredIdempotency-Key on execute
revokeAssignmentPOST/assignments/{assign_id}/revokeRequiredIdempotency-Key on execute
listCapabilitiesGET/capabilitiesRequiredNot required
createRoleVersionPOST/roles/{role_code}/versionsRequiredIdempotency-Key on execute
addRoleCapPOST/roles/{role_code}/versions/{role_ver}/capsRequiredIdempotency-Key on execute
publishRoleVersionPOST/roles/{role_code}/versions/{role_ver}/publishRequiredIdempotency-Key on execute
retireRolePOST/roles/{role_code}/retireRequiredIdempotency-Key on execute

sec.approval.web.v1

@teibos/sdk/sec-approval
FunctionMethodPathSessionIdempotency
listInboxGET/inboxRequiredNot required
countInboxGET/inbox/countsRequiredNot required
previewApprovalDecisionPOST/approvals/{approval_id}/previewRequiredNot required
decideApprovalPOST/approvals/{approval_id}/decisionRequiredNot required

mdm.web.v1

@teibos/sdk/mdm
FunctionMethodPathSessionIdempotency
listEntitiesGET/entitiesRequiredNot required
listOrgsGET/orgsRequiredNot required
listLocationsGET/locationsRequiredNot required
createLocationPOST/locationsRequiredIdempotency-Key on execute
getLocationGET/locations/{location_id}RequiredNot required
updateLocationPOST/locations/{location_id}RequiredIdempotency-Key on execute
listOrgTreeGET/orgs/treeRequiredNot required
listWarehouseMastersGET/warehousesRequiredNot required
createWarehousePOST/warehousesRequiredIdempotency-Key on execute
getWarehouseGET/warehouses/{warehouse_id}RequiredNot required
updateWarehousePOST/warehouses/{warehouse_id}RequiredIdempotency-Key on execute
listBinsGET/locations/{location_id}/binsRequiredNot required
createBinPOST/locations/{location_id}/binsRequiredIdempotency-Key on execute
getBinGET/bins/{bin_id}RequiredNot required
updateBinPOST/bins/{bin_id}RequiredIdempotency-Key on execute

mdm.party.web.v1

@teibos/sdk/mdm-party
FunctionMethodPathSessionIdempotency
listPartiesGET/partiesRequiredNot required
createPartyPOST/partiesRequiredIdempotency-Key on execute
listPartyOptionsGET/parties/optionsRequiredNot required
getPartyGET/parties/{party_id}RequiredNot required
renamePartyPOST/parties/{party_id}/nameRequiredIdempotency-Key on execute
changePartyTaxGroupPOST/parties/{party_id}/tax-groupRequiredIdempotency-Key on execute
changePartySalesDefaultPOST/parties/{party_id}/sales-defaultsRequiredIdempotency-Key on execute
changePartyRolePOST/parties/{party_id}/rolesRequiredIdempotency-Key on execute
changePartySitePOST/parties/{party_id}/sites/{site_id}RequiredIdempotency-Key on execute
addPartySitePOST/parties/{party_id}/sitesRequiredIdempotency-Key on execute
updatePartyRecordPOST/parties/{party_id}/recordRequiredIdempotency-Key on execute

mdm.entity.web.v1

@teibos/sdk/mdm-entity
FunctionMethodPathSessionIdempotency
listEntityBranchesGET/entities/{entity_id}/branchesRequiredNot required
getEntityBranchGET/entities/{entity_id}/branches/{branch_code}RequiredNot required
updateBranchContactPOST/entities/{entity_id}/branches/{branch_code}/contactRequiredIdempotency-Key on execute

mdm.ref.web.v1

@teibos/sdk/mdm-ref
FunctionMethodPathSessionIdempotency
listUomRegisterGET/uomsRequiredNot required
createUomPOST/uomsRequiredIdempotency-Key on execute
listCurrencyRegisterGET/currenciesRequiredNot required
createCurrencyPOST/currenciesRequiredIdempotency-Key on execute
listPaymentTermRegisterGET/payment-termsRequiredNot required
createPaymentTermPOST/payment-termsRequiredIdempotency-Key on execute

mdm.geo.web.v1

@teibos/sdk/mdm-geo
FunctionMethodPathSessionIdempotency
listGeoCountriesGET/geo/countriesRequiredNot required
listGeoLocalitiesGET/geo/localitiesRequiredNot required

mdm.item.web.v1

@teibos/sdk/mdm-item
FunctionMethodPathSessionIdempotency
listMasterItemsGET/itemsRequiredNot required
createItemPOST/itemsRequiredIdempotency-Key on execute
listItemOptionsGET/items/optionsRequiredNot required
getItemGET/items/{item_id}RequiredNot required
renameItemPOST/items/{item_id}RequiredIdempotency-Key on execute
addItemConversionPOST/items/{item_id}/conversionsRequiredIdempotency-Key on execute
changeItemCategoryPOST/items/{item_id}/categoryRequiredIdempotency-Key on execute
updateItemRecordPOST/items/{item_id}/recordRequiredIdempotency-Key on execute
putItemCapabilityPOST/items/{item_id}/capabilityRequiredIdempotency-Key on execute
closeItemCapabilityPOST/items/{item_id}/capability/closeRequiredIdempotency-Key on execute
putItemOrgPolicyPOST/items/{item_id}/policiesRequiredIdempotency-Key on execute
closeItemOrgPolicyPOST/items/{item_id}/policies/closeRequiredIdempotency-Key on execute
decideItemPolicyRequestPOST/items/{item_id}/policy-requests/{request_id}/decisionRequiredIdempotency-Key on execute

mdm.dim.web.v1

@teibos/sdk/mdm-dim
FunctionMethodPathSessionIdempotency
listDimensionTypesGET/dimension-typesRequiredNot required
listDimTypeValuesGET/dimension-types/{dim_code}/valuesRequiredNot required
createDimensionValuePOST/dimension-types/{dim_code}/valuesRequiredIdempotency-Key on execute
listDimensionTreeGET/dimension-types/{dim_code}/treeRequiredNot required
listDimensionTreeVersionsGET/dimension-types/{dim_code}/tree-versionsRequiredNot required
createDimensionTreeVersionPOST/dimension-types/{dim_code}/tree-versionsRequiredIdempotency-Key on execute
listDimensionTreeNodesGET/dimension-types/{dim_code}/tree-versions/{tree_ver_id}/nodesRequiredNot required
putDimensionTreeNodePOST/dimension-types/{dim_code}/tree-versions/{tree_ver_id}/nodesRequiredIdempotency-Key on execute
removeDimensionTreeNodePOST/dimension-types/{dim_code}/tree-versions/{tree_ver_id}/nodes/{value_id}/removeRequiredIdempotency-Key on execute
activateDimensionTreeVersionPOST/dimension-types/{dim_code}/tree-versions/{tree_ver_id}/activateRequiredIdempotency-Key on execute
getDimensionValueGET/dimension-values/{value_id}RequiredNot required
updateDimensionValuePOST/dimension-values/{value_id}RequiredIdempotency-Key on execute

mdm.setup.web.v1

@teibos/sdk/mdm-setup
FunctionMethodPathSessionIdempotency
readCompanySetupReviewGET/proposals/{proposal_id}RequiredNot required
decideCompanySetupPOST/proposals/{proposal_id}/decisionRequiredNot required

ops.schema.web.v1

@teibos/sdk/ops-schema
FunctionMethodPathSessionIdempotency
getSchemaCatalogGET/schema/catalogRequiredNot required
listSchemaTablesGET/schema/tablesRequiredNot required
getSchemaTableGET/schema/tables/{table_name}RequiredNot required

ops.perf.web.v1

@teibos/sdk/ops-perf
FunctionMethodPathSessionIdempotency
ingestPerformanceBatchPOST/performance/batchesNoneNot required
listPerformanceSeriesGET/performance/seriesRequiredNot required

apw.task.web.v1

@teibos/sdk/apw-task
FunctionMethodPathSessionIdempotency
listTasksGET/tasksRequiredNot required
getTaskGET/tasks/{task_id}RequiredNot required

apw.policy.web.v1

@teibos/sdk/apw-policy
FunctionMethodPathSessionIdempotency
listPoliciesGET/policiesRequiredNot required
createPolicyDraftPOST/policiesRequiredNot required
getPolicyGET/policies/{doc_type}RequiredNot required
listPolicyOptionsGET/policy-optionsRequiredNot required
requestPolicyPublishPOST/policies/{doc_type}/versions/{ver}/request-publishRequiredNot required
publishPolicyVersionPOST/policies/{doc_type}/versions/{ver}/publishRequiredNot required
requestPolicyRetirePOST/policies/{doc_type}/versions/{ver}/request-retireRequiredNot required
retirePolicyVersionPOST/policies/{doc_type}/versions/{ver}/retireRequiredNot required

prj.web.v1

@teibos/sdk/prj
FunctionMethodPathSessionIdempotency
listProjectsGET/projectsRequiredNot required

inv.web.v1

@teibos/sdk/inv
FunctionMethodPathSessionIdempotency
listTransferOrdersGET/transfersRequiredNot required
createTransferOrderPOST/transfersRequiredIdempotency-Key on execute
getTransferOrderGET/transfers/{doc_id}RequiredNot required
shipTransferOrderPOST/transfers/{doc_id}/shipRequiredIdempotency-Key on execute
receiveTransferOrderPOST/transfers/{doc_id}/receiveRequiredIdempotency-Key on execute
cancelTransferOrderPOST/transfers/{doc_id}/cancelRequiredIdempotency-Key on execute

rpt.web.v1

@teibos/sdk/rpt
FunctionMethodPathSessionIdempotency
describeReportGET/reports/{report}/{major}RequiredNot required
readReportPagePOST/pageRequiredNot required
submitReportExportPOST/exportsRequiredNot required
getReportExportGET/exports/{work_id}RequiredNot required
cancelReportExportPOST/exports/{work_id}/cancelRequiredNot required
getReportExportChunkGET/exports/{work_id}/chunks/{chunk_no}RequiredNot required

doc.web.v1

@teibos/sdk/doc
FunctionMethodPathSessionIdempotency
listAttachmentsGET/attachmentsRequiredNot required
beginUploadPOST/uploadsRequiredNot required
getUploadTargetPOST/uploads/{object_id}/targetRequiredNot required
completeUploadPOST/uploads/{object_id}/completeRequiredNot required
getDownloadGET/attachments/{object_id}/downloadRequiredNot required
detachAttachmentPOST/attachments/{object_id}/detachRequiredNot required
getTenantBrandGET/brandRequiredNot required
getBrandDownloadGET/brand/{object_id}/downloadRequiredNot required
getScanQueueGET/scansNoneNot required
recordScanPOST/scans/{object_id}NoneNot required
publishTemplatePOST/templates/{template_id}/versionsRequiredIdempotency-Key on execute
getTemplateGET/templates/{template_id}RequiredNot required
listTemplateAssignmentsGET/template-assignmentsRequiredNot required
assignTemplatePOST/template-assignmentsRequiredIdempotency-Key on execute

cor.doc_no.web.v1

@teibos/sdk/cor-doc-no
FunctionMethodPathSessionIdempotency
listRulesGET/rulesRequiredNot required
draftRulePOST/rulesRequiredIdempotency-Key on execute
listRuleVersionsGET/rules/{rule_id}/versionsRequiredNot required
listAssignmentsGET/assignmentsRequiredNot required
listGapsGET/gapsRequiredNot required
previewPatternPOST/patterns/previewRequiredNot required
requestPublishPOST/publish-requestsRequiredIdempotency-Key on execute

Usage standards

AuthorityThe database packages own validation, authorization and rounding; the SDK only carries the request and the typed answer.
ExecutionCommands are idempotent and run against the published contract; a preview never writes.
Failure modeA non-2xx response becomes a typed error with a kind. The only retry is one fresh bearer when ORDS rejects the token (401 without a code); nothing falls back silently.
AI boundaryAgents use their own ORDS channel. The SDK is for server-side services, not model tool calls.
Mobile / ServerRun on the server; the browser never holds a token or the package. Touch targets stay at least 44 px.