apyhub
DATA EXTRACTION · DATA VALIDATION

Detect Email Address API

What it does

Email Address Detector scans submitted text and identifies email addresses found in it. Send the content you want checked, then poll the job status endpoint with the returned job ID until the asynchronous task completes.

Use it when you need to pull email addresses out of notes, support tickets, scraped pages, or imported documents without writing and maintaining your own pattern-matching logic. The submit response gives you a job_id and a status_url; the status response includes the job status and a result array of detected email strings.

Because the service works asynchronously, it fits batch workflows where you process larger text payloads and can check back later for results. If you are building lead capture, contact parsing, or content review tooling, this gives you a simple way to turn unstructured text into a list of email addresses.

▣ ENDPOINT 01 / 02
POST
Submit Detect Emails job
https://api.eu.apyverse.com/sharpapi/detect-email-addresses

QUICKSTART

GUIDE

Quickstart

Submit text to detect email addresses asynchronously.

curl -X POST "https://api.eu.apyverse.com/sharpapi/detect-email-addresses" \
  -H "apy-token: $APY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"content":"Please contact [email protected] or [email protected] for help."}'

What you'll get back

Returns a JSON object with a job_id string field (the submitted job identifier) and a status_url string field (the URL to check job status).

{
  "job_id": "2f3c1f4e-8f2b-4d5a-a3c2-1b2d3e4f5a6b",
  "status_url": "https://example.com/status/2f3c1f4e-8f2b-4d5a-a3c2-1b2d3e4f5a6b"
}
TRY ITLIVE · 50 ATOMS
Loading your default key…
The full key is used to call the gateway and stays in this tab — never sent to orbit or saved.
body*
Provide the content from where email addresses needs to be detected.

About this endpoint

What it does

Submits a job to detect email addresses from the provided content and returns identifiers you can use to check the job later. The endpoint starts processing asynchronously and does not return the detected emails directly.

Request Body

ParameterTypeMandatoryDescription
contentStringYesProvide the content from where email addresses needs to be detected.

Response

Returns a JSON object with a job_id string field and a status_url string field. Use job_id to identify the submitted asynchronous job, and status_url to check its status.
Success response: 200

ParameterTypeMandatoryDescription
job_idStringYesIdentifier of the submitted asynchronous job. Format: UUID.
status_urlStringYesURL used to check the submitted job status. Format: URI.

Notes

This endpoint kicks off an async job and returns immediately with a job identifier; the actual work runs in the background. Pair this call with the corresponding job_check endpoint — poll that until the status reaches a terminal state to retrieve the result. Extract the job identifier from job_id.

Body

Name
Type
Description
bodyREQUIRED
object
▣ ENDPOINT 02 / 02
GET
Get Detect Emails job status
https://api.eu.apyverse.com/sharpapi/detect-email-addresses/job/status/:job-id

QUICKSTART

GUIDE

Quickstart

Check the status of a job by its UUID.

curl -X GET "https://api.eu.apyverse.com/sharpapi/detect-email-addresses/job/status/:job-id" \
  -H "apy-token: $APY_TOKEN"

What you'll get back

Returns a JSON object with a data object. Inside data, id is the job identifier, type is the resource type, and attributes contains the job type, result array, and status.

{
  "data": {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "type": "job",
    "attributes": {
      "type": "detect-email-addresses",
      "result": ["[email protected]"],
      "status": "completed"
    }
  }
}
TRY ITLIVE · 1 ATOM
Loading your default key…
The full key is used to call the gateway and stays in this tab — never sent to orbit or saved.

About this endpoint

What it does

Retrieves the current status of a Detect Emails background job identified by its job ID. The response returns a JSON object with a data object that includes the job identifier, job type, and an attributes object containing the job status and result list.

Path Parameter(s)

AttributeTypeMandatoryDescription
job-idStringYesJob identifier in UUID format.

Response

Returns a JSON object with a data object. Inside data, id and type are strings, and attributes is an object containing type (string), result (string array), and status (string).

AttributeTypeMandatoryDescription
dataObjectNoJob data object. Contains id, type, and attributes.
data.idStringNoJob identifier.
data.typeStringNoJob type.
data.attributesObjectNoJob attributes object. Contains type, result, and status.
data.attributes.typeStringNoAttribute type.
data.attributes.resultString ArrayNoResult list returned for the job.
data.attributes.statusStringNoJob status.

Path parameters

Name
Type
Description
job-idREQUIRED
string
▣ COMMON ERRORS

Errors any endpoint can return

400bad_request

Required parameter missing or malformed body.

401unauthorized

API key missing, revoked, or not authorized for this service.

429rate_limited

Your plan's per-second rate exceeded. Retry with exponential backoff.

503upstream_busy

Backend temporarily unavailable. Try again in a few seconds.