Anomify API Documentation

Requests to fetch data will accept HTTP GET or POST.

The /login endpoint will insist on being requested via POST for security.

HTTPS will be enforced on production nodes.

Times will be passed as unix timestamps in all cases.

Most methods which handle timestamps have the same requirements and validation, which are:

A session id will automatically be created for any unauthorized request and passed back in the status of the response as "session_id". A cookie will also be set.

An application using the API should pass back the “session_id” parameter in every request and not trust the cookie to work as the app may not be in the same cookie domain as the API.

The API will look for an existing session id on an incoming request in this order:

  1. An HTTP header called "X-Session-Id"
  2. A GET or POST parameter called "session_id"
  3. A cookie called “session_id”

The API can also authenticate to an organization level (not user level) via a token. Auth token are checked after user sessions, so if you pass both, the user-level login will take preference. If you're logged in as a user and you want to use token authentication, log out first.

This should be passed in a request header as:

X-Auth-Token: 2198b4ce0e9884d44b030397a6395b53

For internal compatibility the token can will also be accepted inside a JSON block sent in POST within the following structure, however this is not guaranteed to be available on all methods, and the header method above is preferable:

{
    "data": {
        "token": "2198b4ce0e9884d44b030397a6395b53"
    }
}

Available Methods

/anomalies

/anomalies

/anomaly

/anomaly/lookup
/anomaly/train
/anomaly/{anomaly_id}

/image

/image/anomaly
/image/metric

/js

/js/eventsender

/login

/login
/login/forgotpassword
/login/resetpassword
/login/validateclient

/match

/match/{match_id}
/match/{match_id}/graph
/match/{match_id}/motif/graph

/metric

/metric/{metric_name}
/metric/{metric_name}/anomalies
/metric/{metric_name}/anomalysummary
/metric/{metric_name}/bundle
/metric/{metric_name}/graph
/metric/{metric_name}/patterns
/metric/{metric_name}/timeseries
/metric/{metric_name}/yhat

/metrics

/metrics
/metrics/mostanomalous
/metrics/mostrecentlyanomalous
/metrics/mostrecentlymatched

/misc

/misc/phonecodes
/misc/timesince
/misc/timezones

/org

/org/adminalert/{alert_code}
/org/adminalerts
/org/channels
/org/graph
/org/info
/org/summary
/org/update
/org/users

/pattern

/pattern/{pattern_id}
/pattern/{pattern_id}/disable
/pattern/{pattern_id}/matches
/pattern/{pattern_id}/timeseries

/patterns

/patterns/pending

/ping

/ping

/signup

/signup/demo
/signup/demo-orgs
/signup/selfserve
/signup/verify

/status

/status

/user

/user/info
/user/logout
/user/ping
/user/reportissue
/user/update
/user/updatepassword

/watcher

/watcher/create
/watcher/{watcher_id}/delete
/watcher/{watcher_id}/undelete
/watcher/{watcher_id}/update

/watchers

/watchers/chips
/watchers/list