-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathendpoints.yml
67 lines (63 loc) · 1.68 KB
/
endpoints.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
endpoints:
# Read contacts from the CRM
- name: read_contacts
description: Read contacts from CRM
input_json_format: |
{
"type": "object",
"properties": {
"limit": {
"type": "number",
"description": "The number of contacts to read"
}
},
"required": ["limit"]
}
tools:
# Read people from Attio
- name: attio
url: https://api.attio.com/v2/objects/people/records/query
method: POST
headers: |
{
"Authorization": "Bearer {{ secret }}"
}
body: |
{
"limit": limit
}
output_json_format: |
data[].{
"id": id.record_id,
"name": $string(values.name[0].full_name) ? values.name[0].full_name : null
}
# Read contacts from Hubspot
- name: hubspot
url: https://api.hubapi.com/crm/v3/objects/contacts
method: GET
headers: |
{
"Authorization": "Bearer {{ secret }}"
}
query_params: |
{
"limit": limit
}
output_json_format: |
results.({
"id": id,
"name": properties.firstname & ' ' & properties.lastname
})
# For final validation and reference
output_schema: |
{
"type": "array",
"items": {
"type": "object",
"properties": {
"id": { "type": "string", "description": "The ID of the contact" },
"name": { "type": "string", "description": "The name of the contact" }
},
"required": ["id", "name"]
}
}