FoundryNet / Error codes / HTTP / REST 403
HTTP / REST error code

403 — Forbidden — guardrail, and often intentional

The request is authenticated and paid for, but a guardrail forbids it. On Forge, guardrail writes are human-approved by design, so an agent hitting 403 on a write is frequently correct behaviour rather than a bug.

Start free HTTP / REST → canonical

Diagnosis

When you hit this


Resolution

How to fix it

  1. Do not automate around it
    If an agent needs a guardrail changed, route it to a human approval step.
  2. Check the key's scope
    A scoped key may be read-only by design.

Normalization

What Forge does about it

This is a design decision, not an oversight. Safety-relevant writes require a human, so automating around a 403 defeats the control it represents. Read paths are unaffected.


Connect

Normalize HTTP / REST telemetry

One MCP endpoint serves every protocol adapter. 16,908 curated mappings, 366 canonical fields.

# normalize telemetry from HTTP / REST — and 13 other protocols
claude mcp add --transport http forge https://mcp.foundrynet.io/mcp \
  --header 'Authorization: Bearer YOUR_FORGE_KEY'
✓ forge connected — 32 tools available

Related

Keep reading

Other HTTP / REST codes: 401 402 422 429

Equipment that speaks HTTP / REST: Caterpillar Cummins Haas MiR (Mobile Industrial Robots) Universal Robots OTTO Motors 6 River Systems AGILOX Detroit Diesel Fetch Robotics

HTTP / REST protocol hub

Other protocols: Modbus OPC UA MQTT / Sparkplug B FANUC FOCAS EtherNet/IP PROFINET / S7 BACnet/IP J1939 (CAN) MTConnect ROS 2 (DDS) SNMP MAVLink CSV ingest

All error codes · All OEMs · All protocols

Industrial AI fails at the data layer. The Machine Agent explains why, weekly. Read it →
Get the thesis behind this infrastructure — The Machine Agent, weekly.