Contacts
List contacts
Returns contacts for the authenticated tenant with advanced filtering, search, and cursor-based pagination.
Authorization
ApiKeyAuth X-API-Key<token>
API key generated from your Vayaflow dashboard Settings page
In: header
Query Parameters
cursor?string
Cursor for pagination (contactId of last item)
limit?string
Items per page (max 100)
playbookIds?string
Comma-separated playbook IDs
search?string
Search by name, email, phone, or contactId
startDate?string
Start date filter (ISO 8601)
endDate?string
End date filter (ISO 8601)
Response Body
application/json
application/json
package mainimport ( "fmt" "net/http" "io/ioutil")func main() { url := "https://api.vayaflow.com/api/v1/contacts" req, _ := http.NewRequest("GET", url, nil) res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := ioutil.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body))}{
"success": true,
"data": {
"contacts": [
null
],
"nextCursor": "string",
"hasMore": true
}
}{
"success": false,
"error": {
"code": "UNAUTHORIZED",
"message": "Authentication required"
}
}Create a contact (direct)
Directly creates a contact without engine processing. Used for imports, migrations, and the Add Contact UI. Does not trigger qualification or delivery.
Get contact details
Returns flat contact details including contact info, questionnaire, flags, and metadata. Does not include submissions or metrics.