-
Notifications
You must be signed in to change notification settings - Fork 8
ApiHome
This document proposes a "home document" format for Huddle API Entry Points. This will represent a new Entry point for the Huddle API. The API will return links to a number of endpoints for Host of Huddle functioanlity, described using the proposed json-home specification
The current API Entry point is limited in that only a single link can be returned in the Location hearer. This focument is intended to provide an extendable method of specifying Entry points to various Huddle APIs.
The Huddle API Home document requires authentication.
Following the above spec, the API Home document contains a number of resources with identifiers that detail resource links/templates.
Each identifier is universal (regardless of {TLD} instance) within the Huddle Enterprise, the relative links also do not change but the Host (and therefore full link) will.
Resource Identifier | Web Link Description |
---|---|
http://api.huddle.net/rel/user-link | Huddle User API link |
http://api.huddle.net/rel/user | Huddle User API link template |
http://api.huddle.net/rel/workspace | Huddle Workspace API link template |
http://api.huddle.net/rel/people/workspaces | Huddle People Workspace API link template |
http://api.huddle.net/rel/search/files | Huddle Search Files API link template |
http://api.huddle.net/rel/search/folders | Huddle Search Folders API link template |
More Identifiers are defined on the Web "Home Document"
Any Resource Identifier that identifies a "href-template" will also define variables for that template. Each Resource Template Parameter is again defined universally within the Huddle Enterprise and will not change across Huddle instances.
Resource Template Parameter | Parameter Description |
---|---|
http://api.huddle.net/param/user-id | Numerical User Id |
http://api.huddle.net/param/query-string | Query string for Search APIs |
http://api.huddle.net/param/workspace-id | Numerical Workspace Id |
More Parameters are defined on the Web "Home Document"
GET / HTTP/1.1
Accept: application/json
Authorisation: OAuth Bearer frooty/mcnooty
HTTP/1.1 200 OK
Content-Type: application/json-home
Host: https://api.huddle.{TLD}
{
"resources": {
"http://api.huddle.net/rel/user-link": {
"href": "..."
},
"http://api.huddle.net/rel/user": {
"href-template": ".../{user-id}/",
"href-vars": {
"user-id": "http://api.huddle.net/param/user-id"
}
},
"http://api.huddle.net/rel/workspace": {
"href-template": ".../{workspace-id}/",
"href-vars": {
"workspace-id": "http://api.huddle.net/param/workspace-id"
}
},
"http://api.huddle.net/rel/people/workspaces": {
"href-template": ".../{workspace-id}",
"href-vars": {
"workspace-id": "http://api.huddle.net/param/workspace-id"
}
},
"http://api.huddle.net/rel/search/files": {
"href": ".../{query-string}",
"href-vars": {
"query-string": "http://api.huddle.net/param/query-string"
}
},
"http://api.huddle.net/rel/search/folders": {
"href": ".../{query-string}",
"href-vars": {
"query-string": "http://api.huddle.net/param/query-string"
}
}
}
}
- Basic concepts
-
Resources
- Actor
- Approvals
- BulkProcess
- Calendar
- Membership
- Company
- Document
- Document library settings
- Folder
- Paged Folder
- Pins
- Integrations
- Form
- Friends
- Invitation
- Link
- Document Lock
- Folder Lock
- Localisation
- MemberAutocomplete
- Notifications
- Offline item
- PeopleBulkProcess
- Permissions
- Presence
- PublishedDocuments
- Recents
- Recommendations
- Recycle Bin
- Search
- Share
- Tasks (Todos), File Requests, Approvals
- Tasks on Documents
- Actions
- UserApprovals
- User
- VersionHistory
- Workspace
- Workspaces
- SamlPartners
- Logout
- Impersonation
- Administration
- WebHooks