These objects represent the accounts (owned by employees) in your organization.
Push Security REST API (v1)
The Push Security REST API provides programmatic access to the administrative functionality of the Push platform. This API adheres to RESTful principles, featuring resource-oriented URLs that are predictable and easy to navigate.
The API uses JSON-formatted request bodies and responses along with standard HTTP response codes, authentication methods, and HTTP verbs.
Rate limits are in place to ensure consistent performance for all users.
To interact with the Push Security API, you'll need an API key for authentication. To create or manage your API keys, go to the Settings page in the Push admin console.
When generating a new key, you have two permission levels to choose from: Read only and Full access. A Read only key lets you make GET requests, while Full access allows for all types of requests.
To authenticate your API requests, include a header named x-api-key and set its value to your API key.
All API calls must be made over HTTPS.
The Push Security API enforces rate limiting to ensure equitable access and maintain performance. Each user is permitted up to 10 API requests per second, with a temporary burst capacity that allows an additional 10 requests for brief intervals.
If you surpass these limits, the API will return a 429 status code as an indication.
The Push Security API uses standard HTTP response codes to signal the outcome of an API call. Here's what you need to know:
2xx codes: These indicate that your request was successful.
4xx codes: A client-side issue, usually because something is missing or incorrect in your request.
5xx codes: These suggest a problem on our end, although these occurrences are infrequent.
| HTTP Code | Description |
|---|---|
| 200 OK | Your request was successfully processed. |
| 400 Bad Request | Your request is missing something or is incorrect. Double-check your parameters. |
| 429 Too Many Requests | You've exceeded the rate limits. Consider implementing exponential backoffs in your API calls. |
| 500 Server Error | Something's not right on our end. |
- https://api.pushsecurity.com/v1/findings
- curl
- Python
- Node.js
curl -i -X GET \
https://api.pushsecurity.com/v1/findings \
-H 'x-api-key: YOUR_API_KEY_HERE'OK
Unique identifier for the finding
The type of finding
| Enum Value | Description |
|---|---|
| MFA_NOT_REGISTERED | This account does not have MFA. |
| REUSED_PASSWORD | The password used on the account is being reused. |
| SHARED_ACCOUNT | The account credentials are being shared with another employee. |
| UNUSED_THIRD_PARTY_APP | The third-party integration has not been used in 90 days or more. |
| WEAK_PASSWORD | The password used on the account is weak. |
| LEAKED_PASSWORD | The password used on the account has been leaked in a data breach. |
| PASSWORD_MANAGER_NOT_USED | The employee typically uses manually typed passwords, rather than a password manager. |
| STOLEN_CREDENTIALS | The credentials used on the account have been identified as stolen. |
The state of the finding
| Enum Value | Description |
|---|---|
| OPEN | The finding has been confirmed and is open. |
| RESOLVED | The finding has been resolved and is no longer an issue. |
ID of the employee this finding is linked to, null if finding is not linked to an employee.
ID of the password this finding is linked to, null if finding is not linked to a password.
ID of the account this finding is linked to, null if finding is not linked to an account.
The type of app this finding is linked to, null if finding is not linked to an app.
ID of the app this finding is linked to, null if finding is not linked to an app.
Reasons a password is weak, null if not a WEAK_PASSWORD finding.
| Enum Value | Description |
|---|---|
| COMMON_BASE_WORD | The base word is a derivative of top 10000 most used passwords. |
| BANNED_BASE_WORD | The password is a derivative of a custom banned word. |
Start of the next page that can be used as the nextToken for the next request.
{ "result": [ { "id": "d6a32ba5-0532-4a66-8137-48cdf409c972", "type": "MFA_NOT_REGISTERED", "state": "OPEN", "employeeId": "379ac7ea-ff2a-42ef-af37-06d2020dc46a", "passwordId": "c4a045a1-5331-4714-af83-6a361e98960d", "accountId": "string", "appType": "PUSH_SECURITY", "appId": "2a2197de-ad2c-47e4-8dcb-fb0f04cf83e0", "weakPasswordReasons": [ "COMMON_BASE_WORD" ], "creationTimestamp": 1698064423 } ], "paging": { "moreResults": true, "next": "501", "nextToken": "0b9972aa-fe8d-4095-82d3-2e13cf3cfd43" } }
- https://api.pushsecurity.com/v1/findings/{id}
- curl
- Python
- Node.js
curl -i -X GET \
'https://api.pushsecurity.com/v1/findings/{id}' \
-H 'x-api-key: YOUR_API_KEY_HERE'OK
The type of finding
| Enum Value | Description |
|---|---|
| MFA_NOT_REGISTERED | This account does not have MFA. |
| REUSED_PASSWORD | The password used on the account is being reused. |
| SHARED_ACCOUNT | The account credentials are being shared with another employee. |
| UNUSED_THIRD_PARTY_APP | The third-party integration has not been used in 90 days or more. |
| WEAK_PASSWORD | The password used on the account is weak. |
| LEAKED_PASSWORD | The password used on the account has been leaked in a data breach. |
| PASSWORD_MANAGER_NOT_USED | The employee typically uses manually typed passwords, rather than a password manager. |
| STOLEN_CREDENTIALS | The credentials used on the account have been identified as stolen. |
The state of the finding
| Enum Value | Description |
|---|---|
| OPEN | The finding has been confirmed and is open. |
| RESOLVED | The finding has been resolved and is no longer an issue. |
ID of the employee this finding is linked to, null if finding is not linked to an employee.
ID of the password this finding is linked to, null if finding is not linked to a password.
ID of the account this finding is linked to, null if finding is not linked to an account.
The type of app this finding is linked to, null if finding is not linked to an app.
ID of the app this finding is linked to, null if finding is not linked to an app.
Reasons a password is weak, null if not a WEAK_PASSWORD finding.
| Enum Value | Description |
|---|---|
| COMMON_BASE_WORD | The base word is a derivative of top 10000 most used passwords. |
| BANNED_BASE_WORD | The password is a derivative of a custom banned word. |
{ "id": "d6a32ba5-0532-4a66-8137-48cdf409c972", "type": "MFA_NOT_REGISTERED", "state": "OPEN", "employeeId": "379ac7ea-ff2a-42ef-af37-06d2020dc46a", "passwordId": "c4a045a1-5331-4714-af83-6a361e98960d", "accountId": "string", "appType": "PUSH_SECURITY", "appId": "2a2197de-ad2c-47e4-8dcb-fb0f04cf83e0", "weakPasswordReasons": [ "COMMON_BASE_WORD" ], "creationTimestamp": 1698064423 }