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

# Quickstart

> Place your first order in five minutes.

Once you have your API key, you're three commands away from your first order.

<Steps>
  <Step title="Get your API key">
    Email [info@skynetparts.com](mailto:info@skynetparts.com) to request access. Your key arrives in your inbox within one business day, along with the endpoint URLs and a sample call. See [Authentication](/authentication) for what to include in your email.
  </Step>

  <Step title="Save the key">
    Set it as an environment variable called `SKYNET_API_KEY` so the examples below work as-is.

    ```bash theme={null}
    export SKYNET_API_KEY="sk_live_a7f3c2e1b4d9..."
    ```
  </Step>

  <Step title="Look up parts">
    Send the part numbers you want to order.

    ```bash theme={null}
    curl -X POST https://api.skynetparts.com/api/b2b/catalog \
      -H "Authorization: Bearer $SKYNET_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{ "part_numbers": ["MS21042L3", "AN3-5A"] }'
    ```

    Response:

    ```json theme={null}
    {
      "success": true,
      "found_parts": [
        {
          "part_id": "skynet_part_BWxLDSfV6dFV5o40VwVTV0arE-5dVB7VE22Jd1bb40zYqKv2eI7lRPsBJGk0JleZRO1NI5VQz6qe7KifEy24PQGAL0bZbcE",
          "part_number": "MS21042L3",
          "title": "Self-Locking Nut, MS21042L3",
          "vendor": "Aerospace Hardware Co",
          "available_stock": 87,
          "price": { "amount": "12.40", "currency": "USD" },
          "status": "ACTIVE"
        }
      ],
      "not_found": ["AN3-5A"],
      "summary": { "total_requested": 2, "found": 1, "not_found": 1 }
    }
    ```

    Copy the `part_id` from `found_parts` you'll use it in the next step. Anything in `not_found` didn't match our catalog; the response is still a success.
  </Step>

  <Step title="Look up parts">
    Send the part numbers you want to order.

    ```bash theme={null}
    curl -X POST https://api.skynet-docs.skynetparts.com/public/api/v1/b2b/catalog \
      -H "Authorization: Bearer $SKYNET_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{ "part_numbers": ["MS21042L3", "AN3-5A"] }'
    ```

    Response:

    ```json theme={null}
    {
      "success": true,
      "found_parts": [
        {
          "part_id": "skynet_part_BWxLDSfV6dFV5o40VwVTV0arE-5dVB7VE22Jd1bb40zYqKv2eI7lRPsBJGk0JleZRO1NI5VQz6qe7KifEy24PQGAL0bZbcE",
          "part_number": "MS21042L3",
          "title": "Self-Locking Nut, MS21042L3",
          "vendor": "Aerospace Hardware Co",
          "available_stock": 87,
          "price": { "amount": "12.40", "currency": "USD" },
          "status": "ACTIVE"
        }
      ],
      "not_found": ["AN3-5A"],
      "summary": { "total_requested": 2, "found": 1, "not_found": 1 }
    }
    ```

    Copy the `part_id` from `found_parts` you'll use it in the next step. Anything in `not_found` didn't match our catalog; the response is still a success.
  </Step>

  <Step title="Look up parts">
    Send the part numbers you want to order.

    ```bash theme={null}
    curl -X POST https://api.skynetparts.com/public/api/v1/b2b/catalog \
      -H "Authorization: Bearer $SKYNET_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{ "part_numbers": ["MS21042L3", "AN3-5A"] }'
    ```

    Response:

    ```json theme={null}
    {
      "success": true,
      "found_parts": [
        {
          "part_id": "skynet_part_BWxLDSfV6dFV5o40VwVTV0arE-5dVB7VE22Jd1bb40zYqKv2eI7lRPsBJGk0JleZRO1NI5VQz6qe7KifEy24PQGAL0bZbcE",
          "part_number": "MS21042L3",
          "title": "Self-Locking Nut, MS21042L3",
          "vendor": "Aerospace Hardware Co",
          "available_stock": 87,
          "price": { "amount": "12.40", "currency": "USD" },
          "status": "ACTIVE"
        }
      ],
      "not_found": ["AN3-5A"],
      "summary": { "total_requested": 2, "found": 1, "not_found": 1 }
    }
    ```

    Copy the `part_id` from `found_parts` you'll use it in the next step. Anything in `not_found` didn't match our catalog; the response is still a success.
  </Step>

  <Step title="Place an order">
    Use the `part_id` from the previous step.

    ```bash theme={null}
    curl -X POST https://api.skynetparts.com/api/b2b/orders \
      -H "Authorization: Bearer $SKYNET_API_KEY" \
      -H "Content-Type: application/json" \
      -H "Idempotency-Key: ACME-PO-4471-2026-06-03" \
      -d '{
        "items": [
          { "part_id": "skynet_part_BWxLDSfV6dFV5o40VwVTV0arE-5dVB7VE22Jd1bb40zYqKv2eI7lRPsBJGk0JleZRO1NI5VQz6qe7KifEy24PQGAL0bZbcE", "quantity": 10 }
        ],
        "po_number": "ACME-PO-4471",
        "notes": "Deliver to Hangar B"
      }'
    ```

    Response:

    ```json theme={null}
    {
      "success": true,
      "order": {
        "order_id": "skynet_order_8f2a1c",
        "status": "draft",
        "po_number": "ACME-PO-4471",
        "line_items": [
          {
            "part_number": "MS21042L3",
            "title": "Self-Locking Nut, MS21042L3",
            "quantity": 10,
            "unit_price": { "amount": "11.16", "currency": "USD" },
            "line_total": { "amount": "111.60", "currency": "USD" }
          }
        ],
        "subtotal": { "amount": "111.60", "currency": "USD" },
        "created_at": "2026-06-03T14:30:00Z"
      }
    }
    ```
  </Step>

  <Step title="Place an order">
    Use the `part_id` from the previous step.

    ```bash theme={null}
    curl -X POST https://api.skynet-docs.skynetparts.com/public/api/v1/b2b/orders \
      -H "Authorization: Bearer $SKYNET_API_KEY" \
      -H "Content-Type: application/json" \
      -H "Idempotency-Key: ACME-PO-4471-2026-06-03" \
      -d '{
        "items": [
          { "part_id": "skynet_part_BWxLDSfV6dFV5o40VwVTV0arE-5dVB7VE22Jd1bb40zYqKv2eI7lRPsBJGk0JleZRO1NI5VQz6qe7KifEy24PQGAL0bZbcE", "quantity": 10 }
        ],
        "po_number": "ACME-PO-4471",
        "notes": "Deliver to Hangar B"
      }'
    ```

    Response:

    ```json theme={null}
    {
      "success": true,
      "order": {
        "order_id": "skynet_order_8f2a1c",
        "status": "draft",
        "po_number": "ACME-PO-4471",
        "line_items": [
          {
            "part_number": "MS21042L3",
            "title": "Self-Locking Nut, MS21042L3",
            "quantity": 10,
            "unit_price": { "amount": "11.16", "currency": "USD" },
            "line_total": { "amount": "111.60", "currency": "USD" }
          }
        ],
        "subtotal": { "amount": "111.60", "currency": "USD" },
        "created_at": "2026-06-03T14:30:00Z"
      }
    }
    ```
  </Step>

  <Step title="Place an order">
    Use the `part_id` from the previous step.

    ```bash theme={null}
    curl -X POST https://api.skynetparts.com/public/api/v1/b2b/orders \
      -H "Authorization: Bearer $SKYNET_API_KEY" \
      -H "Content-Type: application/json" \
      -H "Idempotency-Key: ACME-PO-4471-2026-06-03" \
      -d '{
        "items": [
          { "part_id": "skynet_part_BWxLDSfV6dFV5o40VwVTV0arE-5dVB7VE22Jd1bb40zYqKv2eI7lRPsBJGk0JleZRO1NI5VQz6qe7KifEy24PQGAL0bZbcE", "quantity": 10 }
        ],
        "po_number": "ACME-PO-4471",
        "notes": "Deliver to Hangar B"
      }'
    ```

    Response:

    ```json theme={null}
    {
      "success": true,
      "order": {
        "order_id": "skynet_order_8f2a1c",
        "status": "draft",
        "po_number": "ACME-PO-4471",
        "line_items": [
          {
            "part_number": "MS21042L3",
            "title": "Self-Locking Nut, MS21042L3",
            "quantity": 10,
            "unit_price": { "amount": "11.16", "currency": "USD" },
            "line_total": { "amount": "111.60", "currency": "USD" }
          }
        ],
        "subtotal": { "amount": "111.60", "currency": "USD" },
        "created_at": "2026-06-03T14:30:00Z"
      }
    }
    ```
  </Step>

  <Step title="Confirm and automate">
    Sign in to your Skynet B2B account to see the new draft order. Then wrap these two calls in your own script that's the whole integration.
  </Step>
</Steps>
