Users
This functionality is only available to supporters.
User Listing
> curl -H "Accept: application/vnd.tender-v1+json" "https://USER:PASS@api.tenderapp.com/yoursite/users"
{
"offset": 0,
"total": 329,
"per_page": 30,
"users": [
{USER}, {USER}, etc
]
}
You can find a user by email by supplying an email
param. You can also get a subset of users by using the
filter
parameter with: support
,
active
, disabled
, beta
or
important
.
Single User
> curl -H "Accept: application/vnd.tender-v1+json" "https://USER:PASS@api.tenderapp.com/yoursite/users/12345"
{
"name": "USER",
"email": "USER@EXAMPLE",
"title": null,
"external_id": "ivanv@equius.com.au",
"state": "user",
"enable_email_notifications": true,
"public_facing": true,
"openid_url": null,
"trusted": false,
"comments_count": 3,
"discussions_count": 2,
"href": "https://api.tenderapp.com/yoursite/users/12345",
"discussions_href": "https://api.tenderapp.com/yoursite/users/12345/discussions{-opt|?|page,user_email}{-join|&|page,user_email}",
"created_at": "2009-01-26T08:12:37Z",
"updated_at": "2009-01-26T08:12:37Z",
"activated_at": "2008-01-20T04:09:41Z"
}
Current User
> curl -H "Accept: application/vnd.tender-v1+json" "https://USER:PASS@api.tenderapp.com/yoursite/profile"
User Attributes
- name - The user's name.
- email - The user's email address.
- title - The user's job title.
- external_id - ID string used to identify the user for Multipass requests. Uses email by default.
- state - The state of the user (user, support, disabled, spammer).
- enable_email_notifications - A boolean that determines if the user receives any email notifications for updated discussions.
- public_facing - A boolean that determines if the support user is shown on the homepage of the site. Ignored for non-support users.
- openid_url (readonly) - The user's OpenID URL.
- trusted (readonly) - A boolean that is set to true if a user has at least three valid discussions posted. Discussions posted by support and trusted users skip spam checks.
- comments_count (readonly) - the total number of comments
- discussions_count (readonly) - the total number of discussions started
- href - API URL for the user.
- important and beta flags to set the user's access to important- and beta-only knowledge base sections and discussion categories.
- company_id - if companies is enabled on your site, allows you to associate a user with a company.
- discussions_href (readonly) - URL template for selecting all discussions created by this user. See the discussion resource for info on parsing the URI templates for discussions.
Create User
To create a user, you need to POST a JSON user with the
email
, password
, and
password_confirmation
fields. name
and
title
are optional. If successful, a valid user JSON
record is returned.
For public sites, you do not have to be logged in to create a user. However, private sites require support users to create users.
> curl -H "Accept: application/vnd.tender-v1+json" \
-H "Content-Type: application/json" \
-d '{"email":"USER@EXAMPLE","password":"PASS","password_confirmation":"PASS"}'
"https://api.tenderapp.com/yoursite/users"
Update User
To update a user, you need to POST a JSON hash with the fields you want updated. If successful, a valid user JSON record is returned.
> curl -X 'PUT' -H "Accept: application/vnd.tender-v1+json" \
-H "Content-Type: application/json" \
-d '{"name":"Henry","extras":{"foo":"bar"}}' \
"https://USER:PASS@api.tenderapp.com/yoursite/users/12345"
You can update the following attributes: name
,
email
, password
AND
password_confirmation
, title
,
external_id
, state
and
extras
.
Login User
You can also validate a login by passing a JSON hash with just
the email
and password
options. You do
not have to pass login information to verify an email/password.
> curl -H "Accept: application/vnd.tender-v1+json" \
-H "Content-Type: application/json" \
-d '{"email":"USER@EXAMPLE","password":"PASS"}'
"https://api.tenderapp.com/yoursite/users"