Compresr Admin - Whitelist API
The Admin - Whitelist API from Compresr — 4 operation(s) for admin - whitelist.
The Admin - Whitelist API from Compresr — 4 operation(s) for admin - whitelist.
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/compresr-admin-whitelist-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
openapi: 3.2.0
info:
title: Compresr Platform Admin Admin - Whitelist API
version: 1.0.0
servers:
- url: https://api.compresr.ai
description: Base URL declared by the provider in apis.yml (roadmap#122).
tags:
- name: Admin - Whitelist
paths:
/api/admin/whitelist:
get:
tags:
- Admin - Whitelist
summary: List Whitelist
description: Return every whitelist rule, newest first, with per-rule detected-user counts.
operationId: list_whitelist_api_admin_whitelist_get
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/WhitelistListResponse'
security:
- HTTPBearer: []
post:
tags:
- Admin - Whitelist
summary: Add Whitelist
description: Add a whitelist rule. 409-equivalent if the pattern already exists.
operationId: add_whitelist_api_admin_whitelist_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/WhitelistCreateRequest'
required: true
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/WhitelistEntry'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- HTTPBearer: []
/api/admin/whitelist/{rule_id}/matches:
get:
tags:
- Admin - Whitelist
summary: Whitelist Matches
description: 'Return the users currently matched by a specific whitelist rule.
Data source is the cached Supabase auth email map + platform user_profiles
for full names, so the query is cheap even with many rules on the page.'
operationId: whitelist_matches_api_admin_whitelist__rule_id__matches_get
security:
- HTTPBearer: []
parameters:
- name: rule_id
in: path
required: true
schema:
type: string
title: Rule Id
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/WhitelistMatchesResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/admin/whitelist/{rule_id}:
delete:
tags:
- Admin - Whitelist
summary: Delete Whitelist
description: Remove a whitelist rule by id.
operationId: delete_whitelist_api_admin_whitelist__rule_id__delete
security:
- HTTPBearer: []
parameters:
- name: rule_id
in: path
required: true
schema:
type: string
title: Rule Id
responses:
'200':
description: Successful Response
content:
application/json:
schema:
type: object
additionalProperties: true
title: Response Delete Whitelist Api Admin Whitelist Rule Id Delete
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/admin/whitelist/preview:
post:
tags:
- Admin - Whitelist
summary: Preview Match
description: 'Test an email against the current ruleset without side effects.
Useful for admins verifying a rule before onboarding a customer.'
operationId: preview_match_api_admin_whitelist_preview_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/WhitelistMatchPreviewRequest'
required: true
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/WhitelistMatchPreviewResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- HTTPBearer: []
components:
schemas:
HTTPValidationError:
properties:
detail:
items:
$ref: '#/components/schemas/ValidationError'
type: array
title: Detail
type: object
title: HTTPValidationError
WhitelistMatchPreviewResponse:
properties:
success:
type: boolean
title: Success
default: true
match:
anyOf:
- $ref: '#/components/schemas/WhitelistEntry'
- type: 'null'
type: object
title: WhitelistMatchPreviewResponse
WhitelistListResponse:
properties:
success:
type: boolean
title: Success
default: true
entries:
items:
$ref: '#/components/schemas/WhitelistEntry'
type: array
title: Entries
total:
type: integer
title: Total
default: 0
type: object
title: WhitelistListResponse
WhitelistMatchPreviewRequest:
properties:
email:
type: string
maxLength: 254
minLength: 3
title: Email
type: object
required:
- email
title: WhitelistMatchPreviewRequest
WhitelistEntry:
properties:
id:
type: string
title: Id
pattern:
type: string
title: Pattern
description: '"user@company.com" or "@company.com"'
credit_limit_usd:
anyOf:
- type: number
- type: 'null'
title: Credit Limit Usd
created_by:
anyOf:
- type: string
- type: 'null'
title: Created By
notes:
anyOf:
- type: string
- type: 'null'
title: Notes
created_at:
type: string
title: Created At
detected_user_count:
anyOf:
- type: integer
- type: 'null'
title: Detected User Count
type: object
required:
- id
- pattern
- created_at
title: WhitelistEntry
WhitelistMatchedUser:
properties:
user_id:
type: string
title: User Id
email:
type: string
title: Email
full_name:
anyOf:
- type: string
- type: 'null'
title: Full Name
type: object
required:
- user_id
- email
title: WhitelistMatchedUser
WhitelistMatchesResponse:
properties:
success:
type: boolean
title: Success
default: true
rule_id:
type: string
title: Rule Id
pattern:
type: string
title: Pattern
matches:
items:
$ref: '#/components/schemas/WhitelistMatchedUser'
type: array
title: Matches
total:
type: integer
title: Total
default: 0
type: object
required:
- rule_id
- pattern
title: WhitelistMatchesResponse
WhitelistCreateRequest:
properties:
pattern:
type: string
maxLength: 254
minLength: 3
title: Pattern
credit_limit_usd:
anyOf:
- type: number
minimum: 0.0
- type: 'null'
title: Credit Limit Usd
notes:
anyOf:
- type: string
maxLength: 500
- type: 'null'
title: Notes
type: object
required:
- pattern
title: WhitelistCreateRequest
ValidationError:
properties:
loc:
items:
anyOf:
- type: string
- type: integer
type: array
title: Location
msg:
type: string
title: Message
type:
type: string
title: Error Type
type: object
required:
- loc
- msg
- type
title: ValidationError
securitySchemes:
HTTPBearer:
type: http
scheme: bearer