Pirsch Domains API
Manage tracked domains and their configuration
Manage tracked domains and their configuration
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/pirsch-domains-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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:
title: Pirsch Access Links Domains API
description: RESTful API for sending page views, events, and session data to Pirsch, and for querying statistics including visitors, pages, referrers, UTM parameters, geo-location, device, browser, conversion goals, funnels, and real-time active visitors. Also exposes management endpoints for domains, members, clients, webhooks, email reports, traffic filters, short links, and views.
version: '1'
contact:
name: Pirsch Support
url: https://pirsch.io
license:
name: Proprietary
url: https://pirsch.io/privacy
servers:
- url: https://api.pirsch.io/api/v1
description: Pirsch production API
security:
- BearerAuth: []
tags:
- name: Domains
description: Manage tracked domains and their configuration
paths:
/domain:
get:
operationId: listDomains
summary: List domains
description: Get all domains accessible to the authenticated user
tags:
- Domains
parameters:
- name: id
in: query
schema:
type: string
- name: subdomain
in: query
schema:
type: string
- name: domain
in: query
schema:
type: string
- name: access
in: query
schema:
type: string
- name: search
in: query
schema:
type: string
responses:
'200':
description: Domain list
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Domain'
post:
operationId: createDomain
summary: Create a domain
description: Create a new domain for tracking
tags:
- Domains
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreateDomainRequest'
responses:
'200':
description: Created domain
content:
application/json:
schema:
$ref: '#/components/schemas/Domain'
delete:
operationId: deleteDomain
summary: Delete a domain
description: Permanently delete a domain and all its data
tags:
- Domains
parameters:
- name: id
in: query
required: true
schema:
type: string
responses:
'200':
description: Domain deleted
/domain/hostname:
post:
operationId: updateDomainHostname
summary: Update domain hostname
tags:
- Domains
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- domain_id
- hostname
properties:
domain_id:
type: string
hostname:
type: string
responses:
'200':
description: Hostname updated
/domain/subdomain:
post:
operationId: updateDomainSubdomain
summary: Update domain subdomain
tags:
- Domains
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- domain_id
- subdomain
properties:
domain_id:
type: string
subdomain:
type: string
responses:
'200':
description: Subdomain updated
/domain/timezone:
post:
operationId: updateDomainTimezone
summary: Update domain timezone
tags:
- Domains
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- domain_id
- timezone
properties:
domain_id:
type: string
timezone:
type: string
responses:
'200':
description: Timezone updated
/domain/settings:
post:
operationId: updateDomainSettings
summary: Update domain settings
tags:
- Domains
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- domain_id
properties:
domain_id:
type: string
settings:
type: object
responses:
'200':
description: Settings updated
/domain/alternative:
get:
operationId: listAlternativeDomains
summary: List alternative domains
tags:
- Domains
parameters:
- name: domain_id
in: query
required: true
schema:
type: string
responses:
'200':
description: Alternative domains
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/AlternativeDomain'
post:
operationId: createAlternativeDomain
summary: Create alternative domain
tags:
- Domains
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- domain_id
- hostname
properties:
domain_id:
type: string
hostname:
type: string
responses:
'200':
description: Alternative domain created
content:
application/json:
schema:
$ref: '#/components/schemas/AlternativeDomain'
put:
operationId: updateAlternativeDomain
summary: Update alternative domain
tags:
- Domains
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- id
- hostname
properties:
id:
type: string
hostname:
type: string
responses:
'200':
description: Alternative domain updated
delete:
operationId: deleteAlternativeDomain
summary: Delete alternative domain
tags:
- Domains
parameters:
- name: id
in: query
required: true
schema:
type: string
responses:
'200':
description: Alternative domain deleted
components:
schemas:
CreateDomainRequest:
type: object
required:
- hostname
- subdomain
- timezone
properties:
hostname:
type: string
subdomain:
type: string
timezone:
type: string
organization_id:
type: string
theme_id:
type: string
public:
type: boolean
group_by_title:
type: boolean
disable_scripts:
type: boolean
display_name:
type: string
settings:
type: object
Domain:
type: object
properties:
id:
type: string
hostname:
type: string
subdomain:
type: string
def_time:
type: string
format: date-time
mod_time:
type: string
format: date-time
user_id:
type:
- string
- 'null'
organization_id:
type:
- string
- 'null'
timezone:
type: string
public:
type: boolean
disable_scripts:
type: boolean
subscription_active:
type: boolean
display_name:
type: string
group_by_title:
type: boolean
user_role:
type: string
enum:
- Owner
- Admin
- Viewer
theme_id:
type: string
settings:
type: object
AlternativeDomain:
type: object
properties:
id:
type: string
domain_id:
type: string
hostname:
type: string
securitySchemes:
BearerAuth:
type: http
scheme: bearer
description: Pass an OAuth2 access token obtained from POST /token, or a static access key, as a Bearer token in the Authorization header.