Recruitee

Learn how to use Recruitee with Composio

Overview

SLUG: RECRUITEE

Description

Recruitee is a collaborative hiring software that streamlines recruitment processes, enabling teams to source, interview, and hire candidates efficiently.

Authentication Details

client_id
stringRequired
client_secret
stringRequired
oauth_redirect_uri
stringDefaults to https://backend.composio.dev/api/v1/auth-apps/add
scopes
string
bearer_token
string
subdomain
stringRequired
subdomain
stringRequired
generic_api_key
stringRequired

Connecting to Recruitee

Create an auth config

Use the dashboard to create an auth config for the Recruitee toolkit. This allows you to connect multiple Recruitee accounts to Composio for agents to use.

1

Select App

Navigate to Recruitee.

2

Configure Auth Config Settings

Select among the supported auth schemes of and configure them here.

3

Create and Get auth config ID

Click “Create Recruitee Auth Config”. After creation, copy the displayed ID starting with ac_. This is your auth config ID. This is not a sensitive ID — you can save it in environment variables or a database. This ID will be used to create connections to the toolkit for a given user.

Connect Your Account

Using OAuth2

1from composio import Composio
2
3# Replace these with your actual values
4recruitee_auth_config_id = "ac_YOUR_RECRUITEE_CONFIG_ID" # Auth config ID created above
5user_id = "0000-0000-0000" # UUID from database/application
6
7composio = Composio()
8
9
10def authenticate_toolkit(user_id: str, auth_config_id: str):
11 connection_request = composio.connected_accounts.initiate(
12 user_id=user_id,
13 auth_config_id=auth_config_id,
14 )
15
16 print(
17 f"Visit this URL to authenticate Recruitee: {connection_request.redirect_url}"
18 )
19
20 # This will wait for the auth flow to be completed
21 connection_request.wait_for_connection(timeout=15)
22 return connection_request.id
23
24
25connection_id = authenticate_toolkit(user_id, recruitee_auth_config_id)
26
27# You can also verify the connection status using:
28connected_account = composio.connected_accounts.get(connection_id)
29print(f"Connected account: {connected_account}")

Using API Key

1from composio import Composio
2
3# Replace these with your actual values
4recruitee_auth_config_id = "ac_YOUR_RECRUITEE_CONFIG_ID" # Auth config ID created above
5user_id = "0000-0000-0000" # UUID from database/app
6
7composio = Composio()
8
9def authenticate_toolkit(user_id: str, auth_config_id: str):
10 # Replace this with a method to retrieve an API key from the user.
11 # Or supply your own.
12 user_api_key = input("[!] Enter API key")
13
14 connection_request = composio.connected_accounts.initiate(
15 user_id=user_id,
16 auth_config_id=auth_config_id,
17 config={"auth_scheme": "API_KEY", "val": user_api_key}
18 )
19
20 # API Key authentication is immediate - no redirect needed
21 print(f"Successfully connected Recruitee for user {user_id}")
22 print(f"Connection status: {connection_request.status}")
23
24 return connection_request.id
25
26
27connection_id = authenticate_toolkit(user_id, recruitee_auth_config_id)
28
29# You can verify the connection using:
30connected_account = composio.connected_accounts.get(connection_id)
31print(f"Connected account: {connected_account}")

Tools

Executing tools

To prototype you can execute some tools to see the responses and working on the Recruitee toolkit’s playground

Python
1from composio import Composio
2from openai import OpenAI
3import json
4
5openai = OpenAI()
6composio = Composio()
7
8# User ID must be a valid UUID format
9user_id = "0000-0000-0000" # Replace with actual user UUID from your database
10
11tools = composio.tools.get(user_id=user_id, toolkits=["RECRUITEE"])
12
13print("[!] Tools:")
14print(json.dumps(tools))
15
16def invoke_llm(task = "What can you do?"):
17 completion = openai.chat.completions.create(
18 model="gpt-4o",
19 messages=[
20 {
21 "role": "user",
22 "content": task, # Your task here!
23 },
24 ],
25 tools=tools,
26 )
27
28 # Handle Result from tool call
29 result = composio.provider.handle_tool_calls(user_id=user_id, response=completion)
30 print(f"[!] Completion: {completion}")
31 print(f"[!] Tool call result: {result}")
32
33invoke_llm()

