Airefs Events API
The Events API from Airefs — 2 operation(s) for events.
The Events API from Airefs — 2 operation(s) for events.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/getairefs-com:getairefs-com-events-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
version: 1.0.0
title: Open Events API
tags:
- name: Events
paths:
/v1/events:
post:
tags:
- Events
summary: Create a new analytics event (pageview)
description: Posts a pageview event for analytics tracking (server or client)
security:
- bearerAuth: []
operationId: post_EventCreate
requestBody:
content:
application/json:
schema:
oneOf:
- type: object
properties:
source:
type: string
enum:
- site
name:
type: string
enum:
- pageview
url:
type: string
example: https://www.example.com/blog/post-title
timestamp:
type: string
description: ISO 8601 timestamp (optional). Accepts various formats including with or without timezone suffix.
example: '2025-05-29T00:00:00Z'
headers:
type: object
additionalProperties:
type: string
session_id:
type: string
example: 550e8400-e29b-41d4-a716-446655440000
event_id:
type: string
format: uuid
delivery_protocol:
type: number
enum:
- 1
expected_site_id:
type: string
minLength: 1
event_client:
type: string
example: wordpress-plugin
url_query_allowlist:
type: array
items:
type: string
pattern: ^[A-Za-z][A-Za-z0-9_-]{0,63}(?![\s\S])
maxItems: 16
required:
- name
- url
- headers
- type: object
properties:
name:
type: string
enum:
- pageview
source:
type: string
enum:
- client
url:
type: string
example: https://www.example.com/blog/post-title
timestamp:
type: string
description: ISO 8601 timestamp (optional). Accepts various formats including with or without timezone suffix.
example: '2025-05-29T00:00:00Z'
session_id:
type: string
example: 550e8400-e29b-41d4-a716-446655440000
event_id:
type: string
format: uuid
delivery_protocol:
type: number
enum:
- 1
expected_site_id:
type: string
minLength: 1
page_title:
type: string
example: How to Use Airefs Analytics
screen_width:
type: integer
minimum: 0
maximum: 10000
screen_height:
type: integer
minimum: 0
maximum: 10000
device_type:
type: string
example: desktop
user_agent:
type: string
example: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7)...
os:
type: string
example: Mac OS X
browser:
type: string
example: Chrome
browser_version:
type: string
example: 114.0.5735.133
language:
type: string
example: en-US
timezone_offset:
type: integer
is_potentially_duplicate:
type: boolean
default: false
referrer:
type:
- string
- 'null'
event_client:
type: string
example: wordpress-plugin
url_query_allowlist:
type: array
items:
type: string
pattern: ^[A-Za-z][A-Za-z0-9_-]{0,63}(?![\s\S])
maxItems: 16
required:
- name
- source
- url
- page_title
- screen_width
- screen_height
- device_type
- user_agent
- os
- browser
- browser_version
- language
- timezone_offset
- referrer
responses:
'200':
description: Successfully posted analytics event
content:
application/json:
schema:
type: object
properties:
success:
type: boolean
message:
type: string
event_id:
type: string
delivery_protocol:
type: number
enum:
- 1
site_id:
type: string
required:
- success
- message
'400':
description: Bad request - invalid data
content:
application/json:
schema:
type: object
properties:
success:
type: boolean
error:
type: string
required:
- success
- error
'401':
description: Unauthorized - invalid or missing access token
content:
application/json:
schema:
type: object
properties:
success:
type: boolean
error:
type: string
required:
- success
- error
'403':
description: Forbidden - insufficient permissions or site_id mismatch
content:
application/json:
schema:
type: object
properties:
success:
type: boolean
error:
type: string
required:
- success
- error
'500':
description: Internal server error
content:
application/json:
schema:
type: object
properties:
success:
type: boolean
error:
type: string
required:
- success
- error
/v1/events/batch:
post:
tags:
- Events
summary: Create a reliable batch of analytics events
description: Accepts up to 100 reliable events in 512 KiB. Receipts acknowledge only synchronously committed events.
security:
- bearerAuth: []
operationId: post_EventBatchCreate
requestBody:
content:
application/json:
schema:
type: object
properties:
delivery_protocol:
type: number
enum:
- 1
expected_site_id:
type: string
minLength: 1
events:
type: array
items: {}
minItems: 1
maxItems: 100
required:
- delivery_protocol
- expected_site_id
- events
responses:
'200':
description: Per-event delivery receipts
content:
application/json:
schema:
type: object
properties:
success:
type: boolean
enum:
- true
delivery_protocol:
type: number
enum:
- 1
site_id:
type: string
results:
type: array
items:
anyOf:
- type: object
properties:
event_id:
type: string
format: uuid
success:
type: boolean
enum:
- true
required:
- event_id
- success
- type: object
properties:
event_id:
type: string
format: uuid
index:
type: integer
success:
type: boolean
enum:
- false
error:
type: string
retryable:
type: boolean
retry_individually:
type: boolean
required:
- success
- error
- retryable
required:
- success
- delivery_protocol
- site_id
- results