veridomo
DevOps integration.
Domain verification, DNS lookups, SSL checks, and email auth auditing in your CI/CD pipeline, monitoring stack, and infrastructure-as-code. One API key.
Get your API key
MCP for agents
CI/CD pipelines
GitHub Actions
# .github/workflows/verify-deploy.yml
name: Verify domain before deploy
on: [deployment]
jobs:
verify:
runs-on: ubuntu-latest
steps:
- name: Verify custom domain
run: |
curl -s -X POST https://veridomo.xyz/challenge \
-H "Authorization: Bearer ${{ secrets.VERIDOMO_KEY }}" \
-d '{"domain":"${{ inputs.domain }}","method":"dns_txt"}'
- name: SSL check post-deploy
run: |
curl -s -X POST https://veridomo.xyz/mcp \
-H "Authorization: Bearer ${{ secrets.VERIDOMO_KEY }}" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"ssl_check","arguments":{"host":"${{ inputs.domain }}"}}}'
GitLab CI
# .gitlab-ci.yml
verify-domain:
stage: verify
script:
- |
curl -s -X POST https://veridomo.xyz/challenge \
-H "Authorization: Bearer $VERIDOMO_KEY" \
-d '{"domain":"'"$DOMAIN"'","method":"dns_txt"}'
only:
- main
Jenkins Pipeline
// Jenkinsfile
pipeline {
agent any
environment {
VERIDOMO_KEY = credentials('veridomo-api-key')
}
stages {
stage('Verify Domain') {
steps {
sh '''
curl -s -X POST https://veridomo.xyz/challenge \
-H "Authorization: Bearer $VERIDOMO_KEY" \
-d '{"domain":"${DOMAIN}","method":"dns_txt"}'
'''
}
}
}
}
Monitoring & alerting
Prometheus blackbox exporter
# prometheus.yml — check SSL certs via Veridomo MCP
scrape_configs:
- job_name: 'veridomo-ssl-check'
metrics_path: /probe
static_configs:
- targets: ['veridomo.xyz', 'yourdomain.com']
relabel_configs:
- source_labels: [__address__]
target_label: __param_target
Cron-based SSL expiry check
#!/bin/bash — run daily via cron
# /etc/cron.daily/ssl-check
DOMAINS="veridomo.xyz app.mysaas.com api.mysaas.com"
for d in $DOMAINS; do
RESULT=$(curl -s -X POST https://veridomo.xyz/mcp \
-H "Authorization: Bearer $VERIDOMO_KEY" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"ssl_check","arguments":{"host":"'"'"'$d'"'"'"}}}')
DAYS=$(echo "$RESULT" | jq '.result.certificates[0].days_remaining')
if [ "$DAYS" -lt 30 ]; then
echo "WARNING: $d SSL expires in $DAYS days" | mail -s "SSL Expiry Warning" ops@mysaas.com
fi
done
Infrastructure as Code
Terraform
# main.tf — verify domain ownership before provisioning
data "external" "domain_verification" {
program = ["bash", "-c", <<-EOF
curl -s -X POST https://veridomo.xyz/verify \
-H "Authorization: Bearer $VERIDOMO_KEY" \
-d '{"domain":"${var.domain}","method":"dns_txt","token":"${var.token}"}' \
| jq '{verified: .verified | tostring}'
EOF]
}
resource "aws_route53_record" "app" {
count = data.external.domain_verification.result.verified == "true" ? 1 : 0
zone_id = var.zone_id
name = var.domain
type = "A"
ttl = 300
records = [var.ip_address]
}
Docker healthcheck
# docker-compose.yml
services:
myapp:
healthcheck:
test: ["CMD", "curl", "-f", "-H", "Authorization: Bearer $VERIDOMO_KEY", "https://veridomo.xyz/health"]
interval: 30s
timeout: 5s
retries: 3
Kubernetes
# veridomo-secret.yaml
apiVersion: v1
kind: Secret
metadata:
name: veridomo-credentials
stringData:
api-key: "vdo_YOUR_KEY"
# cronjob-ssl-check.yaml
apiVersion: batch/v1
kind: CronJob
metadata:
name: ssl-expiry-check
spec:
schedule: "0 6 * * *"
jobTemplate:
spec:
template:
spec:
containers:
- name: checker
image: curlimages/curl
command: ["/bin/sh"]
args: ["-c", "curl -s -X POST https://veridomo.xyz/mcp -H 'Authorization: Bearer $VERIDOMO_KEY' -d '{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"tools/call\",\"params\":{\"name\":\"ssl_check\",\"arguments\":{\"host\":\"'"$DOMAIN"'\"}}}'"]
env:
- name: VERIDOMO_KEY
valueFrom:
secretKeyRef:
name: veridomo-credentials
key: api-key
restartPolicy: OnFailure
On-premises & VPC deployments
Veridomo runs as a single Rust binary. Deploy it inside your VPC, behind your firewall, on your own infrastructure.
Same API. Same MCP tools. No external dependencies beyond a DNS resolver.
Self-hosted option
Clone the repo, build the binary, run it on your infra. Full API surface, all 5 MCP tools, SQLite-backed persistence. No Stripe dependency (NoopBilling). Your keys, your data, your network.
Air-gapped environments
DNS verification works offline: the DNS resolver queries authoritative nameservers directly. No cloud dependency. HTTP file verification works against internal hosts. Ideal for SOC2/HIPAA environments that require on-prem tooling.
Enterprise plan includes on-prem deployment support, custom SLAs, and dedicated DNS resolver nodes.
Contact us for details.