apyhub
Back
▣ DATA EXTRACTION · DATA VALIDATION

Detect Email Address API

What it does

Email Address Detection scans a block of text and returns any email addresses it finds. Send the content in body.content, get back a job_id for the asynchronous job, then poll the job status endpoint with the job ID.

Use Email Address Detection when you need to pull contact addresses out of raw text from support tickets, lead notes, scraped pages, documents, or chat logs. It is useful when you already have unstructured content and need to isolate email addresses without building your own pattern-matching logic.

The status response returns a data object with id, type, and attributes. Inside attributes, you can read the job type, status, and result, where result is an array of strings containing the detected email addresses.

This service is a good fit for workflows that normalize inbound text before enrichment, CRM import, or validation steps. It gives you a simple async flow: submit content, check status, and read the extracted email list when the job completes.

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

QUICKSTART

GUIDE

Quickstart

Submit text to detect email addresses asynchronously.

curl -X POST "https://api.eu.apyhub.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 — the UUID of the submitted job. Poll the job status endpoint with this id to retrieve the result.

{
  "job_id": "58751fe3-8097-45a2-9405-5480ef90b8d0"
}
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 an asynchronous job to detect email addresses from the provided content. The request sends the text to analyze, and the response returns identifiers you can use to check job progress later.

Request Body

ParameterTypeDescription
contentStringProvide the content from where email addresses needs to be detected.

Response

Returns a JSON object with a job_id string — the UUID of the submitted job. Poll the job status endpoint with this id to retrieve the result.

ParameterTypeDescription
job_idStringIdentifier of the submitted asynchronous job.

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. Use the returned job_id to track the job.

▣ ENDPOINT 02 / 02
GET
Get Detect Emails job status
https://api.eu.apyhub.com/sharpapi/detect-email-addresses/job/status/:job_id

QUICKSTART

GUIDE

Quickstart

Check the status of a detection job by replacing :job_id with your job UUID.

curl -X GET "https://api.eu.apyhub.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 and type are strings, and attributes is an object containing type (string), result (an array of strings), and status (string).

{
  "data": {
    "id": "job_123",
    "type": "job",
    "attributes": {
      "type": "detect-email-addresses",
      "result": ["[email protected]", "[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 job by its job ID. The response returns a JSON object with a data object containing the job id, type, and attributes, including the job status and any detected email addresses in result when available.

Path Parameter(s)

AttributeTypeDescription
job_idStringJob identifier in UUID format.

Response

Returns a JSON object with a data object field. data contains id and type string fields, plus an attributes object with type, result, and status fields.

AttributeTypeDescription
dataObjectJob record wrapper. Contains id, type, and attributes.
data.idStringJob identifier.
data.typeStringResource type.
data.attributesObjectJob attributes wrapper. Contains type, result, and status.
data.attributes.typeStringAttribute type.
data.attributes.resultString ArrayArray of detected email addresses.
data.attributes.statusStringJob status.
▣ 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.