Intent Specification 0.2

How an AI decides to use OniPin

The user says "book an appointment" — not "use OniPin". This spec defines the flow any assistant can implement.

5-step flow

  1. Discover — Does the business publish OniPin? (/v1/discover, onipin meta, llms.txt)
  2. Handshake — Announce agent + intent (POST /v1/handshake/{pin})
  3. Send message — POST /v1/chat/{pin}
  4. Receive reply — Text + conversationId
  5. Action — Booking/order in Agenda (data.bookingId / orderId)

Discover from URL

curl
curl "https://onnivers.store/v1/discover?url=https://onnivers.store/probar-chat/"

Handshake

curl
curl -X POST https://onnivers.store/v1/handshake/onp_vuzadcjv3xw7 \
  -H "Content-Type: application/json" \
  -d '{"agent":{"name":"MyBot","version":"1.0"},"intent":"appointment.create"}'

Chat with intent

curl
curl -X POST https://onnivers.store/v1/chat/onp_vuzadcjv3xw7 \
  -H "Content-Type: application/json" \
  -H "X-Caller-Type: ai-agent" \
  -d '{"message":"I want a demo on Friday","agent":{"name":"MyBot"},"intent":"appointment.create"}'

Intents

← Full documentation · Demo pin:onp_vuzadcjv3xw7