Networks¶
Network users are replicated to and retrieved from the Invoca Marketing Automation Platform using this API.
The network interface is fully idempotent, and the create and update commands both expect the full set of users each time. For instance, if on one POST two users, user1@invoca.com and user2@invoca.com are specified, but on the next POST, only user1@invoca.com is specified, then as a result of that second post, user2@invoca.com will be deleted. For this reason, POST and PUT requests are identical in their effect, although they return 201 and 200 codes respectively for ease of integration.
Parameters
Property |
Type |
Value |
---|---|---|
name |
string |
Network name (read only). |
users |
json array of hashes |
0 or more users for the network. User attributes are listed below. |
id_from_network |
string |
The network’s id for this User. |
email_address |
string in RFC 2822 addr_spec format |
The user’s email address. Unique for this user. (mandatory field) |
first_name |
string |
The user’s first name. |
last_name |
string |
The user’s last name. |
phone_number |
string in ITU E.164 format or 10-digit US form (no punctuation) |
The user’s phone number. |
role |
One of: Super (default), Manager, Member, Observer, Reporting |
The user’s role within the network. |
Endpoint:
https://invoca.net/api/2015-12-09/<network_id>/network.json
Examples
Read network and its users
Endpoint:
https://invoca.net/api/2015-12-09/<network_id>/network.json
Format: application/json
Response Code: 200
Response Body:
{
"name": "Invoca",
"users": [
{
"id_from_network": "549494858585cFUyYnFHyiYA42TrpM",
"email_address": "[email protected]",
"first_name": "Chris",
"last_name": "Dean",
"phone_number": "800‐437‐7950",
"role": "Manager"
},
{
"id_from_network": "694940505055cFUyYnFHyiYA42TrpM",
"email_address": "[email protected]",
"first_name": "Jim",
"last_name": "Williams",
"phone_number": "800‐437‐7950",
"role": "Observer"
}
]
}
Examples
Create network users
Endpoint:
https://invoca.net/api/2015-12-09/<network_id>/network.json
Format: application/json
Request Body:
{
"users": [
{
"id_from_network": "549494858585cFUyYnFHyiYA42TrpM",
"email_address": "[email protected]",
"first_name": "Chris",
"last_name": "Dean",
"phone_number": "8004377950",
"role": "Manager"
},
{
"id_from_network": "694940505055cFUyYnFHyiYA42TrpM",
"email_address": "[email protected]",
"first_name": "Jim",
"last_name": "Williams",
"phone_number": "8004377950",
"role": "Observer"
}
]
}
Response Code: 201
Examples
Update a network and its user with invalid email address
Endpoint:
https://invoca.net/api/2015-12-09/<network_id>/network.json
Format: application/json
Request Body:
{
"users": [
{
"id_from_network": "549494858585cFUyYnFHyiYA42TrpM",
"email_address": "chris@",
"first_name": "Chris",
"last_name": "Dean",
"phone_number": "8004377950",
"role": "Manager"
}
]
}
Response Code: 403
Response Body:
{
"errors": {
"users": [
{
"email_address": [
"is invalid"
]
}
]
}
}
Delete network users by putting an empty user hash
Endpoint:
https://invoca.net/api/2015-12-09/<network_id>/network.json
Format: application/json
Request Body:
{
"users": [
]
}