> ## Documentation Index
> Fetch the complete documentation index at: https://docs.oneshotagent.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Device Clearances

> Look up US medical device 510(k) clearances and their decisions, newest decision first.

Look up medical devices cleared by the US Food and Drug Administration through premarket notification (510(k)). Supply at least one clearance number, applicant, device name or product code. Names are matched as word phrases; multiple filters must all match. Returns the total matches and clearance records, newest decision first, with device classifications and decision and received dates. Contact names and street addresses are excluded. No match returns an empty list. The source refreshes weekly.

## Authentication

Requires x402 payment in the `payment-signature` header.

## Request Body

<ParamField body="k_number" type="string">
  The clearance number, for example K253582.
</ParamField>

<ParamField body="applicant" type="string">
  The company that applied, matched as words. 2 to 100 characters.
</ParamField>

<ParamField body="device_name" type="string">
  The device name, matched as words. 2 to 100 characters.
</ParamField>

<ParamField body="product_code" type="string">
  The FDA product code.
</ParamField>

<ParamField body="limit" type="integer">
  The most clearance records to return. From 1 to 25. Defaults to `10`.
</ParamField>

<Snippet file="audit-context-params.mdx" />

## Response (200 OK)

Top-level envelope: `success` (boolean) and `data` (object). All fields below are nested under `data`.

<ResponseField name="data.request_id" type="string">
  Durable job ID for audit and lookup
</ResponseField>

<ResponseField name="data.status" type="string">
  Job status: `completed`
</ResponseField>

<ResponseField name="data.tool" type="string">
  Always `product_device_clearances`
</ResponseField>

<ResponseField name="data.result" type="object">
  The answer, described under Result below
</ResponseField>

<ResponseField name="data.evidence" type="object">
  Where the answer came from and when
</ResponseField>

<ResponseField name="data.evidence.source" type="string">
  The public body the data comes from. Always `US Food and Drug Administration`.
</ResponseField>

<ResponseField name="data.evidence.source_kind" type="string">
  `public` when the data comes from a public body, `commercial` otherwise
</ResponseField>

<ResponseField name="data.evidence.retrieved_at" type="string">
  When the lookup was made, as an ISO 8601 UTC time
</ResponseField>

<ResponseField name="data.evidence.as_of" type="string">
  When the source says the fact was last updated, or `null` when the source gives no date
</ResponseField>

## Result

Nested under `data.result`.

<ResponseField name="data.result.total" type="number">
  How many clearances matched, including any beyond limit.
</ResponseField>

<ResponseField name="data.result.clearances" type="object[]">
  Matching clearances, newest decision first; absent values are null.
</ResponseField>

<ResponseField name="data.result.clearances[].k_number" type="string">
  The clearance number. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.clearances[].device_name" type="string">
  The device name on the clearance. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.clearances[].applicant" type="string">
  The company that applied. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.clearances[].city" type="string">
  The applicant city. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.clearances[].state" type="string">
  The applicant state. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.clearances[].country_code" type="string">
  The applicant country code. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.clearances[].product_code" type="string">
  The FDA product code. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.clearances[].device_class" type="string">
  The device class. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.clearances[].regulation_number" type="string">
  The device regulation number. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.clearances[].medical_specialty" type="string">
  The medical specialty. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.clearances[].decision" type="string">
  The decision description. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.clearances[].decision_code" type="string">
  The decision code. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.clearances[].decision_date" type="string">
  The decision date. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.clearances[].received_date" type="string">
  The date the application was received. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.clearances[].clearance_type" type="string">
  The clearance type. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.clearances[].third_party_review" type="boolean">
  Whether a third party reviewed the application; null when unspecified.
</ResponseField>

<ResponseField name="data.result.clearances[].summary_type" type="string">
  Whether the application provides a statement or a summary. `null` when the source gives no value.
</ResponseField>

<RequestExample>
  ```bash cURL theme={null}
  curl -X POST https://win.oneshotagent.com/v1/tools/lookup/product-device-clearances \
    -H "Content-Type: application/json" \
    -H "payment-signature: <base64 x402 payment>" \
    -d '{
      "applicant": "Apple Inc",
      "limit": 2
    }'
  ```

  ```javascript JavaScript theme={null}
  const response = await fetch("https://win.oneshotagent.com/v1/tools/lookup/product-device-clearances", {
    method: "POST",
    headers: {
      "Content-Type": "application/json",
      "payment-signature": paymentProof,
    },
    body: JSON.stringify({
      "applicant": "Apple Inc",
      "limit": 2
    }),
  });
  ```

  ```typescript SDK theme={null}
  const result = await agent.tool('lookup/product-device-clearances', {
    applicant: 'Apple Inc',
    limit: 2
  });
  console.log(result.data.result);
  console.log(result.data.evidence);
  ```
</RequestExample>

<ResponseExample>
  ```json Response (200) theme={null}
  {
    "success": true,
    "data": {
      "request_id": "uuid",
      "receipt_id": "rcpt_...",
      "status": "completed",
      "tool": "product_device_clearances",
      "result": {
        "total": 12,
        "clearances": [
          {
            "k_number": "K253582",
            "device_name": "Medical Imaging Calibration Feature (MICF)",
            "applicant": "Apple, Inc.",
            "city": "Cupertino",
            "state": "CA",
            "country_code": "US",
            "product_code": "SHN",
            "device_class": "1",
            "regulation_number": "892.1940",
            "medical_specialty": "Radiology",
            "decision": "Substantially Equivalent",
            "decision_code": "SESE",
            "decision_date": "2026-04-01",
            "received_date": "2025-11-17",
            "clearance_type": "Traditional",
            "third_party_review": false,
            "summary_type": "Summary"
          },
          {
            "k_number": "K250507",
            "device_name": "Hypertension Notification Feature (HTNF)",
            "applicant": "Apple, Inc.",
            "city": null,
            "state": null,
            "country_code": null,
            "product_code": "SFR",
            "device_class": "2",
            "regulation_number": "870.2380",
            "medical_specialty": "Cardiovascular",
            "decision": "Substantially Equivalent",
            "decision_code": "SESE",
            "decision_date": "2025-09-11",
            "received_date": "2025-02-21",
            "clearance_type": "Traditional",
            "third_party_review": null,
            "summary_type": null
          }
        ]
      },
      "evidence": {
        "source": "US Food and Drug Administration",
        "source_kind": "public",
        "retrieved_at": "2026-10-15T12:00:00.000Z",
        "calls": [
          {
            "retrieved_at": "2026-10-15T12:00:00.000Z"
          }
        ],
        "as_of": "2026-10-05"
      }
    }
  }
  ```
</ResponseExample>

<Info>See [Pricing](/pricing) for this tool's price. A wallet (x402) call receives it in the 402 quote before anything is charged; a call paid from prepaid credits is charged when the API accepts the request and answers `200`.</Info>

## Notes

* Results return inline. The finished job stays available at `/v1/requests/{request_id}`


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.