Skip to main content
POST
Approve, reject, or request changes on a TIL request

Authorizations

Authorization
string
header
required

Authorization: Bearer <token> where <token> is either a neo_sk_<env>_<secret> API key (service account) or a Microsoft Entra ID access token (dashboard user).

Path Parameters

request_id
string
required

Body

application/json
action
enum<string>
required

"approve" authorizes the pending action (with a note, the agent must honour it). "reject" stops it. "request_changes" does neither: the note is required and nothing is authorized. A request raised by an agent run resumes that run to revise its proposal and raise a fresh request; a request raised in a chat with a conversational agent is read on the next message in that chat, which the dashboard and Teams send for you and a direct API caller must send. Only agent (AGENTIC) requests accept request_changes.

Available options:
approve,
reject,
request_changes
acting_end_user
string | null

The technician resolving the request, as their stable user id (M365 AAD object id). Honored only for a platform service account: it authorizes resolving a proactive (Teams) TIL when this technician is one of its recipients, or a conversational (chat) MSP agent's TIL, and records them as the approver. Ignored for other callers.

acting_end_user_name
string | null

Display name of the resolving technician (acting_end_user), for the audit record. Honored only for a platform service account; falls back to the user id when absent.

acting_end_user_tenant_id
string | null

For the trusted Teams relay only: the authenticated sender's Microsoft directory. For proactive cards, resolves the workspace from the request and verifies the recipient's current access. Must come from the Teams activity, never card data.

advance_rotation
boolean
default:false

Ticket Dispatch only, and only with action "reject". False (the default) means do not auto-assign this ticket: Neo stops dispatching it and leaves it for manual assignment, which is what a rejection means everywhere else. True declines only the proposed technician and lets Neo offer the ticket to the next available one, excluding everyone who has already declined it. Ignored for every other request type.

client_id
string | null

Target tenant whose TIL request to resolve. Honored only for a platform service account; any other caller passing it gets 403. A platform caller may resolve a tenant's TIL when the acting technician (see acting_end_user) is one of its recipients, or when it belongs to that tenant's Neo Support agent. Omit to resolve in the caller's own tenant.

note
string | null

Response

Success.

data
TilRequest · object
required
meta
object
required