Skip to main content

Opportunity Applied Explained

When Sortlist sends you an Opportunity Applied trigger, you get detailed project and company data to automate applications, enrich your CRM, and track credit spend.

Written by Thibaut Vanderhofstadt

When Sortlist sends you an Opportunity Applied trigger, it means your agency has successfully applied and paid for the opportunity.

At this stage, company details are revealed (name, website) but contacts remain hidden until your application is delivered.

🔔 When it triggers

Right after payment, before filling out the application details.

📦 What you get

  1. Company name & website

  2. Who from your agency applied

  3. Real credit cost + euro price

  4. All project briefing details

  5. Still no client contacts

💡 How to use it

  1. Auto-create deals in your CRM with real pipeline value.

  2. Track ROI by syncing credit/euro spend.

  3. Route opportunities to the right team member based on expertise.

📨 Payload Example

{
"id": "T3Bwb3J0dW5pdHkvMTIzNDU",
"applied_at": "2023-01-01T12:00:00Z",
"received_at": "2023-01-01T00:00:00Z",
"project_id": 12345,
"locale": "en",
"provider_slug": "agency-slug",
"opportunity_link": "https://agency.sortlist.com/brief/12345",
"integration": {
"uuid": "integration-uuid",
"owner": "manager@agency.com",
"trigger_name": "opportunity_applied"
},
"applied_by": {
"id": "QWdlbmN5TWVtYmVyLzY3ODkw",
"first_name": "John",
"last_name": "Doe",
"email": "john.doe@agency.com"
},
"budget_min": 10000,
"budget_max": 25000,
"budget_monthly": true,
"budget_not_set_yet": false,
"location": "New York, US",
"country": "US",
"expertise": "Web Development",
"sector": "Technology",
"remote_work_accepted": true,
"languages_required": "en, fr",
"provider_size_required": "small, medium",
"briefing_description": "Project description...",
"price_in_credit": 100.0,
"price_in_euro": 90.0,
"title": "Sortlist Opportunity 12345: Acme Inc.",
"company": {
"size_min": 10,
"size_max": 50,
"turnover_min": 1000000,
"turnover_max": 10000000,
"type": "NGO",
"name": "Acme Inc.",
"website": "https://acme.com"
},
"contacts": []
}


🔑 Base Opportunity Data

Field

Type

What it means

Why it matters / Use Case

id

string (UUID)

Unique GraphQL identifier for this opportunity

Use as primary key in CRM

applied_at

datetime

When you or one of your team member applied

Measure reactivity

received_at

datetime

When the opportunity first landed

Compare received vs applied

project_id

integer

Project reference number

Cross-reference with Sortlist dashboard

locale

string

Project language (e.g., “en”)

Match to sales teams

provider_slug

string

Your agency’s Sortlist identifier

For integration consistency

opportunity_link

string

Direct link to opportunity

One-click access for your team

integration.uuid

string

Unique integration ID

Identify which integration triggered

integration.owner

string

Email of who set up integration

Track ownership

integration.trigger_name

string

Always opportunity_applied

Helps filter webhook types

applied_by.id

string

ID of member who applied

Attribution

applied_by.first_name

string

First name of member that applied

CRM sync

applied_by.last_name

string

Last name of member that applied

CRM sync

applied_by.email

string

Email of member

Identify responsible teammate

budget_min

integer | null

Minimum project budget

Opportunity sizing

budget_max

integer | null

Maximum project budget

Opportunity sizing

budget_monthly

boolean

True if budget is monthly

Recurring services or not

budget_not_set_yet

boolean

True if no budget defined

Handle missing data

location

string

Project location

Geo-targeting

country

string (ISO)

Country code

Segmentation

expertise

string

Service needed

Match to offering

sector

string

Client’s industry

Industry Prioritization

remote_work_accepted

boolean

True if remote accepted

Team assignment / capacity

languages_required

string

Comma-separated list

Match by language skills

provider_size_required

string

Preferred agency size(s)

Qualification

briefing_description

string

Detailed project description

Lead qualification

price_in_credit

decimal

Credit value

Track spend

price_in_euro

decimal

Actual euro value

Finance reporting

title

string

Opportunity title (with company name)

Visible in CRM

company.size_min

integer

Minimum employees

Client profile

company.size_max

integer

Maximum employees

Client profile

company.turnover_min

integer

Minimum revenue (€)

Client qualification

company.turnover_max

integer

Maximum revenue (€)

Client qualification

company.type

string

Type of org (e.g., NGO)

Segmentation

company.name

string

Real company name

For CRM

company.website

string

Real company website

Enrichment

contacts

array

Always empty here

Full contacts only after Application Sent

🙅 No Contact Info Yet

note: it is require to introduction your services to the Project's owner to get their contact details on Sortlist.

Micro-win: By mastering this trigger, you’ll not only know which projects you applied to but also track real costs, company info, and performance ROI in your workflows.

Did this answer your question?