Find an API

Search public APIs with auth details & Postman guides

← All APIs

EmailVerify

paypi · Communication

Communication No Auth Free & Open email

OTP email verification API by PayPI. EmailVerify provides a simple way to verify email addresses. We send emails ourselves taking the burden of setting up email systems and tracking codes. To learn more about this API, check out [EmailVerify documentation](https://emailverify.paypi.dev/) ## Authentication All requests to the EmailVerify API must be authenticated with an API Key. To get an API key, subscribe to the EmailVerify [here](https://app.paypi.dev/subscri

Authentication

No authentication requiredFree to use with no key needed.

Sample Requests

POST Check verification code

Checks the user's emailed code is valid. If this returns success=true, you can safely assume the user you are interacting with is the owner of that email address.

https://api.apis.guru/v2/specs/paypi.dev/1.0.0/checkCode

Hover any highlighted part to learn what it does

curl -X POST "https://api.apis.guru/v2/specs/paypi.dev/1.0.0/checkCode"
import requests
response = requests.post(
    "https://api.apis.guru/v2/specs/paypi.dev/1.0.0/checkCode",
)
print(response.json())
const url = 'https://api.apis.guru/v2/specs/paypi.dev/1.0.0/checkCode';

const response = await fetch(url, {
  method: 'POST',
}); 
const data = await response.json();
console.log(data);
package main

import (
	"fmt"
	"io"
	"net/http"
)

func main() {
	targetURL := "https://api.apis.guru/v2/specs/paypi.dev/1.0.0/checkCode"
	req, _ := http.NewRequest("POST", targetURL, nil)

	client := &http.Client{}
	resp, _ := client.Do(req)
	defer resp.Body.Close()
	body, _ := io.ReadAll(resp.Body)
	fmt.Println(string(body))
}
require "net/http"
require "json"

uri = URI("https://api.apis.guru/v2/specs/paypi.dev/1.0.0/checkCode")

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"

req = Net::HTTP::Post.new(uri)

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/paypi.dev/1.0.0/checkCode";
$opts = ["http" => [
    "method" => "POST",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));
POST Send verification code

This request send's a code to the given email address, which should be returned to check it is correct.

https://api.apis.guru/v2/specs/paypi.dev/1.0.0/sendCode

Hover any highlighted part to learn what it does

curl -X POST "https://api.apis.guru/v2/specs/paypi.dev/1.0.0/sendCode"
import requests
response = requests.post(
    "https://api.apis.guru/v2/specs/paypi.dev/1.0.0/sendCode",
)
print(response.json())
const url = 'https://api.apis.guru/v2/specs/paypi.dev/1.0.0/sendCode';

const response = await fetch(url, {
  method: 'POST',
}); 
const data = await response.json();
console.log(data);
package main

import (
	"fmt"
	"io"
	"net/http"
)

func main() {
	targetURL := "https://api.apis.guru/v2/specs/paypi.dev/1.0.0/sendCode"
	req, _ := http.NewRequest("POST", targetURL, nil)

	client := &http.Client{}
	resp, _ := client.Do(req)
	defer resp.Body.Close()
	body, _ := io.ReadAll(resp.Body)
	fmt.Println(string(body))
}
require "net/http"
require "json"

uri = URI("https://api.apis.guru/v2/specs/paypi.dev/1.0.0/sendCode")

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"

req = Net::HTTP::Post.new(uri)

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/paypi.dev/1.0.0/sendCode";
$opts = ["http" => [
    "method" => "POST",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));

Postman Setup Guide

Get Postman ↗
  1. See official documentation for authentication and setup.

What can you build with EmailVerify?

EmailVerify is a Communication API. Developers commonly use communication APIs for:

  • sending SMS alerts and notifications
  • building in-app chat and messaging features
  • automating email sequences and transactional emails
  • creating voice bots and IVR systems
  • verifying phone numbers at signup

No authentication required. This API is open — no signup or key needed. Ideal for quick prototypes and public-facing features. EmailVerify is free to use, making it a low-risk choice to experiment with.

New to APIs? Read our beginner's guide · Learn about API keys · What is REST?

Open documentation ↗