Skip to main content

Getting Started: Your First API Call

Written by Kadri - RichAPI Support Team

A first RichAPI call takes four steps: create an account, create an API key, send a request, and read the response. Every RichAPI endpoint is a POST to https://api.richapi.ai/api/v1, and every request carries the API key in the x-api-key header. A user's first workspace starts with 100 free trial credits, and a first call to enrich_profile costs 1 credit, which is $0.02.

What do I need before the first RichAPI call?

  • Dashboard: https://app.richapi.ai

  • Base URL: https://api.richapi.ai/api/v1

  • Method: POST, for every endpoint

  • Authentication: the x-api-key header

  • Content type: application/json

  • First endpoint: /enrich_profile

  • Cost of the first call: 1 credit, which is $0.02

  • Starting balance: 100 free trial credits

  • Payment method: not required for the trial credits

You need no server, no SDK, and no OAuth setup. One HTTP client and one API key are enough.

What does the RichAPI onboarding checklist show?

The RichAPI dashboard opens on a card titled Getting Started. The card carries the subtitle "Complete these steps to start using the RichAPI API", a progress bar, and a counter that reads <n> of 4 complete. Each row is a link that opens the page for that step.

#

Step label

Description on the card

Where the row goes

When RichAPI marks the step complete

1

Create your team

Set up your team workspace

Settings

Always. The workspace already exists.

2

Generate your first API key

Create an API key to authenticate requests

API Keys

The workspace holds at least one active API key.

3

Make your first API call

Send a request using the RichAPI API

API Catalog

The workspace made its first successful, billed call.

4

Check your credit balance

View your usage and available credits

Usage & Credits

The workspace holds allocated credits.

A new workspace shows 2 of 4 complete on the first visit. Step 1 is complete because the workspace exists. Step 4 is complete because the 100 trial credits are already allocated. Step 2 and step 3 are the real work.

When all four steps are complete, the card replaces the rows with a completion message and a Dismiss checklist button. The browser records the dismissal for that workspace. The card stays hidden in that browser, and it appears again in another browser.

How to create your RichAPI account

  1. Open https://app.richapi.ai/auth/sign-up.

  2. Type your email address in the Email field ([email protected]).

  3. Type your password in the first password field.

  4. Type your password again in the second password field ("Please repeat your new password to confirm it").

  5. Click Sign up with Email →.

  6. Open the confirmation email from RichAPI and click the confirmation link to verify your email.

  7. In the Create Team dialog, accept the suggested name or type your own in Team Name.

  8. Click Create Team.

RichAPI creates the workspace and opens the dashboard at /home/<workspace>. For full sign-up and sign-in details, read Creating Your Account and Signing In.

How do I get the 100 free trial credits?

When a user creates a first workspace, RichAPI grants 100 free trial credits. The grant is automatic. You add no payment method and you enter no card details to receive it.

  • Amount: 100 credits, worth $2.00.

  • When: at the moment the first workspace is created.

  • How often: one grant for each user, for all time. A second workspace receives no grant.

  • Payment method: not required.

  • Expiry: none.

  • Where it shows: the Plans & Billing page, in the Transaction History table, with the type Trial.

100 trial credits pay for 100 calls to enrich_profile. A payment method is required only to buy more credits.

How to create your first RichAPI API key

CAUTION: Copy the key before you close the dialog. RichAPI shows the full key one time and stores only a hash of it.

  1. Open the workspace in the dashboard.

  2. Select API Keys in the API Platform group of the sidebar.

  3. Select Create New Key.

  4. Type a name in the Name field, for example Production Server.

  5. Select Create Key.

  6. Read the API Key Created dialog.

  7. Select the copy button beside the key, and paste the key into a password manager.

  8. Select the checkbox I have saved this key in a secure location.

  9. Select Done.

The API Keys table now shows the key with its name, its prefix, the status active, and the creation date. The table shows the prefix only. For key limits, rotation, and revocation, read Creating and Managing API Keys.

How to send your first RichAPI request

The first call uses enrich_profile. The endpoint takes one LinkedIn profile URL and returns the profile as JSON.

  • Method: POST

  • URL: https://api.richapi.ai/api/v1/enrich_profile

  • Authentication: the x-api-key header

  • Content type: application/json

  • Request body: url (required). include_social_metrics is optional and adds 1 credit.

  • Response: synchronous JSON

  • Cost: 1 credit per call

  1. Copy one of the three samples below.

  2. Replace YOUR_API_KEY with the key that you saved.

  3. Run the sample.

  4. Read the JSON response.

