# TypeSafe AI > How to use TypeSafe's System One API - [Introduction](https://docs.typesafe.ai/introduction.md): Jev is TypeSafe's flagship model and the first System One model. Send state and typed questions; get structured answers your code can use directly. - [Quick start](https://docs.typesafe.ai/introduction/quickstart.md): Prefer to just dive in? Here's everything you need to get started immediately. - [System One](https://docs.typesafe.ai/concepts/system-one.md): System One models make fast, structured decisions for software. Jev is TypeSafe's flagship model and the first System One model. - [State](https://docs.typesafe.ai/concepts/state.md): What state is, how to structure it, and how to give a System One model the context it needs. - [Primitives (Questions)](https://docs.typesafe.ai/primitives.md): The three TypeSafe question types (Choice, Score, Noul), the typed answers they return, how to choose between them, and how to ask several at once. - [Choice](https://docs.typesafe.ai/primitives/choice.md): A Choice is a System One question type for selecting one option from a defined set. The answer includes the selected option, a probability for each option, and confidence. - [Score](https://docs.typesafe.ai/primitives/score.md): A Score is a System One question type for rating content against ordered, descriptive levels. The answer includes a score, a probability for each level, and confidence. - [Noul](https://docs.typesafe.ai/primitives/noul.md): A Noul question asks the model to evaluate a yes/no question and return the probability that the answer is yes. - [AI primer](https://docs.typesafe.ai/introduction/machine-learning-primer.md): Why TypeSafe trains decision models with calibrated probabilities instead of optimizing for generated text. - [Confidence](https://docs.typesafe.ai/confidence.md): How TypeSafe reports certainty, how it differs from probability, and how to use it to control system behavior. - [How to build with TypeSafe](https://docs.typesafe.ai/concepts/how-to-build-with-system-one.md): Design AI-powered software by keeping code in control and giving System One narrow, structured decisions. - [Example use cases](https://docs.typesafe.ai/concepts/use-case-map.md): Explore TypeSafe use cases by industry and turn promising ideas into software workflows. - [Patterns](https://docs.typesafe.ai/patterns.md): Architectural patterns for building systems with TypeSafe. - [Speculative fan-out](https://docs.typesafe.ai/patterns/fan-out.md): Send many questions in a single call, including speculative ones, and let your code decide what's relevant. - [Confidence-gated routing](https://docs.typesafe.ai/patterns/confidence-routing.md): Use confidence as a second axis. The answer tells you what; confidence tells you whether to act. - [Composite scoring](https://docs.typesafe.ai/patterns/composite-scoring.md): Break a complex judgment into atomic scores, combine with weights you control in code. - [Intent routing](https://docs.typesafe.ai/patterns/intent-routing.md): Classify incoming requests and route each to the optimal handler: deterministic logic, a specialist LLM, or a human. - [Demos](https://docs.typesafe.ai/demos.md): Interactive examples showing what's possible with TypeSafe. - [Smart home assistant demo](https://docs.typesafe.ai/demos/smart-home.md): Demo code: a smart home assistant that uses TypeSafe to evaluate user requests. - [Client SDKs](https://docs.typesafe.ai/sdk.md): Install a TypeSafe client SDK and use typed questions and answers in your application. - [TypeSafe Python SDK](https://docs.typesafe.ai/sdk/python.md): Install the TypeSafe Python SDK and get started with asynchronous or synchronous API calls. - [Usage](https://docs.typesafe.ai/sdk/python/usage.md): Guides and patterns for working with the TypeSafe Python SDK. - [Changelog](https://docs.typesafe.ai/sdk/python/changelog.md): Python clients for the TypeSafe AI API - [API reference](https://docs.typesafe.ai/sdk/python/api.md): Python clients for the TypeSafe AI API - [Asynchronous client](https://docs.typesafe.ai/sdk/python/api/clients/async/client.md): Use AsyncTypeSafeClient to ask questions, list models, and configure asynchronous TypeSafe API requests. - [Models resource](https://docs.typesafe.ai/sdk/python/api/clients/async/models.md): List the models available to your account through the asynchronous client's Models resource. - [Synchronous client](https://docs.typesafe.ai/sdk/python/api/clients/sync/client.md): Use TypeSafeClient to ask questions, list models, and configure synchronous TypeSafe API requests. - [Models resource](https://docs.typesafe.ai/sdk/python/api/clients/sync/models.md): List the models available to your account through the synchronous client's Models resource. - [Questions](https://docs.typesafe.ai/sdk/python/api/types/questions.md): Provide state and ask yes/no, choice, and score questions using objects or dictionaries. - [Answers and responses](https://docs.typesafe.ai/sdk/python/api/types/responses.md): Read answers, confidence scores, token usage, and available models returned by the TypeSafe API. - [Retries](https://docs.typesafe.ai/sdk/python/api/retries.md): Configure retries with RetryPolicy — attempt count, retryable statuses, backoff, and retry headers handling. - [Common types](https://docs.typesafe.ai/sdk/python/api/types/common.md): Common types for TypeSafe API SDK. - [Exceptions](https://docs.typesafe.ai/sdk/python/api/exceptions.md): Handle TypeSafe API errors, rate limits, connection failures, and timeouts. - [Constants](https://docs.typesafe.ai/sdk/python/api/constants.md): Default settings and environment variable names for the TypeSafe Python SDK. - [JavaScript SDK](https://docs.typesafe.ai/sdk/javascript.md) - [Changelog](https://docs.typesafe.ai/sdk/javascript/changelog.md) - [API reference](https://docs.typesafe.ai/sdk/javascript/api.md) - [Class: APIConnectionError](https://docs.typesafe.ai/sdk/javascript/api/classes/APIConnectionError.md) - [Class: APIError](https://docs.typesafe.ai/sdk/javascript/api/classes/APIError.md) - [Class: APIPromise](https://docs.typesafe.ai/sdk/javascript/api/classes/APIPromise.md) - [Class: APITimeoutError](https://docs.typesafe.ai/sdk/javascript/api/classes/APITimeoutError.md) - [Class: APIUserAbortError](https://docs.typesafe.ai/sdk/javascript/api/classes/APIUserAbortError.md) - [Class: AuthenticationError](https://docs.typesafe.ai/sdk/javascript/api/classes/AuthenticationError.md) - [Class: BadRequestError](https://docs.typesafe.ai/sdk/javascript/api/classes/BadRequestError.md) - [Class: InternalServerError](https://docs.typesafe.ai/sdk/javascript/api/classes/InternalServerError.md) - [Class: NotFoundError](https://docs.typesafe.ai/sdk/javascript/api/classes/NotFoundError.md) - [Class: PermissionDeniedError](https://docs.typesafe.ai/sdk/javascript/api/classes/PermissionDeniedError.md) - [Class: RateLimitError](https://docs.typesafe.ai/sdk/javascript/api/classes/RateLimitError.md) - [Class: TypeSafeClient](https://docs.typesafe.ai/sdk/javascript/api/classes/TypeSafeClient.md) - [Class: TypeSafeError](https://docs.typesafe.ai/sdk/javascript/api/classes/TypeSafeError.md) - [Class: UnprocessableEntityError](https://docs.typesafe.ai/sdk/javascript/api/classes/UnprocessableEntityError.md) - [Interface: ChoiceQuestion](https://docs.typesafe.ai/sdk/javascript/api/interfaces/ChoiceQuestion.md) - [Interface: ChoiceResponse](https://docs.typesafe.ai/sdk/javascript/api/interfaces/ChoiceResponse.md) - [Interface: Logger](https://docs.typesafe.ai/sdk/javascript/api/interfaces/Logger.md) - [Interface: ModelCard](https://docs.typesafe.ai/sdk/javascript/api/interfaces/ModelCard.md) - [Interface: Models](https://docs.typesafe.ai/sdk/javascript/api/interfaces/Models.md) - [Interface: NoulQuestion](https://docs.typesafe.ai/sdk/javascript/api/interfaces/NoulQuestion.md) - [Interface: NoulResponse](https://docs.typesafe.ai/sdk/javascript/api/interfaces/NoulResponse.md) - [Interface: Questions](https://docs.typesafe.ai/sdk/javascript/api/interfaces/Questions.md) - [Interface: RequestOptions](https://docs.typesafe.ai/sdk/javascript/api/interfaces/RequestOptions.md) - [Interface: RetryPolicy](https://docs.typesafe.ai/sdk/javascript/api/interfaces/RetryPolicy.md) - [Interface: ScoreQuestion](https://docs.typesafe.ai/sdk/javascript/api/interfaces/ScoreQuestion.md) - [Interface: ScoreResponse](https://docs.typesafe.ai/sdk/javascript/api/interfaces/ScoreResponse.md) - [Interface: SystemOneRequest](https://docs.typesafe.ai/sdk/javascript/api/interfaces/SystemOneRequest.md) - [Interface: SystemOneRequestPayload](https://docs.typesafe.ai/sdk/javascript/api/interfaces/SystemOneRequestPayload.md) - [Interface: SystemOneResult](https://docs.typesafe.ai/sdk/javascript/api/interfaces/SystemOneResult.md) - [Interface: TypeSafeClientConfig](https://docs.typesafe.ai/sdk/javascript/api/interfaces/TypeSafeClientConfig.md) - [Interface: Usage](https://docs.typesafe.ai/sdk/javascript/api/interfaces/Usage.md) - [Interface: WithResponse](https://docs.typesafe.ai/sdk/javascript/api/interfaces/WithResponse.md) - [Type Alias: ChoiceCriteria](https://docs.typesafe.ai/sdk/javascript/api/type-aliases/ChoiceCriteria.md) - [Type Alias: Description](https://docs.typesafe.ai/sdk/javascript/api/type-aliases/Description.md) - [Type Alias: EntryType](https://docs.typesafe.ai/sdk/javascript/api/type-aliases/EntryType.md) - [Type Alias: EnvVar](https://docs.typesafe.ai/sdk/javascript/api/type-aliases/EnvVar.md) - [Type Alias: Fetch](https://docs.typesafe.ai/sdk/javascript/api/type-aliases/Fetch.md) - [Type Alias: JsonValue](https://docs.typesafe.ai/sdk/javascript/api/type-aliases/JsonValue.md) - [Type Alias: LogLevel](https://docs.typesafe.ai/sdk/javascript/api/type-aliases/LogLevel.md) - [Type Alias: Question](https://docs.typesafe.ai/sdk/javascript/api/type-aliases/Question.md) - [Type Alias: ResultFor](https://docs.typesafe.ai/sdk/javascript/api/type-aliases/ResultFor.md) - [Type Alias: ScoreCriteria](https://docs.typesafe.ai/sdk/javascript/api/type-aliases/ScoreCriteria.md) - [Type Alias: ScoreLegend](https://docs.typesafe.ai/sdk/javascript/api/type-aliases/ScoreLegend.md) - [Type Alias: ScoreList](https://docs.typesafe.ai/sdk/javascript/api/type-aliases/ScoreList.md) - [Type Alias: ScoreMap](https://docs.typesafe.ai/sdk/javascript/api/type-aliases/ScoreMap.md) - [Type Alias: ScoreOf](https://docs.typesafe.ai/sdk/javascript/api/type-aliases/ScoreOf.md) - [Variable: ENV](https://docs.typesafe.ai/sdk/javascript/api/variables/ENV.md) - [Variable: LOG_LEVELS](https://docs.typesafe.ai/sdk/javascript/api/variables/LOG_LEVELS.md) - [Variable: VERSION](https://docs.typesafe.ai/sdk/javascript/api/variables/VERSION.md) - [Function: choice()](https://docs.typesafe.ai/sdk/javascript/api/functions/choice.md) - [Function: noul()](https://docs.typesafe.ai/sdk/javascript/api/functions/noul.md) - [Function: score()](https://docs.typesafe.ai/sdk/javascript/api/functions/score.md) - [API reference](https://docs.typesafe.ai/api.md): Full HTTP API reference for the TypeSafe evaluation endpoint. - [Agent skill](https://docs.typesafe.ai/agent-skill.md): Drop-in skill for Claude Code, Codex, and other agent environments. - [Self-consistency: nouls](https://docs.typesafe.ai/cookbooks/consistency_noul_cookbook.md): Scores an auto-insurance claim against a 15-question adjudication rubric, showing that LLM answers vary run to run while TypeSafe returns stable noul probabilities far faster and cheaper. - [Self-consistency: choices](https://docs.typesafe.ai/cookbooks/consistency_choice_cookbook.md): Classifies a borderline user post against an 8-question content-moderation rubric of multiple-choice questions, showing that LLM picks flip run to run while TypeSafe returns the same label nearly every time. - [Parallel questions](https://docs.typesafe.ai/cookbooks/parallel_questions.md): Runs a 13-question regulatory briefing over the GDPR Wikipedia article, showing that batching every question into one TypeSafe call is 11.5x cheaper and 9.6x faster with no change in answers. - [Re-ranking](https://docs.typesafe.ai/cookbooks/rerank_typesafe.md): Builds 30-passage BM25 shortlists for 40 CLERC legal queries, then uses one TypeSafe question per query-candidate pair to raise top-1 accuracy from 5% to 18% and top-10 accuracy from 38% to 62%. - [Line-by-line search](https://docs.typesafe.ai/cookbooks/semantic_find.md): Build semantic search for GitHub's Terms of Service. In one request, score 218 line ids against a plain-language query with a ChoiceQuestion, and use a NoulQuestion to check whether the document contains an answer. - [Structure recovery](https://docs.typesafe.ai/cookbooks/autoformat.md): Reconstructs Markdown from plain text that lost its formatting in two requests: one stitches hard-wrapped lines back together, one classifies every block (heading, list, code, callout) with companion questions read only when relevant. - [Function calling](https://docs.typesafe.ai/cookbooks/function_calling.md): Turns natural-language trading requests into calls to ordinary typed functions by mapping function names and closed-set arguments to confidence-aware TypeSafe questions. - [Skill suggestion](https://docs.typesafe.ai/cookbooks/skill_suggestion.md): Picks at most one skill for an agent turn out of the 182 in Nous Research's Hermes catalog: one TypeSafe request ranks every skill and asks whether the turn needs one at all, a second reads the top three properly and can reject all of them. The winner's name goes into a single line of the agent's sy… - [Knowledge graph entity alignment](https://docs.typesafe.ai/cookbooks/entity_alignment.md): Decides which of 450 candidate pairs from two beer catalogues describe the same product. One TypeSafe ScoreQuestion carries the whole decision, because its three levels are the three things you can do with a pair: merge it, leave it unlinked, or hand it to a curator. There is no threshold to fit, an… - [Classifying RAG passages](https://docs.typesafe.ai/cookbooks/classifying_rag_passages.md): Score each retrieved passage with one TypeSafe request, then decide in code which ones reach the answering model. For example, keep and flag ones that contradict the question, and drop ones carrying a hidden instruction or prompt injection. - [Double-checking citations](https://docs.typesafe.ai/cookbooks/citation_check.md): Catch wrong or hallucinated citations by checking against the source document. One TypeSafe ChoiceQuestion decides whether the quote's context supports the claim, and its confidence can flag the citation for human review. - [Guardrails for LLMs](https://docs.typesafe.ai/cookbooks/llm_guardrails.md): Screen every message going into and out of an LLM app with one TypeSafe request, describing possible hazards ('is this a jailbreak attempt?') and scoring severity ('how much harm would complying do?'). Threshold the probabilities it hands back and you decide whether to pass, review, block, or route… - [SDE cascade](https://docs.typesafe.ai/cookbooks/sde_cascade.md): Uses a 2-stage structured-data-extraction cascade (mini → verify → reasoning) to get most of the quality of a big reasoning model at a fraction of the cost. - [Date extraction](https://docs.typesafe.ai/cookbooks/date_extraction_cookbook.md): Extracts absolute and relative dates by asking TypeSafe for the parts named in a document, then resolving and validating them in code with confidence-based review. - [Pre-parsed value extraction](https://docs.typesafe.ai/cookbooks/pre_parsed_value_extraction_cookbook.md): Uses regexes to find candidate emails, phone numbers, and amounts, then has TypeSafe select the requested span so code can normalize a verbatim value. - [Hierarchical classification](https://docs.typesafe.ai/cookbooks/hierarchical_classification.md): Classifies documents through deep patent, retail product, biomedical, and source-code hierarchies using parallel beam search over TypeSafe Choice probabilities. - [Autoresearch feature discovery](https://docs.typesafe.ai/cookbooks/autoresearch_feature_discovery.md): Runs an autoresearch loop that proposes TypeSafe questions, converts free text into numeric features, and uses model errors to improve a supervised CatBoost regressor. - [Classification using confidence](https://docs.typesafe.ai/cookbooks/classification_using_confidence.md): Classify SEC annual reports into 75 industry groups with one Choice each, then read the answer's own confidence to decide whether to report that group or the broader division above it.