> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://next.developer.frame.io/platform/v2/api-reference/audit-logs/get-account-audit-logs/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://next.developer.frame.io/_mcp/server. # Get audit log entries for an Account GET https://api.frame.io/v2/accounts/{account_id}/events Fetch audit logs with some filtering capabilities via query params Reference: https://next.developer.frame.io/platform/v2/api-reference/audit-logs/get-account-audit-logs ## Authentication - `Authorization` header (bearer token, required) — Bearer authentication of the form `Bearer `, where token is your auth token. ## Request ### Path parameters - `account_id` (string, required) — Account ID ### Query parameters - `filters[start_date]` (string, optional) — Start ISO Date - `filters[end_date]` (string, optional) — End ISO Date - `filters[resource_type]` (enum, optional) — Filter by Resource Type - Allowed values: `asset`, `review_link`, `presentation`, `collaborator`, `pending_collaborator`, `comment`, `review_link_item`, `account`, `account_member`, `pending_account_member`, `subscription`, `subscription_line_item`, `team`, `team_member`, `pending_team_member`, `user`, `action`, `oauth_app`, `user_token`, `webhook`, `file`, `folder`, `version_stack`, `like`, `read` - `filters[event_type]` (enum, optional) — Filter by Type of Activity - Allowed values: `account_locked`, `account_member_created`, `account_member_deleted`, `account_member_updated`, `account_mfa_enforced`, `account_fio_version_migrated`, `account_fio_version_migrated`, `account_ownership_transferred`, `account_restored`, `account_updated`, `label_updated`, `collaborator_added`, `comment_created`, `join_presentation_request_approved`, `join_project_request_approved`, `join_review_link_request_approved`, `join_team_request_approved`, `account_permissions_granted_to_user`, `comment_liked`, `file_uploaded`, `project_permissions_granted_to_account_user_group`, `project_permissions_granted_to_user`, `resource_invite_sent`, `share_viewed`, `transfer_batch_completed`, `user_mfa_enforced`, `workspace_permissions_granted_to_account_user_group`, `workspace_permissions_granted_to_user`, `new_device_login`, `password_changed`, `password_reset_requested`, `pending_account_member_created`, `pending_account_member_deleted`, `pending_team_member_created`, `pending_team_member_deleted`, `project_unarchived`, `push_tokens_added`, `push_tokens_deleted`, `role_added`, `role_removed`, `session_revoked`, `team_created`, `team_creator_updated`, `team_deleted`, `team_lifecycle_policy_updated`, `team_member_created`, `team_member_deleted`, `team_member_reset`, `team_member_updated`, `team_updated`, `anonymous_user_created`, `comment_completed`, `comment_deleted`, `comment_uncompleted`, `comment_updated`, `join_request_accepted`, `join_request_created`, `join_request_declined`, `join_request_deleted`, `join_request_reset`, `pending_reviewer_created`, `pending_reviewer_deleted`, `presentation_created`, `presentation_deleted`, `presentation_updated`, `project_archived`, `project_created`, `project_deleted`, `project_invite_link_created`, `project_invite_link_revoked`, `project_moved`, `project_restored`, `project_updated`, `reviewer_created`, `reviewer_deleted`, `review_link_assets_added`, `review_link_assets_deleted`, `review_link_created`, `review_link_deleted`, `review_link_emailed`, `review_link_updated`, `subscription_cancelled`, `subscription_card_updated`, `subscription_created`, `subscription_line_item_created`, `subscription_line_item_deleted`, `subscription_restored`, `subscription_updated`, `action_created`, `action_deleted`, `action_updated`, `webhook_created`, `webhook_deleted`, `webhook_updated`, `asset_copied`, `asset_created`, `asset_deleted`, `asset_moved`, `asset_restored`, `assets_unversioned`, `asset_updated`, `asset_versioned`, `high_risk_sign_up`, `sbwm_template_created`, `sbwm_template_deleted`, `sbwm_template_updated`, `allowed_domain_created`, `allowed_domain_deleted`, `collaborator_deleted`, `media_deleted`, `asset_metadata_created`, `media_created`, `pending_collaborator_created`, `pending_collaborator_deleted`, `plan_created`, `plan_deleted`, `plan_updated`, `preference_updated`, `asset_archived`, `asset_unarchived`, `project_archive_completed`, `project_unarchive_completed`, `reply_created` - `filters[team_id]` (string, optional) — Filter by Team ID - `filters[project_id]` (string, optional) — Filter by Project ID - `filters[resource_id]` (string, optional) — Filter by resource ID (Asset ID, Project ID, User ID) - `filters[user_id]` (string, optional) — Filter by User ID - `filters[ip_address]` (string, optional) — Filter by IP Address This supports both IPv4 (`1.1.1.1`) and IPv6 (`2001:db8:3333:4444:5555:6666:7777:8888`) - `page` (integer, optional, default: 1) — Page number - `page_size` (integer, optional, default: 50) — Records per page ## Response ### 200 Succesful Event logs response - `list of AuditEvent` ## Errors ### 401 Unauthorized Error Unauthorized response - `code` (integer, optional) - `errors` (list of HttpErrorErrorsItems, optional) - `message` (string, optional) ### 404 Not Found Error Not Found response - `code` (integer, optional) - `errors` (list of HttpErrorErrorsItems, optional) - `message` (string, optional) ## Types ### AuditEvent - `account_id` (string, optional, nullable) - `anonymous_user_id` (string, optional, nullable) - `client` (string, optional, nullable) — The API client the audit event was triggered by. This will not always be populated. When the API call that produced an event was made via an OAuth app it will look like: `oauth_app/:uuid`, and if it was made via a developer token it will look like: `user_token/:uuid`, with the UUID being the User ID the token belongs to Here are some examples: - `user_token/57823879-e541-49b0-b902-c43794c4400c` - `oauth_app/80ccf0bb-ae91-49c4-8aec-8f6238c14947` - `web/2024-06-10-18-15` - `pipeline-media-warden/cbd0061f6f190489e8af3137b8707b33f498f53f` - `null` - `event_type` (enum, optional) - Allowed values: `account_locked`, `account_member_created`, `account_member_deleted`, `account_member_updated`, `account_mfa_enforced`, `account_fio_version_migrated`, `account_fio_version_migrated`, `account_ownership_transferred`, `account_restored`, `account_updated`, `label_updated`, `collaborator_added`, `comment_created`, `email_address_changed`, `email_confirmed`, `google_auth_disabled`, `join_presentation_request_approved`, `join_project_request_approved`, `join_review_link_request_approved`, `join_team_request_approved`, `login_factor_created`, `login_factor_validated`, `account_permissions_granted_to_user`, `comment_liked`, `email_change_confirmation_requested`, `file_uploaded`, `google_auth_enabled`, `new_user_email_confirmation_requested`, `project_permissions_granted_to_account_user_group`, `project_permissions_granted_to_user`, `resource_invite_sent`, `share_viewed`, `transfer_batch_completed`, `user_mfa_enforced`, `workspace_permissions_granted_to_account_user_group`, `workspace_permissions_granted_to_user`, `new_device_login`, `password_changed`, `password_reset_requested`, `pending_account_member_created`, `pending_account_member_deleted`, `pending_team_member_created`, `pending_team_member_deleted`, `project_unarchived`, `push_tokens_added`, `push_tokens_deleted`, `role_added`, `role_removed`, `session_revoked`, `team_created`, `team_creator_updated`, `team_deleted`, `team_lifecycle_policy_updated`, `team_member_created`, `team_member_deleted`, `team_member_reset`, `team_member_updated`, `team_updated`, `user_deactivated`, `user_login`, `user_login_attempt`, `user_reactivated`, `user_updated`, `anonymous_user_created`, `comment_completed`, `comment_deleted`, `comment_uncompleted`, `comment_updated`, `join_request_accepted`, `join_request_created`, `join_request_declined`, `join_request_deleted`, `join_request_reset`, `pending_reviewer_created`, `pending_reviewer_deleted`, `presentation_created`, `presentation_deleted`, `presentation_updated`, `project_archived`, `project_created`, `project_deleted`, `project_invite_link_created`, `project_invite_link_revoked`, `project_moved`, `project_restored`, `project_updated`, `reviewer_created`, `reviewer_deleted`, `review_link_assets_added`, `review_link_assets_deleted`, `review_link_created`, `review_link_deleted`, `review_link_emailed`, `review_link_updated`, `subscription_cancelled`, `subscription_card_updated`, `subscription_created`, `subscription_line_item_created`, `subscription_line_item_deleted`, `subscription_restored`, `subscription_updated`, `user_signup`, `action_created`, `action_deleted`, `action_updated`, `oauth_app_created`, `oauth_app_deleted`, `oauth_app_updated`, `oauth_app_enabled`, `oauth_app_disabled`, `user_token_created`, `user_token_deleted`, `user_token_disabled`, `user_token_enabled`, `user_token_updated`, `webhook_created`, `webhook_deleted`, `webhook_updated`, `asset_copied`, `asset_created`, `asset_deleted`, `asset_moved`, `asset_restored`, `assets_unversioned`, `asset_updated`, `asset_versioned`, `high_risk_sign_up`, `sbwm_template_created`, `sbwm_template_deleted`, `sbwm_template_updated`, `allowed_domain_created`, `allowed_domain_deleted`, `collaborator_deleted`, `media_deleted`, `asset_metadata_created`, `media_created`, `pending_collaborator_created`, `pending_collaborator_deleted`, `plan_created`, `plan_deleted`, `plan_updated`, `preference_updated`, `asset_archived`, `asset_unarchived`, `project_archive_completed`, `project_unarchive_completed`, `reply_created` - `event_details` (AuditEventEventDetails, optional) — The details for the event. This varies quite a bit from one type of event to another but there are some examples in the example responses. - `id` (double, optional) — Unique identifier - `inserted_at` (string, optional) - `ip_address` (string, optional, nullable) — The IP address associated with this event - `project_id` (string, optional, nullable) — The Project ID that this action occured in - `resource_id` (string, optional) — The ID of the referenced resource - `resource_type` (enum, optional) — The type of the referenced resource - Allowed values: `account`, `account_member`, `action`, `anonymous_user`, `asset`, `comment_impression`, `comment`, `folder`, `join_request`, `login_factor`, `oauth_app`, `pending_account_member`, `pending_reviewer`, `pending_team_member`, `presentation`, `project`, `project_invite_link`, `reviewer`, `review_link`, `reset_token`, `share`, `subscription`, `subscription_line_item`, `team`, `team_member`, `user`, `user_token`, `transfer_batch`, `version_stack`, `webhook` - `team_id` (string, optional, nullable) — Team ID - `source` (enum, optional) — The Source of the action that produced a given audit log entry - Allowed values: `device`, `internal`, `external`, `unknown` - `user_id` (string, optional, nullable) — User ID - `updated_at` (string, optional) ### HttpErrorErrorsItems - `code` (integer, optional) - `detail` (string, optional) - `status` (integer, optional) - `title` (string, optional) ### AuditEventEventDetails The details for the event. This varies quite a bit from one type of event to another but there are some examples in the example responses. ## Examples ### Asset Created **Response** ```json [ { "anonymous_user_id": null, "client": null, "event_type": "asset_created", "event_details": { "account_id": "6bdcb4d9-9a2e-4548-a765-ae6b27a6c024", "ext": ".png", "filesize": 170144, "filetype": "image/png", "index": -17, "name": "Sample asset.png", "parent_id": "ba6cd478-5ca3-4c1a-2186-82cdaecb3e6c", "private": false, "project_id": "e9794c94-16a4-4e33-b4e6-cdd9757d0e24", "sm_refresh_at": "2024-06-28T21:42:54Z", "uploaded_at": "2024-06-28T21:42:54.437202Z" }, "id": 1944044771, "inserted_at": "2024-06-28T21:42:54.516273Z", "ip_address": "255.255.255.255", "project_id": "j2794c94-16a4-4e33-b4e6-cdd9757d0e24", "resource_id": "92je2963-24ae-4cd1-be13-19a93c92eb6e", "resource_type": "asset", "team_id": "5j4d6420-fa8d-4e85-af05-0f26785c54f5", "source": "unknown", "user_id": "b72b57e0-79f2-4bc7-9b70-99fbc175175c", "updated_at": "2024-06-28T21:42:54.516273Z" } ] ``` **SDK Code** ```python Asset Created import requests url = "https://api.frame.io/v2/accounts/erfb57e0-79f2-4bc7-9b70-99fbc175175c/events" headers = {"Authorization": "Bearer "} response = requests.get(url, headers=headers) print(response.json()) ``` ```javascript Asset Created const url = 'https://api.frame.io/v2/accounts/erfb57e0-79f2-4bc7-9b70-99fbc175175c/events'; const options = {method: 'GET', headers: {Authorization: 'Bearer '}}; try { const response = await fetch(url, options); const data = await response.json(); console.log(data); } catch (error) { console.error(error); } ``` ```go Asset Created package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.frame.io/v2/accounts/erfb57e0-79f2-4bc7-9b70-99fbc175175c/events" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("Authorization", "Bearer ") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) } ``` ```ruby Asset Created require 'uri' require 'net/http' url = URI("https://api.frame.io/v2/accounts/erfb57e0-79f2-4bc7-9b70-99fbc175175c/events") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer ' response = http.request(request) puts response.read_body ``` ```java Asset Created import com.mashape.unirest.http.HttpResponse; import com.mashape.unirest.http.Unirest; HttpResponse response = Unirest.get("https://api.frame.io/v2/accounts/erfb57e0-79f2-4bc7-9b70-99fbc175175c/events") .header("Authorization", "Bearer ") .asString(); ``` ```php Asset Created request('GET', 'https://api.frame.io/v2/accounts/erfb57e0-79f2-4bc7-9b70-99fbc175175c/events', [ 'headers' => [ 'Authorization' => 'Bearer ', ], ]); echo $response->getBody(); ``` ```csharp Asset Created using RestSharp; var client = new RestClient("https://api.frame.io/v2/accounts/erfb57e0-79f2-4bc7-9b70-99fbc175175c/events"); var request = new RestRequest(Method.GET); request.AddHeader("Authorization", "Bearer "); IRestResponse response = client.Execute(request); ``` ```swift Asset Created import Foundation let headers = ["Authorization": "Bearer "] let request = NSMutableURLRequest(url: NSURL(string: "https://api.frame.io/v2/accounts/erfb57e0-79f2-4bc7-9b70-99fbc175175c/events")! as URL, cachePolicy: .useProtocolCachePolicy, timeoutInterval: 10.0) request.httpMethod = "GET" request.allHTTPHeaderFields = headers let session = URLSession.shared let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in if (error != nil) { print(error as Any) } else { let httpResponse = response as? HTTPURLResponse print(httpResponse) } }) dataTask.resume() ``` ### Asset Moved **Response** ```json [ { "anonymous_user_id": null, "client": null, "event_type": "asset_moved", "event_details": { "new_parent_id": "66c38214-390f-4609-9522-fd858dac8569", "old_parent_id": "aasfd478-5ca3-4c1a-a186-82cdaecb3e6c" }, "id": 1943856518, "inserted_at": "2024-06-28T21:44:54.091046Z", "ip_address": null, "project_id": "e97s7c94-16a4-4e33-b4e6-cdd9757d0e24", "resource_id": "c99e2963-24ae-4cd1-be13-19a93c92eb6e", "resource_type": "asset", "team_id": "b44d1220-fa8d-4e85-af05-0f26785c54f5", "source": "unknown", "user_id": "eefbf97e0-79f2-4bc7-9b70-99fbc175175c", "updated_at": "2024-06-28T21:44:54.091046Z" } ] ``` **SDK Code** ```python Asset Moved import requests url = "https://api.frame.io/v2/accounts/erfb57e0-79f2-4bc7-9b70-99fbc175175c/events" headers = {"Authorization": "Bearer "} response = requests.get(url, headers=headers) print(response.json()) ``` ```javascript Asset Moved const url = 'https://api.frame.io/v2/accounts/erfb57e0-79f2-4bc7-9b70-99fbc175175c/events'; const options = {method: 'GET', headers: {Authorization: 'Bearer '}}; try { const response = await fetch(url, options); const data = await response.json(); console.log(data); } catch (error) { console.error(error); } ``` ```go Asset Moved package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.frame.io/v2/accounts/erfb57e0-79f2-4bc7-9b70-99fbc175175c/events" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("Authorization", "Bearer ") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) } ``` ```ruby Asset Moved require 'uri' require 'net/http' url = URI("https://api.frame.io/v2/accounts/erfb57e0-79f2-4bc7-9b70-99fbc175175c/events") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer ' response = http.request(request) puts response.read_body ``` ```java Asset Moved import com.mashape.unirest.http.HttpResponse; import com.mashape.unirest.http.Unirest; HttpResponse response = Unirest.get("https://api.frame.io/v2/accounts/erfb57e0-79f2-4bc7-9b70-99fbc175175c/events") .header("Authorization", "Bearer ") .asString(); ``` ```php Asset Moved request('GET', 'https://api.frame.io/v2/accounts/erfb57e0-79f2-4bc7-9b70-99fbc175175c/events', [ 'headers' => [ 'Authorization' => 'Bearer ', ], ]); echo $response->getBody(); ``` ```csharp Asset Moved using RestSharp; var client = new RestClient("https://api.frame.io/v2/accounts/erfb57e0-79f2-4bc7-9b70-99fbc175175c/events"); var request = new RestRequest(Method.GET); request.AddHeader("Authorization", "Bearer "); IRestResponse response = client.Execute(request); ``` ```swift Asset Moved import Foundation let headers = ["Authorization": "Bearer "] let request = NSMutableURLRequest(url: NSURL(string: "https://api.frame.io/v2/accounts/erfb57e0-79f2-4bc7-9b70-99fbc175175c/events")! as URL, cachePolicy: .useProtocolCachePolicy, timeoutInterval: 10.0) request.httpMethod = "GET" request.allHTTPHeaderFields = headers let session = URLSession.shared let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in if (error != nil) { print(error as Any) } else { let httpResponse = response as? HTTPURLResponse print(httpResponse) } }) dataTask.resume() ``` ### Review Link Updated **Response** ```json [ { "anonymous_user_id": null, "client": "web/2024-06-24-18-11", "event_type": "review_link_updated", "event_details": { "password": "pas" }, "id": 1929542681, "inserted_at": "2024-06-27T09:43:37.358532Z", "ip_address": "97.120.111.2", "project_id": "e9791f94-16a4-4e33-b4e6-cdd9757d0e24", "resource_id": "a57eb65f-ff57-4099-ac61-b2f0a13365c0", "resource_type": "review_link", "team_id": "b4td6420-fa8d-4e85-af05-0f26785c54f5", "source": "internal", "user_id": "ezrb57e0-79f2-4bc7-9b70-99fbc125175c", "updated_at": "2024-06-27T09:43:37.358532Z" } ] ``` **SDK Code** ```python Review Link Updated import requests url = "https://api.frame.io/v2/accounts/erfb57e0-79f2-4bc7-9b70-99fbc175175c/events" headers = {"Authorization": "Bearer "} response = requests.get(url, headers=headers) print(response.json()) ``` ```javascript Review Link Updated const url = 'https://api.frame.io/v2/accounts/erfb57e0-79f2-4bc7-9b70-99fbc175175c/events'; const options = {method: 'GET', headers: {Authorization: 'Bearer '}}; try { const response = await fetch(url, options); const data = await response.json(); console.log(data); } catch (error) { console.error(error); } ``` ```go Review Link Updated package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.frame.io/v2/accounts/erfb57e0-79f2-4bc7-9b70-99fbc175175c/events" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("Authorization", "Bearer ") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) } ``` ```ruby Review Link Updated require 'uri' require 'net/http' url = URI("https://api.frame.io/v2/accounts/erfb57e0-79f2-4bc7-9b70-99fbc175175c/events") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer ' response = http.request(request) puts response.read_body ``` ```java Review Link Updated import com.mashape.unirest.http.HttpResponse; import com.mashape.unirest.http.Unirest; HttpResponse response = Unirest.get("https://api.frame.io/v2/accounts/erfb57e0-79f2-4bc7-9b70-99fbc175175c/events") .header("Authorization", "Bearer ") .asString(); ``` ```php Review Link Updated request('GET', 'https://api.frame.io/v2/accounts/erfb57e0-79f2-4bc7-9b70-99fbc175175c/events', [ 'headers' => [ 'Authorization' => 'Bearer ', ], ]); echo $response->getBody(); ``` ```csharp Review Link Updated using RestSharp; var client = new RestClient("https://api.frame.io/v2/accounts/erfb57e0-79f2-4bc7-9b70-99fbc175175c/events"); var request = new RestRequest(Method.GET); request.AddHeader("Authorization", "Bearer "); IRestResponse response = client.Execute(request); ``` ```swift Review Link Updated import Foundation let headers = ["Authorization": "Bearer "] let request = NSMutableURLRequest(url: NSURL(string: "https://api.frame.io/v2/accounts/erfb57e0-79f2-4bc7-9b70-99fbc175175c/events")! as URL, cachePolicy: .useProtocolCachePolicy, timeoutInterval: 10.0) request.httpMethod = "GET" request.allHTTPHeaderFields = headers let session = URLSession.shared let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in if (error != nil) { print(error as Any) } else { let httpResponse = response as? HTTPURLResponse print(httpResponse) } }) dataTask.resume() ``` ### User Login Attempt **Response** ```json [ { "anonymous_user_id": null, "client": "auth", "event_type": "user_login_attempt", "event_details": { "strikes": 1 }, "id": 1740327297, "inserted_at": "2024-06-04T21:29:37.320025Z", "ip_address": "172.250.231.232", "project_id": null, "resource_id": "zrfb57e0-9b70-79f2-4bc7-99fbc175175c", "resource_type": "user", "team_id": null, "source": "unknown", "user_id": "zrfb57e0-9b70-79f2-4bc7-99fbc175175c", "updated_at": "2024-06-04T21:29:37.320025Z" } ] ``` **SDK Code** ```python User Login Attempt import requests url = "https://api.frame.io/v2/accounts/erfb57e0-79f2-4bc7-9b70-99fbc175175c/events" headers = {"Authorization": "Bearer "} response = requests.get(url, headers=headers) print(response.json()) ``` ```javascript User Login Attempt const url = 'https://api.frame.io/v2/accounts/erfb57e0-79f2-4bc7-9b70-99fbc175175c/events'; const options = {method: 'GET', headers: {Authorization: 'Bearer '}}; try { const response = await fetch(url, options); const data = await response.json(); console.log(data); } catch (error) { console.error(error); } ``` ```go User Login Attempt package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.frame.io/v2/accounts/erfb57e0-79f2-4bc7-9b70-99fbc175175c/events" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("Authorization", "Bearer ") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) } ``` ```ruby User Login Attempt require 'uri' require 'net/http' url = URI("https://api.frame.io/v2/accounts/erfb57e0-79f2-4bc7-9b70-99fbc175175c/events") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer ' response = http.request(request) puts response.read_body ``` ```java User Login Attempt import com.mashape.unirest.http.HttpResponse; import com.mashape.unirest.http.Unirest; HttpResponse response = Unirest.get("https://api.frame.io/v2/accounts/erfb57e0-79f2-4bc7-9b70-99fbc175175c/events") .header("Authorization", "Bearer ") .asString(); ``` ```php User Login Attempt request('GET', 'https://api.frame.io/v2/accounts/erfb57e0-79f2-4bc7-9b70-99fbc175175c/events', [ 'headers' => [ 'Authorization' => 'Bearer ', ], ]); echo $response->getBody(); ``` ```csharp User Login Attempt using RestSharp; var client = new RestClient("https://api.frame.io/v2/accounts/erfb57e0-79f2-4bc7-9b70-99fbc175175c/events"); var request = new RestRequest(Method.GET); request.AddHeader("Authorization", "Bearer "); IRestResponse response = client.Execute(request); ``` ```swift User Login Attempt import Foundation let headers = ["Authorization": "Bearer "] let request = NSMutableURLRequest(url: NSURL(string: "https://api.frame.io/v2/accounts/erfb57e0-79f2-4bc7-9b70-99fbc175175c/events")! as URL, cachePolicy: .useProtocolCachePolicy, timeoutInterval: 10.0) request.httpMethod = "GET" request.allHTTPHeaderFields = headers let session = URLSession.shared let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in if (error != nil) { print(error as Any) } else { let httpResponse = response as? HTTPURLResponse print(httpResponse) } }) dataTask.resume() ```