Agent Management

Update agent policy

Changed on

Partially update an agent's policy. Only provided fields will be updated; omitted fields retain their current values. Policy changes take effect immediately. The spending limits currency is immutable; attempting to change it returns a 400 response.

patch/agents/{agentId}/policy

Request

  • Base URL
    https://api.lightspark.com/grid/2025-10-13
  • URL
    https://api.lightspark.com/grid/2025-10-13/agents/{agentId}/policy
  • Auth
    HTTP basic

Request body

permissionsAgentPermission[]

Updated list of permissions. Replaces the entire permissions list when provided.

defaultExecutionMode'AUTO' | 'APPROVAL_REQUIRED'

Execution mode controlling whether agent actions require human approval. AUTO: The agent can execute actions autonomously without explicit approval. APPROVAL_REQUIRED: All agent actions require explicit human approval before execution.

Example request

{
  "spendingLimits": {
    "currency": "USD",
    "perTransactionLimit": 50000,
    "dailyLimit": 500000,
    "dailyTransactionLimit": 10,
    "monthlyLimit": 5000000
  },
  "accountRestrictions": {
    "allowedAccountIds": [
      "Account:019542f5-b3e7-1d02-0000-000000000001"
    ],
    "accountRules": [
      {
        "accountId": "Account:019542f5-b3e7-1d02-0000-000000000001",
        "perTransactionLimit": 10000
      }
    ]
  },
  "approvalThresholds": {
    "currency": "USD",
    "amount": 100000
  }
}

Response

Agent policy updated successfully

idstring required

System-generated unique identifier for the agent.

namestring required

Human-readable name for the agent.

customerIdstring required

The ID of the customer this agent operates on behalf of.

isPausedboolean required

Whether the agent is currently paused. Paused agents cannot initiate any actions.

isConnectedboolean required

Whether the agent has been installed and connected (i.e., its device code has been redeemed).

createdAtstring date-time required

Creation timestamp.

updatedAtstring date-time required

Last update timestamp.

Example response

{
  "id": "Agent:019542f5-b3e7-1d02-0000-000000000001",
  "name": "Payroll Automation Agent",
  "customerId": "Customer:019542f5-b3e7-1d02-0000-000000000001",
  "isConnected": true,
  "policy": {
    "spendingLimits": {
      "currency": "USD",
      "perTransactionLimit": 50000,
      "dailyLimit": 500000,
      "dailyTransactionLimit": 10,
      "monthlyLimit": 5000000
    },
    "accountRestrictions": {
      "allowedAccountIds": [
        "Account:019542f5-b3e7-1d02-0000-000000000001"
      ],
      "accountRules": [
        {
          "accountId": "Account:019542f5-b3e7-1d02-0000-000000000001",
          "perTransactionLimit": 10000
        }
      ]
    },
    "approvalThresholds": {
      "currency": "USD",
      "amount": 100000
    }
  },
  "usage": {
    "dailyTransactionCount": 3,
    "dailySpend": 150000,
    "dailyResetDate": "2025-07-22",
    "monthlySpend": 750000,
    "monthlyResetMonth": "2025-08"
  },
  "createdAt": "2025-07-21T17:32:28Z",
  "updatedAt": "2025-07-21T17:32:28Z"
}

Changes

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status

    • warning

      added the new CORRIDOR_UNDER_MAINTENANCE enum value to the response property for the response status