CAUTION: Send only url and, if you want it, include_social_metrics. The API rejects any other field with 400 and charges no credit.

cURL

curl -X POST https://api.richapi.ai/api/v1/enrich_profile   
-H "x-api-key: YOUR_API_KEY"
-H "Content-Type: application/json"
-d '{
"url": "https://www.linkedin.com/in/satyanadella"
}'

Python

Install the requests package with pip install requests, then run this file.

import requests

response = requests.post(
"https://api.richapi.ai/api/v1/enrich_profile",
headers={
"x-api-key": "YOUR_API_KEY",
"Content-Type": "application/json",
},
json={"url": "https://www.linkedin.com/in/satyanadella"},
timeout=60,
)
response.raise_for_status()

profile = response.json()
print(profile["firstname"], profile["lastname"], "-", profile["headline"])

Node.js

Save this file with the .mjs extension, then run it with node first-call.mjs.

const response = await fetch("https://api.richapi.ai/api/v1/enrich_profile", {
method: "POST",
headers: {
"x-api-key": "YOUR_API_KEY",
"Content-Type": "application/json",
},
body: JSON.stringify({
url: "https://www.linkedin.com/in/satyanadella",
}),
});

const profile = await response.json();
console.log(profile.firstname, profile.lastname, "-", profile.headline);

What does the first response look like?

A successful call returns HTTP 200 and one JSON object with the profile: full name, headline, current role, company, location, industry, skills and education. The object also carries entityUrn, the LinkedIn ID that profile_activities takes as input. The response carries no pagination.

RichAPI adds a richapi_meta object to the response, with the request ID, the response time and the credits charged.

The samples above print three fields of the profile: firstname, lastname and headline. For every field and a full example response, read Profile Enrichment API.

How to run the first call without writing code

The dashboard runs the same call from the browser. The Try It dialog on the API Catalog page sends a real request with the active API key of the workspace.

CAUTION: The Try It dialog spends real credits. One enrich_profile run costs 1 credit of the 100 trial credits.

  1. Select API Catalog in the API Platform group of the sidebar.

  2. Find the Profile Enrichment card. The search box at the top of the page filters the cards.

  3. Select Try It.

  4. Read the header of the dialog. It shows POST /v1/enrich_profile, the credit cost, and the prefix of the API key.

  5. Type a LinkedIn profile URL in the url field. The field is marked with a red asterisk, because it is required.

  6. Select Run.

  7. Read the response under the form.

After the run, the dialog shows a status badge, the latency in milliseconds, and the credits used. A green badge with 200 means success. The response body opens in Tree view, and the Raw button shows the plain JSON. The Copy button copies the response to the clipboard.

The dashboard home page carries a second runner, titled Quick Runner. It works the same way, and it keeps a Recent Runs list beside it.

Path

Where it is

What it needs

Try It dialog

API Catalog page, on each API card

One active API key

Quick Runner

Dashboard home page

One active API key

Direct HTTP request

Your own terminal or code

One active API key

If the workspace holds no active API key, the API Catalog shows the message "Create an API key to see your available endpoints." Create a key first.

How to check your credit balance

  1. Select Usage & Credits in the Usage & Billing group of the sidebar.

  2. Read Org Credit Balance in the Overview card. It shows the credits left in the organization balance.

  3. Read Credits Used for the consumption in the selected date range.

  4. Open the Activity section for the individual calls.

After one enrich_profile call, a new organization shows an Org Credit Balance of 99.

The GET /usage endpoint reports consumption, and it costs no credits. It reports credits used, calls, and cost. It also returns the organization balance in the credits_remaining field. For the full usage model, read Tracking Credit Usage and Billing.

How much does the first RichAPI call cost?

One enrich_profile call costs 1 credit. One credit costs $0.02 on the 1,000 and 5,000 credit packs, and less on larger packs. The 100 trial credits therefore pay for 100 calls, and they are worth $2.00.

Calls to enrich_profile

Credits

Cost

1

1

$0.02

25

25

$0.50

100

100

