Retrieve Brand by Email
Look up brand data using a business email address. The domain is extracted from the email and used to retrieve brand information.
Endpoint: GET /v1/brand/retrieve-by-email
Credits: 10 per request
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
email | string | Yes | Business email address (e.g., ceo@stripe.com) |
Response Schema
{
"data": {
"id": "...",
"domain": "stripe.com",
"title": "Stripe",
"description": "Financial infrastructure for the internet.",
"logos": {
"primary": "https://stripe.com/img/v3/home/social.png",
"favicon": "https://stripe.com/favicon.ico"
},
"colors": { "primary": "#635BFF" },
"industries": ["Financial Technology"],
"socialLinks": {
"twitter": "https://twitter.com/stripe",
"linkedin": "https://linkedin.com/company/stripe"
},
"pageLinks": { "pricing": "https://stripe.com/pricing" }
},
"_meta": { "cache": { "hit": false } }
}Code Examples
cURL
curl -X GET "https://api.orsa.dev/v1/brand/retrieve-by-email?email=ceo@stripe.com" \
-H "Authorization: Bearer YOUR_API_KEY"TypeScript
const { data: brand } = await client.brand.retrieveByEmail({
email: 'ceo@stripe.com',
});
console.log(brand.domain); // "stripe.com"
console.log(brand.title); // "Stripe"
console.log(brand.colors?.primary); // "#635BFF"Python
res = client.brand.retrieve_by_email(email="ceo@stripe.com")
brand = res["data"]
print(brand["domain"]) # "stripe.com"
print(brand["title"]) # "Stripe"
print(brand["colors"]["primary"]) # "#635BFF"Error Codes
| Code | Status | Description |
|---|---|---|
INPUT_VALIDATION_ERROR | 400 | Invalid email format |
UNAUTHORIZED | 401 | Missing or invalid API key |
NOT_FOUND | 404 | No brand data found for the email domain |
RATE_LIMITED | 429 | Rate limit exceeded |
USAGE_EXCEEDED | 402 | Insufficient credits |
Notes
- The domain is extracted from the email (e.g.,
ceo@stripe.com→stripe.com). - The brand record must already be cached; this endpoint does not trigger live extraction. If the lookup returns 404, hit
/v1/brand/retrievefor that domain first.