# DosePlot Pharmacokinetic Simulation

> DosePlot Pharmacokinetic Simulation is a paid API for AI agents from api.doseplot.com, paid per call via x402, $0.01/call, status unknown (last checked 2026-10-12).

Runs a deterministic pharmacokinetic simulation for a specified compound, dose, and dosing schedule, returning the modelled serum concentration curve over the requested duration plus a 60-day washout tail.

## Facts

- Endpoint: POST https://api.doseplot.com/v1/simulate?utm_source=zero.xyz
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-12
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/doseplot-pharmacokinetic-simulation-81c9a030
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_8S3Af2xbmbq7lLwP2yID3

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability doseplot-pharmacokinetic-simulation-81c9a030 -d '<json body>'
```

Example prompt: Model the serum concentration curve for testosterone cypionate at 150mg injected once per week for 16 weeks, sampled 24 times per day, and include the washout tail.

## When to prefer this

Use this endpoint when you need a deterministic, reference-data-grounded pharmacokinetic serum curve for a specific compound, dose, route, and injection frequency — particularly for compounds with published PK models (e.g. testosterone esters, peptides). Prefer this over generic PK calculators when you need ester-aware washout tails and structured time-series output suitable for charting or downstream analysis. Not appropriate for novel compounds without published models or for clinical dosing decisions.

## Known failure modes

- 422 route_unsupported_for_compound — the specified route is not a published route for the compound
- 422 unit_unsupported_for_compound — dose unit (IU/mcg) has no published conversion for the compound
- 400/422 invalid compound — compound id, slug, or alias not found
- 400 dose out of range — dose_mg, dose_iu, or dose_mcg is zero or negative
- 400 duration out of range — duration_weeks outside 1–260
- 400 injections_per_week out of range — value outside 0.25–21
- Payment required — x402 payment of $0.01 USDC must be included in request headers

## How this service works

Pharmacokinetic simulation for one compound: walks the published model at one dose and cadence and returns the modelled serum curve over the requested horizon plus a 60-day washout tail. Deterministic math over published reference data -- not medical advice, not a prescription, and for relay to a human decision-maker rather than autonomous administration.

## Output

Returns a time-series array of modelled serum concentration values sampled at the requested resolution (up to 24 samples/day) spanning the full dosing window plus a mandatory 60-day washout tail. Values are based on published pharmacokinetic reference models for the specified compound and route.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "route": {
   "type": "string",
   "description": "One of the compound's published routes (see /v1/compounds/{idOrSlug}); a string this compound does not publish is 422 route_unsupported_for_compound. Omitted, the compound's primary route is used."
  },
  "dose_iu": {
   "type": "number",
   "description": "Dose per injection in the compound's activity unit. Requires a published conversion for that compound, else 422 unit_unsupported_for_compound.",
   "exclusiveMinimum": 0
  },
  "dose_mg": {
   "type": "number",
   "description": "Dose per injection, milligrams.",
   "exclusiveMinimum": 0
  },
  "compound": {
   "type": "string",
   "description": "Canon id, slug, or alias. Slug and alias matching is case-insensitive."
  },
  "dose_mcg": {
   "type": "number",
   "description": "Dose per injection, micrograms.",
   "exclusiveMinimum": 0
  },
  "duration_weeks": {
   "type": "integer",
   "maximum": 260,
   "minimum": 1,
   "description": "Length of the dosing window. The model always adds a 60-day washout tail."
  },
  "samples_per_day": {
   "type": "integer",
   "default": 24,
   "maximum": 24,
   "minimum": 1,
   "description": "Sample resolution of the returned series."
  },
  "injections_per_week": {
   "type": "number",
   "maximum": 21,
   "minimum": 0.25,
   "description": "Injections per WEEK -- not per day. The name is the contract: a per-day reading of the same number changes the accepted dose range by 7x."
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/doseplot-pharmacokinetic-simulation-81c9a030/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.doseplot.com](https://www.zero.xyz/host/api.doseplot.com/llms.txt)