$2.00

500

500

$10.00

1,000

1,000

$20.00

RichAPI reserves the credit before the call and commits the credit only for a successful response. For a failure response, RichAPI refunds the reservation, so a failed call costs $0.00.

Why did my first RichAPI call fail?

What you see

Cause

What to do

401 with a message about authorization

The request carries no x-api-key header.

Add the x-api-key header. Check the spelling of the header name.

401

The API key is wrong, revoked, or deleted.

Open the API Keys page and compare the prefix. If no active key remains, create a new key.

400 Unknown input field(s): <name>

The request body holds a field that enrich_profile does not accept.

Remove that field. The accepted fields are url and include_social_metrics.

400 with a message about a missing field

The request body holds no url field.

Add url with a full LinkedIn profile URL.

402

The organization has no credits, or the team reached its monthly spend limit.

Ask an organization owner to buy credits on the Plans & Billing page, or to raise the team's spend limit.

404

The LinkedIn profile was not found, or the path is wrong.

Check the url value, and check the path /api/v1/enrich_profile.

429

The organization sent too many requests in one second for its rate tier. The limit is shared by every API key in the organization.

Wait the number of seconds in the Retry-After header, then send the request again. Buy more credits to raise the tier and the rate.

500, 502, or 504

The API or the data provider failed.

Send the request again. If the failure repeats, write to [email protected].

curl: (6), a host resolution failure

The base URL is misspelled.

Use https://api.richapi.ai/api/v1.

The Run button in the dashboard stays greyed out

The workspace holds no active API key, or a required field is empty.

Create an API key, then fill every field marked with a red asterisk.

The API Catalog shows "Create an API key to see your available endpoints."

The workspace holds no active API key.

Create a key on the API Keys page.

The Getting Started card is missing

The card was dismissed in this browser.

Open the dashboard in another browser, or clear the site data for app.richapi.ai.

Every error response carries an error field with a plain-language message:

{
"error": "The requested resource was not found."
}

Where do I go next?

Article

Read it for

The six credit packs, the price per credit, auto-reload, and the rate tiers.

The usage dashboard, per-call and per-result billing, the CSV export, and GET /usage.

Every endpoint in your plan, the category filters, the credit cost of each one, and the Try It dialog.

The requests-per-second limit of each rate tier, the burst allowance, and the Retry-After header on a 429.

Frequently asked questions

Do I need a credit card to make my first RichAPI call?

No. When a user creates a first workspace, RichAPI grants 100 free trial credits. No payment method is required for that grant. A payment method is required only to buy more credits. 100 trial credits pay for 100 calls to enrich_profile.

Which endpoint is the best first RichAPI call?

enrich_profile is the best first call. It takes one required field, url, it returns a synchronous JSON response, and it costs 1 credit. Send POST https://api.richapi.ai/api/v1/enrich_profile with the x-api-key header.

Can I see my RichAPI API key again after I close the dialog?

No. RichAPI shows the full key one time, in the API Key Created dialog. The API Keys table shows only the prefix afterwards. If the key is lost, create a new key and revoke the old one.

Does a failed RichAPI call cost a credit?

No. RichAPI commits a credit only for a successful 2xx response. For every 4xx and 5xx response, RichAPI refunds the credit reservation, so a failure costs $0.00. An asynchronous job status poll is also free.

Does the Try It dialog in the dashboard spend real credits?

Yes. The Try It dialog sends a real request with the active API key of the workspace. It charges the same credits as a direct HTTP call. The dialog shows the credits used beside the status badge after each run.

Why does the onboarding checklist show 2 of 4 complete on a new account?

RichAPI marks Create your team complete for every workspace, because the workspace already exists. RichAPI marks Check your credit balance complete because the 100 trial credits are already allocated. The two open steps are the API key and the first call.

Can I use a GET request for a RichAPI endpoint?

No. Every customer-facing RichAPI endpoint accepts POST only, and the API returns 405 for any other method. The exceptions are the free read endpoints, such as GET /usage, GET /my-endpoints and the status poll of an async job.

How do I get help with a first call that keeps failing?

Select the chat button in the bottom-right corner of the dashboard, or write to [email protected]. Include the endpoint name, the request body, the HTTP status, and the error message from the response. Send no API key in the message.

Related articles

Did this answer your question?