sanctions.io Account Management API

API tokens, company and webhook configuration, users, plans, and usage.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/sanctions-io-account-management-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

sanctions-io-account-management-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: sanctions.io Account Management API
  description: The sanctions.io API provides sanctions, PEP (politically exposed persons), and criminal watchlist screening for AML compliance. It covers the Screening API (v2.3) - real-time single search, batch screening of up to 10,000 records per request, adverse media search, data source listing, and full database export - and the Monitoring API (v3.1) for continuous monitoring with alerts, plus account management (tokens, company and webhook configuration, users, plans, usage). All requests require a Bearer API token in the Authorization header; the API version is selected with the Accept header, for example "application/json; version=2.3" (the adverse media endpoint requires version=3.0). Sign up for a self-serve 7-day free trial at https://api.sanctions.io/users/signup to obtain a key.
  version: '2.3'
  contact:
    name: sanctions.io
    url: https://www.sanctions.io
    email: info@sanctions.io
  termsOfService: https://www.sanctions.io/terms-of-service
servers:
- url: https://api.sanctions.io
  description: Production
security:
- bearerAuth: []
tags:
- name: Account Management
  description: API tokens, company and webhook configuration, users, plans, and usage.
paths:
  /tokens/:
    get:
      operationId: listApiTokens
      tags:
      - Account Management
      summary: List API tokens
      description: Lists the API tokens on your account.
      parameters:
      - $ref: '#/components/parameters/acceptVersion'
      responses:
        '200':
          description: List of API tokens.
        '401':
          $ref: '#/components/responses/Unauthorized'
    post:
      operationId: createApiToken
      tags:
      - Account Management
      summary: Create an API token
      description: Creates a new API token for your account.
      parameters:
      - $ref: '#/components/parameters/acceptVersion'
      responses:
        '201':
          description: API token created.
        '401':
          $ref: '#/components/responses/Unauthorized'
  /tokens/{token_key}:
    delete:
      operationId: deleteApiToken
      tags:
      - Account Management
      summary: Delete an API token
      description: Deletes (revokes) an API token by key.
      parameters:
      - $ref: '#/components/parameters/acceptVersion'
      - name: token_key
        in: path
        required: true
        description: The key of the token to delete.
        schema:
          type: string
      responses:
        '204':
          description: API token deleted.
        '401':
          $ref: '#/components/responses/Unauthorized'
  /company/:
    get:
      operationId: getCompany
      tags:
      - Account Management
      summary: Get company
      description: Retrieves your company details.
      parameters:
      - $ref: '#/components/parameters/acceptVersion'
      responses:
        '200':
          description: Company detail.
        '401':
          $ref: '#/components/responses/Unauthorized'
    put:
      operationId: editCompany
      tags:
      - Account Management
      summary: Edit company
      description: Updates your company details.
      parameters:
      - $ref: '#/components/parameters/acceptVersion'
      responses:
        '200':
          description: Company updated.
        '401':
          $ref: '#/components/responses/Unauthorized'
  /company/config/:
    get:
      operationId: getCompanyConfig
      tags:
      - Account Management
      summary: Get company config
      description: Retrieves the company configuration, including any registered webhook endpoint.
      parameters:
      - $ref: '#/components/parameters/acceptVersion'
      responses:
        '200':
          description: Company configuration.
        '401':
          $ref: '#/components/responses/Unauthorized'
    put:
      operationId: editCompanyConfig
      tags:
      - Account Management
      summary: Edit company config
      description: Updates the company configuration, including registering or changing the webhook endpoint URL. Webhook creation returns a hash_secret used to verify the SHA-256 x-sanctions-security signature on delivered events; the secret cannot be retrieved again later.
      parameters:
      - $ref: '#/components/parameters/acceptVersion'
      responses:
        '200':
          description: Company configuration updated.
        '401':
          $ref: '#/components/responses/Unauthorized'
  /user/:
    get:
      operationId: listCompanyUsers
      tags:
      - Account Management
      summary: List company users
      description: Lists the users on your company account, with pagination.
      parameters:
      - $ref: '#/components/parameters/acceptVersion'
      - $ref: '#/components/parameters/page'
      - name: page_size
        in: query
        required: false
        description: Number of users per page.
        schema:
          type: integer
          example: 25
      responses:
        '200':
          description: Paginated list of users.
        '401':
          $ref: '#/components/responses/Unauthorized'
    post:
      operationId: inviteUser
      tags:
      - Account Management
      summary: Invite a user
      description: Invites a new user to your company account.
      parameters:
      - $ref: '#/components/parameters/acceptVersion'
      responses:
        '201':
          description: User invited.
        '401':
          $ref: '#/components/responses/Unauthorized'
  /user/{user_uuid}:
    get:
      operationId: getUser
      tags:
      - Account Management
      summary: Get a user
      description: Retrieves a company user by UUID.
      parameters:
      - $ref: '#/components/parameters/acceptVersion'
      - $ref: '#/components/parameters/userUuid'
      responses:
        '200':
          description: User detail.
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
    patch:
      operationId: updateUser
      tags:
      - Account Management
      summary: Update a user
      description: Updates a company user by UUID.
      parameters:
      - $ref: '#/components/parameters/acceptVersion'
      - $ref: '#/components/parameters/userUuid'
      responses:
        '200':
          description: User updated.
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
    delete:
      operationId: deleteUser
      tags:
      - Account Management
      summary: Delete a user
      description: Deletes a company user by UUID.
      parameters:
      - $ref: '#/components/parameters/acceptVersion'
      - $ref: '#/components/parameters/userUuid'
      responses:
        '204':
          description: User deleted.
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /plans/:
    get:
      operationId: manageSubscriptions
      tags:
      - Account Management
      summary: Manage subscriptions
      description: Retrieves the plan subscriptions on your account.
      parameters:
      - $ref: '#/components/parameters/acceptVersion'
      responses:
        '200':
          description: Plan subscriptions.
        '401':
          $ref: '#/components/responses/Unauthorized'
  /searches/count:
    get:
      operationId: listScreeningsCount
      tags:
      - Account Management
      summary: Count screenings
      description: Returns the count of screenings performed by your account, for usage tracking against plan volume.
      parameters:
      - $ref: '#/components/parameters/acceptVersion'
      responses:
        '200':
          description: Screening count.
        '401':
          $ref: '#/components/responses/Unauthorized'
components:
  parameters:
    acceptVersion:
      name: Accept
      in: header
      required: false
      description: Selects the API version, e.g. "application/json; version=2.3". Without the header, version 1.0 is used by default.
      schema:
        type: string
        example: application/json; version=2.3
    page:
      name: page
      in: query
      required: false
      description: Page number for paginated results.
      schema:
        type: integer
        example: 1
    userUuid:
      name: user_uuid
      in: path
      required: true
      description: The user UUID.
      schema:
        type: string
  responses:
    NotFound:
      description: The requested resource was not found.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    Unauthorized:
      description: Authentication credentials were not provided or are invalid.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            detail: Authentication credentials were not provided.
  schemas:
    Error:
      type: object
      properties:
        detail:
          type: string
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: 'API token from the sanctions.io user portal, passed as "Authorization: Bearer {token}". The token may also be sent as a URL parameter, but the Authorization header is recommended.'