Api Endpoint

api.doseplot.com

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.

Open interactive test console

Offering

Provider
api.doseplot.com
Method
POST
Offering type
Api Endpoint
Transport type
http
Category
Health And Medicine
Delivery
Not provided
Pricing model
Not provided
x402 version
2

Endpoint context

URL
https://api.doseplot.com/v1/pk/curve
MIME type
Not provided
First seen
2026-10-16T01:51:51.176Z
Last seen
Tags
None supplied

Payment pricing

x402 payment terms are the authoritative price for calling this endpoint.

Payment option 1
0.01 USDC
Atomic price: 10000 · Network: eip155:8453 · Asset: USDC · Scheme: exact
Raw x402 terms
[
  {
    "scheme": "exact",
    "network": "eip155:8453",
    "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "amount": "10000",
    "payTo": "0x9E3df8006B1917ECcED9591BeCcb893d0DE9eBd9"
  }
]

Observed health

Status
Reachable
Latest latency
1209 ms
Average latency
1075 ms
HTTP status
405
Last checked
Reachability
100% over 14 checks

Latency is measured to the first response headers. A reachable result does not verify response accuracy or merchant identity.

Input schema

{
  "additionalProperties": false,
  "properties": {
    "body": {
      "additionalProperties": false,
      "description": "Exactly one dose field must be present. UNKNOWN FIELDS ARE REJECTED: a misspelling is a structural failure (400 when a payment is presented; the 402 challenge when none is), not a silently ignored key (a dropped `injections_per_week` would change the answer). The dose is converted to mg ONCE and the converted value is what both the range check and the model use.",
      "oneOf": [
        {
          "required": [
            "dose_mg"
          ]
        },
        {
          "required": [
            "dose_mcg"
          ]
        },
        {
          "required": [
            "dose_iu"
          ]
        }
      ],
      "properties": {
        "compound": {
          "description": "Canon id, slug, or alias. Slug and alias matching is case-insensitive.",
          "type": "string"
        },
        "dose_iu": {
          "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,
          "type": "number"
        },
        "dose_mcg": {
          "description": "Dose per injection, micrograms.",
          "exclusiveMinimum": 0,
          "type": "number"
        },
        "dose_mg": {
          "description": "Dose per injection, milligrams.",
          "exclusiveMinimum": 0,
          "type": "number"
        },
        "duration_weeks": {
          "description": "Length of the dosing window. The model always adds a 60-day washout tail.",
          "maximum": 260,
          "minimum": 1,
          "type": "integer"
        },
        "injections_per_week": {
          "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.",
          "maximum": 21,
          "minimum": 0.25,
          "type": "number"
        },
        "route": {
          "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.",
          "type": "string"
        },
        "samples_per_day": {
          "default": 24,
          "description": "Sample resolution of the returned series.",
          "maximum": 24,
          "minimum": 1,
          "type": "integer"
        }
      },
      "required": [
        "compound",
        "injections_per_week",
        "duration_weeks"
      ],
      "type": "object"
    },
    "bodyType": {
      "enum": [
        "json",
        "form-data",
        "text"
      ],
      "type": "string"
    },
    "method": {
      "enum": [
        "POST"
      ],
      "type": "string"
    },
    "type": {
      "const": "http",
      "type": "string"
    }
  },
  "required": [
    "type",
    "method",
    "bodyType",
    "body"
  ],
  "type": "object"
}

Output schema

{
  "properties": {
    "example": {
      "type": "object"
    },
    "type": {
      "type": "string"
    }
  },
  "required": [
    "type"
  ],
  "type": "object"
}