Visit appVisit websiteBook a demo
  • Get Started
    • Welcome
  • Client API
LogoLogo
Visit appVisit websiteBook a demo
Client APIWebhooks

Contract offered to freelancer

Sent when a contract is offered to a freelancer after pre-offer approval.
Was this page helpful?
Previous

Contract offer revoked by hirer

Next
Built with
Contract offer revoked by hirer

Sent when a contract is offered to a freelancer after pre-offer approval.

Payload
1{
2 "api_version": "2024-04-10",
3 "event_type": "client.contract.offered",
4 "data": {
5 "object": {
6 "actual_end_date": null,
7 "client": {
8 "client_id": "cl_c1h9vn2ct9ed0emxf5bg0gaq9",
9 "name": "ACME"
10 },
11 "client_contact": {
12 "client_contact_id": "clct_c2k8wm3du8fe1fnxg6ch1hbr0",
13 "custom_fields": [
14 {
15 "name": "example_field",
16 "value": "ABCD"
17 }
18 ]
19 },
20 "contract_id": "ct_c3j7xl4ev7gf2goxh7di2icq1",
21 "custom_fields": [
22 {
23 "name": "example_field",
24 "value": "1234"
25 }
26 ],
27 "description": "Example contract description",
28 "end_date": "2025-09-30",
29 "fee_schedule": {
30 "periods": [
31 {
32 "effective_from": "2025-07-01",
33 "fees": [
34 {
35 "currency": "GBP",
36 "name": "Platform Referral Fee",
37 "percentage": "12",
38 "value": "4.80"
39 }
40 ],
41 "total_cost": {
42 "currency": "GBP",
43 "value": "44.80"
44 },
45 "total_fees": {
46 "currency": "GBP",
47 "value": "4.80"
48 }
49 }
50 ]
51 },
52 "freelancer": {
53 "date_of_birth": "1991-01-01",
54 "email": "john.smith@example.com",
55 "first_name": "John",
56 "freelancer_id": "fp_c4i6yk5fw6hg3hpyi8ej3jdr2",
57 "full_name": "John Smith",
58 "last_name": "Smith",
59 "legal_name": "John Smith"
60 },
61 "hirers": [
62 {
63 "email": "jane.smith@example.com",
64 "first_name": "Jane",
65 "full_name": "Jane Smith",
66 "hirer_id": "hp_c5h5zl6gx5ih4iqzj9fk4kes3",
67 "last_name": "Smith"
68 }
69 ],
70 "job_title": "Example job title",
71 "minutes_in_working_day": 480,
72 "notice_period_days": 7,
73 "rate": {
74 "currency": "GBP",
75 "unit": "HOUR",
76 "value": "40.00"
77 },
78 "renewal_meta": {
79 "has_subsequent_renewal": false,
80 "initial_contract_id": "ct_c3j7xl4ev7gf2goxh7di2icq1",
81 "is_initial_contract": true,
82 "is_renewal": false,
83 "parent_contract_id": null,
84 "renewal_chain": [
85 "ct_c3j7xl4ev7gf2goxh7di2icq1"
86 ],
87 "renewal_chain_position": 1
88 },
89 "spend_request": {
90 "amount": "1000.00",
91 "amount_type": "TOTAL",
92 "currency": "GBP",
93 "custom_fields": [
94 {
95 "name": "example_field",
96 "value": "123ABCD"
97 }
98 ],
99 "description": "Spend request description",
100 "external_id": "",
101 "spend_request_id": "spreq_c6g4am7hy4ji5jrak0gl5lft4",
102 "title": "Spend request title",
103 "url": "https://app.yunojuno.com/approvals/aprvl_c7h5bn8iz6kj6ksbk1hm6mgu5/"
104 },
105 "start_date": "2025-07-01",
106 "title": "Contract title",
107 "work_location": "REMOTE",
108 "work_time_type": "FULL_TIME"
109 }
110 },
111 "mode": "live"
112}

Payload

The payload of this webhook request is an object.
contract_idstringRequired<=40 characters
freelancerobjectRequired
The freelancer object. This object represents a freelancer on the YunoJuno platform.
clientobjectRequired
The client object. This object represents a client on the YunoJuno platform.
client_contactobjectRequired
The client contact object. This object represents the lifetime relationship between a client and a freelancer on the platform.
hirerslist of objectsRequired
titlestringRequired
job_titlestringRequired
descriptionstringRequired
start_datestringRequiredformat: "date"
end_datestringRequiredformat: "date"
actual_end_datestring or nullRequired
rateobjectRequired
The rate object. This object represents a static amount for a particular rate unit in a particular currency.
work_time_typestringRequired
fee_scheduleobjectRequired
The complete fee schedule for a contract.
notice_period_daysintegerRequired
work_locationstringRequired
minutes_in_working_dayintegerRequired
custom_fieldslist of objectsRequired
spend_requestobjectRequired
The spend request object. This object represents a request to commit spend on the YunoJuno platform.
renewal_metaobjectRequired

Response

200
any
Return a 200 status to indicate that the data was received successfully.