Tool List

Tool Name: Create Candidate

Description

Tool to create a new candidate profile. use after gathering all candidate details. example: "create a new candidate named jane doe with email jane.doe@example.com."

Action Parameters

cover_letter
string
custom_fields
object
email
name
stringRequired
offers
array
phone
string
photo
resume
social_links
array
source
string
tags
array

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Create Note

Description

Tool to create a new note for a candidate. use after confirming this detail.

Action Parameters

candidate_id
stringRequired
note
objectRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Create Offer

Description

Tool to create a new job offer. use after confirming all offer details and ready to publish.

Action Parameters

offer
objectRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Candidate

Description

Tool to delete a candidate profile. use when you need to permanently remove a candidate from your recruitee account. returns no content on success.

Action Parameters

candidate_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Tag

Description

Tool to delete a tag. use when you need to permanently remove a tag from recruitee. use after confirming the tag is not in use.

Action Parameters

tag_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Candidate

Description

Tool to retrieve detailed information about a specific candidate. use when you need the candidate's full profile before proceeding.

Action Parameters

candidate_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Candidates

Description

Tool to retrieve a list of all candidates in the company. use when you need to fetch or filter candidates before proceeding.

Action Parameters

createdAfter
deleted
boolean
disqualified
boolean
ids
array
limit
integer
offerId
integer
offset
integer
qualified
boolean
query
string
sort
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Company ID

Description

Tool to retrieve the company id of the authenticated account. use when you need to confirm your company identity before other operations.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Company Offers Public

Description

Tool to get a list of published company jobs from the careers site api. use when you need to list all current published offers.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Company Offer Public

Description

Tool to retrieve a specific published job offer by id or slug from the public careers site api. use after you have the offer identifier.

Action Parameters

identifier
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Departments

Description

Tool to retrieve a list of company departments. use when you need to reference or assign offers or candidates to departments.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Locations

Description

Tool to retrieve a list of company locations. use when you need to see all location options before assigning them to offers.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Notes

Description

Tool to retrieve a list of notes for a specific candidate. use after confirming the candidate exists when you need to review their notes.

Action Parameters

candidate_id
integerRequired
limit
integer
offset
integer

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Offer

Description

Tool to retrieve detailed information about a specific job offer. use when you have the offer id and need its full metadata.

Action Parameters

offer_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Offers

Description

Tool to retrieve a list of all job offers. use after authentication to browse or paginate your company's complete set of offers.

Action Parameters

limit
integer
offset
integer
query
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Pipeline Stages

Description

Tool to retrieve pipeline stages of a job offer. use when you have the offer id and need its stages to track candidate progression. example: "get pipeline stages for offer id 456."

Action Parameters

offer_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Tags

Description

Tool to retrieve a list of all tags. use after authenticating to fetch or search tags by name or usage count.

Action Parameters

page
integer
per_page
integer
query
string
sort_by
string
sort_order
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Update Candidate

Description

Tool to update information for an existing candidate. use when you need to modify a candidate's profile after retrieval.

Action Parameters

candidate_id
integerRequired
cover_letter
string
custom_fields
object
email
name
string
offers
array
phone
string
photo
resume
social_links
array
source
string
tags
array

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Update Note

Description

Tool to update an existing note for a candidate. use when you need to modify note text or pin status after creation.

Action Parameters

body
string
candidate_id
integerRequired
note_id
integerRequired
pinned
boolean

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Update Offer

Description

Tool to update information for an existing job offer. use when you need to modify an offer's details after retrieval.

Action Parameters

offer_id
integerRequired
options_cover_letter
string
options_cv
string
options_phone
string
options_photo
string

Action Response

data
objectRequired
error
string
successful
booleanRequired