# mlytics Documentation > Documentation for mlytics ## Guides - [Documentation](https://developer.mlytics.com/docs.md): mlytics documentation ## API Reference - [Signup User](https://developer.mlytics.com/reference/post_api-v2-accounts-signup.md): This call registers a new user account. > Does not require API Key authentication. > Rate Limit: 3 requests/min - [Login User](https://developer.mlytics.com/reference/post_api-v2-accounts-login.md): This call initiates the login process for a user account. > Does not require API Key authentication. > Rate Limit: 5 requests/min - [Verify Login User](https://developer.mlytics.com/reference/post_api-v2-accounts-login-verify.md): This call verifies the login process with email OTP for a user account. > Does not require API Key authentication. > Rate Limit: 5 requests/min - [Logout User](https://developer.mlytics.com/reference/post_api-v2-accounts-logout.md): This call logs out the current authenticated user. > Requires API Key as `apikey` request header or JWT token as `Authorization: Bearer ` header. > Rate Limit: 120 requests/min - [Get User Profile](https://developer.mlytics.com/reference/get_api-v2-accounts-user-profile.md): This call returns the profile information of the current authenticated user. > Requires API Key as `apikey` request header or JWT token as `Authorization: Bearer ` header. > Rate Limit: 120 requests/min - [Update User Profile](https://developer.mlytics.com/reference/put_api-v2-accounts-user-profile.md): This call updates the profile information of the current authenticated user. > Requires API Key as `apikey` request header or JWT token as `Authorization: Bearer ` header. > Rate Limit: 20 requests/min - [Get User API Key](https://developer.mlytics.com/reference/get_api-v2-accounts-user-profile-api-key.md): This call returns the API key information of the current authenticated user. > Requires API Key as `apikey` request header or JWT token as `Authorization: Bearer ` header. > Rate Limit: 120 requests/min - [Generate or Regenerate User API Key](https://developer.mlytics.com/reference/put_api-v2-accounts-user-profile-api-key.md): This call generates a new API key for the current authenticated user. The old API key will be invalidated and replaced with a new one. > Requires API Key as `apikey` request header or JWT token as `Authorization: Bearer ` header. > Rate Limit: 20 requests/min - [Revoke User API Key](https://developer.mlytics.com/reference/delete_api-v2-accounts-user-profile-api-key.md): This call revokes the API key of the current authenticated user. After revocation, the API key will be invalidated and cannot be used for authentication. > Requires API Key as `apikey` request header or JWT token as `Authorization: Bearer ` header. > Rate Limit: 20 requests/min - [List Team Members](https://developer.mlytics.com/reference/get_api-v2-accounts-teammates.md): This call returns a list of team members in the current authenticated user's organization. > This feature is for **enterprise users** only. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Permission: Teammates API Tier 1 role required > Rate Limit: 120 requests/min - [Invite Team Member](https://developer.mlytics.com/reference/post_api-v2-accounts-teammates.md): This call invites a new team member to the current authenticated user's organization. > This feature is for **enterprise users** only. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Permission: Teammates API Tier 3 role required > Rate Limit: 20 requests/min - [List Teammate Roles](https://developer.mlytics.com/reference/get_api-v2-accounts-teammates-teammate-id-roles.md): This call returns the role list of a specific teammate (user). > This feature is for **enterprise users** only. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Permission: Teammates API Tier 1 role required > Rate Limit: 120 requests/min - [Update Teammate Roles](https://developer.mlytics.com/reference/put_api-v2-accounts-teammates-teammate-id-roles.md): This call updates the role list of a specific teammate (user). > This feature is for **enterprise users** only. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Permission: Teammates API Tier 2 role required > Rate Limit: 20 requests/min - [Deactivate Teammate](https://developer.mlytics.com/reference/post_api-v2-accounts-teammates-teammate-id-deactivate.md): This call deactivates a specific teammate (user) in the current authenticated user's organization. > This feature is for **enterprise users** only. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Permission: Teammates API Tier 2 role required > Rate Limit: 20 requests/min - [Reactivate Teammate](https://developer.mlytics.com/reference/post_api-v2-accounts-teammates-teammate-id-reactivate.md): This call reactivates a specific teammate (user) in the current authenticated user's organization. > This feature is for **enterprise users** only. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Permission: Teammates API Tier 2 role required > Rate Limit: 20 requests/min - [Remove Teammate](https://developer.mlytics.com/reference/delete_api-v2-accounts-teammates-teammate-id.md): This call removes a specific teammate (user) from the current authenticated user's organization. > This feature is for **enterprise users** only. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Permission: Teammates API Tier 4 role required > Rate Limit: 20 requests/min - [Get Organization Profile](https://developer.mlytics.com/reference/get_api-v2-accounts-organization-profile.md): This call returns the profile information of the current authenticated user's organization. > Requires API Key as `apikey` request header or JWT token as `Authorization: Bearer ` header. > Rate Limit: 120 requests/min - [Update Organization Profile](https://developer.mlytics.com/reference/put_api-v2-accounts-organization-profile.md): This call updates the profile information of the current authenticated user's organization. > Requires API Key as `apikey` request header or JWT token as `Authorization: Bearer ` header. > Permission: Site API Tier 2 role required > Rate Limit: 20 requests/min - [List Organization Profile Roles](https://developer.mlytics.com/reference/get_api-v2-accounts-organization-profile-roles.md): This call returns a list of roles available in the current authenticated user's organization profile. > This feature is for **enterprise users** only. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Permission: Teammates API Tier 1 role required > Rate Limit: 120 requests/min - [Get All Purges](https://developer.mlytics.com/reference/get_api-v2-sites-site-domain-purges.md): This call fetches details about the all the purges in the site. The response will contain an array `purges` object which would be a list of all the cache along with their details. Learn more about how to purge cache. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 100 requests/min - [Create Purge](https://developer.mlytics.com/reference/post_api-v2-sites-site-domain-purges.md): Create the site purge The path should be full url ex: ["test.mlytics.com/images/", "test.mlytics.com/apps/"] You may enter up to 10 paths for each purge. Learn more about how to purge cache. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 5 requests/min - [List SSL Certificates](https://developer.mlytics.com/reference/get_api-v2-sslcerts.md): Returns a list of SSL certificates. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 100 requests/min - [Upload Custom SSL Certificate](https://developer.mlytics.com/reference/post_api-v2-sslcerts.md): This call uploads your own SSL certificate. Learn more. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 5 requests/min - [List All Sites](https://developer.mlytics.com/reference/get_api-v2-mdns-zone-all-1.md): This call returns a list of sites. > Requires API Key, the key can be sent as a `apikey` request header. > Rate Limit: 60 requests/min - [Create a Site](https://developer.mlytics.com/reference/post_api-v2-mdns-zone-1.md): This call creates a site by using the data included in the request. After creating the site, you can call Publish a Site API to activate it. > Requires API Key, the key can be sent as a `apikey` request header. > Rate Limit: 60 requests/min - [Publish a Site](https://developer.mlytics.com/reference/post_api-v2-mdns-zone-site-id-publish-1.md): This call publishes a site by using the site ID. After publishing, your site is usable. > Requires API Key, the key can be sent as a `apikey` request header. > Rate Limit: 30 requests/min - [Delete a Site](https://developer.mlytics.com/reference/delete_api-v2-mdns-zone-site-id-1.md): This call deletes a site by using the site ID. > Requires API Key, the key can be sent as a `apikey` request header. > Rate Limit: 60 requests/min - [List All DNS Records of a Site](https://developer.mlytics.com/reference/get_api-v2-mdns-zone-site-id-rrset-1.md): Returns DNS records belongs to the site. > Requires API Key, the key can be sent as a `apikey` request header. > Rate Limit: 120 requests/min - [Create a DNS record](https://developer.mlytics.com/reference/post_api-v2-mdns-zone-site-id-rrset-1.md): This call creates a DNS record by using the data included in the request. Learn more about setting up different types of DNS records. > Requires API Key, the key can be sent as a `apikey` request header. > Rate Limit: 120 requests/min - [Update a DNS record](https://developer.mlytics.com/reference/put_api-v2-mdns-zone-site-id-rrset-record-id-1.md): This call updates a DNS record by using the data included in the request. Learn more about setting up different types of DNS records. > Requires API Key, the key can be sent as a `apikey` request header. > Rate Limit: 120 requests/min - [Toggle Multi CDN function for a DNS record](https://developer.mlytics.com/reference/patch_api-v2-mdns-zone-site-id-rrset-record-id-1.md): This call activates or deactivates the Multi CDN function for a DNS record. > Requires API Key, the key can be sent as a `apikey` request header. > Rate Limit: 60 requests/min - [Delete a DNS record](https://developer.mlytics.com/reference/delete_api-v2-mdns-zone-site-id-rrset-record-id-1.md): This call deletes a DNS record by using the site ID and record ID. > Requires API Key, the key can be sent as a `apikey` request header. > Rate Limit: 60 requests/min - [List Nameservers](https://developer.mlytics.com/reference/get_api-v2-mdns-nameserver-1.md): Returns nameservers that Mlytics assigned to you. > Requires API Key, the key can be sent as a `apikey` request header. > Rate Limit: 60 requests/min - [List All Domains](https://developer.mlytics.com/reference/get_api-v2-zones-1.md): This call returns a list of domain settings. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 100 requests/min - [Get Domain Config](https://developer.mlytics.com/reference/get_api-v2-zones-domain-1.md): This call fetches details of the domain. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 100 requests/min - [Update Domain Config](https://developer.mlytics.com/reference/patch_api-v2-zones-domain-1.md): This call updates configuration of the domain. You can update *origin* and *custom host header* through this API. Be aware that some modifications might cause the domain bypasses the Origin Shield. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 5 requests/min - [Get Global Fallback](https://developer.mlytics.com/reference/get_api-v2-zones-domain-global-fallback-1.md): This call fetches global fallback settings for the domain. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 100 requests/min - [Update Global Fallback](https://developer.mlytics.com/reference/patch_api-v2-zones-domain-global-fallback-1.md): This call updates global fallback settings for the domain. The global fallback value must be a valid Fully Qualified Domain Name (FQDN) or IPv4 address. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 60 requests/min - [Delete Global Fallback](https://developer.mlytics.com/reference/delete_api-v2-zones-domain-global-fallback-1.md): This call removes global fallback settings for the domain. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 60 requests/min - [Get All Caches](https://developer.mlytics.com/reference/get_api-v2-zones-domain-caches-1.md): This call fetches details about the all the caches in the zone. The response will contain an array `caches` object which would be a list of all the cache along with their details. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 100/min - [Create a Cache](https://developer.mlytics.com/reference/post_api-v2-zones-domain-caches-1.md): Add the domain Cache
type type of the cache.
Required: true
Type: string (dir: directory, ext: file, pattern: advanced)
path path of the cache.
Required: true
Type: string
ttl Cache time configuration.
Required: true
Type: integer between 1 and 31536000, or 0 for never cache
Note: ttl of advanced cache can not be zero.
> Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 5/min - [Update a Cache](https://developer.mlytics.com/reference/put_api-v2-zones-domain-caches-cache-id-1.md): Update the domain Cache
type type of the cache.
Required: true
Type: string (dir: directory, ext: file, pattern: advanced)
path path of the cache.
Required: true
Type: string
ttl Cache time configuration.
Required: true
Type: integer between 1 and 31536000, or 0 for never cache
Note: ttl of advanced cache can not be zero.
> Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 5/min - [Delete a Cache](https://developer.mlytics.com/reference/delete_api-v2-zones-domain-caches-cache-id-1.md): Delete Cache > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 5/min - [Get Platform List](https://developer.mlytics.com/reference/get_api-v2-zones-domain-platforms-1.md): This call fetches details of platforms bound to the domain. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 100 requests/min - [Get Selectable Platform List](https://developer.mlytics.com/reference/get_api-v2-zones-domain-selectable-platforms-1.md): This call fetches details of platforms bound to the domain and shows if platform can be selected in the decisive engine. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 100 requests/min - [Update Platform](https://developer.mlytics.com/reference/patch_api-v2-zones-domain-platforms-platform-name-type-platform-type-1.md): This call updates configuration of a specific platform for the domain. You can update platform *domain* and switch *enable* status through this API. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 60 requests/min - [List All Power-Up Addons](https://developer.mlytics.com/reference/get_api-v2-powerup-addon-1.md): This call returns a list of power-up addons. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 100 requests/min - [Install Power-Up Addon](https://developer.mlytics.com/reference/post_api-v2-zones-domain-addons-1.md): This call installs a power-up addon for the domain. Noted that the operation of installing a power-up addon is *asynchronous*, and the creation of the associated platform might take a while. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 5 requests/min - [Uninstall Power-Up Addon](https://developer.mlytics.com/reference/delete_api-v2-zones-domain-addons-addonid-1.md): This call removes a power-up addon for the domain. Noted that the operation of uninstalling a power-up addon is *asynchronous*, and the removal of the associated platform might take a while. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 5 requests/min - [Get All Purges](https://developer.mlytics.com/reference/get_api-v2-zones-domain-purges-1.md): This call fetches details about the all purges in the domain. The response will contain an array `purges` object which would be a list of all the cache along with their details. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 100 requests/min - [Create Purge](https://developer.mlytics.com/reference/post_api-v2-zones-domain-purges-1.md): Create the domain purge You may enter up to 10 paths for each purge. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 5 requests/min - [Get Domain Routing Config](https://developer.mlytics.com/reference/get_api-v2-decisive-zones-domain.md): This call returns the general routing configuration for a specific domain. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 100 requests/min - [Update Domain Routing Config](https://developer.mlytics.com/reference/patch_api-v2-decisive-zones-domain.md): This call updates the routing configuration for a specific domain. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 5 requests/min - [Get Strategy Profiles](https://developer.mlytics.com/reference/get_api-v2-decisive-strategyprofiles.md): This call returns a list of strategy profiles. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 100 requests/min - [Get Strategy List of a Domain](https://developer.mlytics.com/reference/get_api-v2-decisive-zones-domain-strategies.md): This call returns a list of strategies configured for a specific domain. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 100 requests/min - [Create New Routing Strategy for A Domain](https://developer.mlytics.com/reference/post_api-v2-decisive-zones-domain-strategies.md): This call creates a new strategy for a specific domain. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 5 requests/min - [Get Routing Strategy Detail](https://developer.mlytics.com/reference/get_api-v2-decisive-zones-domain-strategies-strategy-id.md): This call returns detailed information about a specific strategy. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 100 requests/min - [Update A Strategy](https://developer.mlytics.com/reference/patch_api-v2-decisive-zones-domain-strategies-strategy-id.md): This call updates the settings for a specific strategy. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 5 requests/min - [Delete A Strategy](https://developer.mlytics.com/reference/delete_api-v2-decisive-zones-domain-strategies-strategy-id.md): This call deletes a specific strategy. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 5 requests/min - [Change Strategy Priorities](https://developer.mlytics.com/reference/patch_api-v2-decisive-zones-domain-strategies-priority.md): This call changes the priorities of listed strategies (reorder). > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 5 requests/min - [List Web ACL](https://developer.mlytics.com/reference/get_api-v2-wafs-domain-access-control-acl-rule-type-acl-allow-list-type-1.md): This call returns a list of ACL (Access Control Lists). > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 100 requests/min - [Batch Create Web ACL](https://developer.mlytics.com/reference/post_api-v2-wafs-domain-access-control-acl-rule-type-acl-allow-list-type-1.md): This call creates Access Control Lists. You can create up to **500 rules** for each domain, allowlist and denylist combined. These rules will be applied across all CDNs. Learn more about Creating ACL rules. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 5 requests/min - [Batch Delete Web ACL](https://developer.mlytics.com/reference/delete_api-v2-wafs-domain-access-control-acl-rule-type-acl-allow-list-type-1.md): This call deletes Access Control Lists. Learn more about Creating ACL rules. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 5 requests/min - [Get Property](https://developer.mlytics.com/reference/get_api-v2-wafs-properties-property-type-1.md): This call returns a list of *properties* that are used to define rules for various actions and conditions. The example response, **List of edge rule property,** showcases a filter called `ARGS:match` that is labeled as "Parameter in REQUEST" on Portal, which offers six different operators, such as `contains` and `within`, can be applied as conditions in rules. When a rule condition is met, various actions can be triggered. For more information on rules and their usage, refer to the following resources: - Definitions for operators - Set up HTTP header rewrite rule (edge rule) - Set up firewall rule actions > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 100 requests/min - [List Edge Rules](https://developer.mlytics.com/reference/get_api-v2-wafs-domain-edge-rules-1.md): This call returns a list of edge rule (HTTP header rewrite). The **edge rule** is used to modify HTTP request and response headers. When the request matches your set conditions, you can perform actions such as *redirect*, *header replacement*, or *force HTTPS*. Learn more at Set up HTTP header rewrite rule (edge rule). > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 100 requests/min - [Create an Edge Rule](https://developer.mlytics.com/reference/post_api-v2-wafs-domain-edge-rules-1.md): This call creates a new edge rule (HTTP header rewrite). For more information on rules and their usage, refer to the following resources: - Set up HTTP header rewrite rule (edge rule) > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 5 requests/min - [Batch Update Edge Rules](https://developer.mlytics.com/reference/put_api-v2-wafs-domain-edge-rules-1.md): This call updates edge rules (HTTP header rewrite) in a batch. This request will be handled as a single transaction. All rules must exist and the priority must not repeat. If there is an error, the entire operation fails. Assume that the domain `api-example.references.net` has 4 following rules: ```json [ { "id": "e4ae13d5-7ba5-46d2-a853-fefc24921f9e", "name": "alpha", "priority": 1, }, { "id": "0bd5136b-3911-48e0-9ffe-f0efa686c0df", "name": "beta", "priority": 2, }, { "id": "1011e7e2-7518-40e5-abe6-66cf254a022f", "name": "gamma", "priority": 3, }, { "id": "2fca4dc6-5f14-4271-babe-a11a28b4f982", "name": "delta", "priority": 4, } ] ``` The request example **Swap rule priority** shows how to swap priority for the rule named "beta" and "delta". > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 5 requests/min - [Update an Edge Rule](https://developer.mlytics.com/reference/patch_api-v2-wafs-domain-edge-rules-rule-id-1.md): This call updates an edge rule (HTTP header rewrite). > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 5 requests/min - [Delete an Edge Rule](https://developer.mlytics.com/reference/delete_api-v2-wafs-domain-edge-rules-rule-id-1.md): This call will delete an edge rule (HTTP header rewrite). > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 5 requests/min - [List Firewall Rule](https://developer.mlytics.com/reference/get_api-v2-wafs-domain-firewall-rules-1.md): This call returns a list of firewall rule. The **firewall rule** is used to protect the origin server by inspecting the traffic and taking action on the request. When the request matches your set conditions, you can either *block*, *pass*, *rate-limit*, *block and redirect*, and *challenge* that request. Learn more about firewall rules: - How to set up firewall rules? - Definitions for operators - Managing firewall rules > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 100 requests/min - [Create a Firewall Rule](https://developer.mlytics.com/reference/post_api-v2-wafs-domain-firewall-rules-1.md): This call creates a new firewall rule. For more information on rules and their usage, refer to the following resources: - How to set up firewall rules? - Definitions for operators - Managing firewall rules > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 5 requests/min - [Batch Update Firewall Rules](https://developer.mlytics.com/reference/put_api-v2-wafs-domain-firewall-rules-1.md): This call updates firewall rules in a batch. This request will be handled as a single transaction. All rules must exist and the priority must not repeat. If there is an error, the entire operation fails. Assume that the domain `api-example.references.net` has 4 following rules: ```json [ { "id": "e4ae13d5-7ba5-46d2-a853-fefc24921f9e", "name": "alpha", "priority": 1, }, { "id": "0bd5136b-3911-48e0-9ffe-f0efa686c0df", "name": "beta", "priority": 2, }, { "id": "1011e7e2-7518-40e5-abe6-66cf254a022f", "name": "gamma", "priority": 3, }, { "id": "2fca4dc6-5f14-4271-babe-a11a28b4f982", "name": "delta", "priority": 4, } ] ``` The request example **Swap rule priority** shows how to swap priority for the rule named "beta" and "delta". > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 5 requests/min - [Update a Firewall Rule](https://developer.mlytics.com/reference/patch_api-v2-wafs-domain-firewall-rules-rule-id-1.md): This call updates an firewall rule. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 5 requests/min - [Delete a Firewall Rule](https://developer.mlytics.com/reference/delete_api-v2-wafs-domain-firewall-rules-rule-id-1.md): This call will delete an firewall rule. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 5 requests/min - [Switch Advanced Cache Rules](https://developer.mlytics.com/reference/put_api-v2-wafs-domain-advanced-cache-enable-1.md): This call enables/disables advanced cache rule. Note that when *advanced cache rules* are `enabled`, the following CDN will automatically **deactivate** its *cache rules* to avoid conflicts. - GMA - CN2 > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 5 requests/min - [List Advanced Cache Rules](https://developer.mlytics.com/reference/get_api-v2-wafs-domain-advanced-cache-rules-1.md): This call returns a list of advanced cache rule. The feature is similar to the **Site Settings > Cache**, but **advanced cache rule** offers the capability to configure complex conditions. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 100 requests/min - [Create a Advanced Cache Rule](https://developer.mlytics.com/reference/post_api-v2-wafs-domain-advanced-cache-rules-1.md): This call creates a new advanced cache rule. The feature is similar to the **Site Settings > Cache**, but **advanced cache rule** offers the capability to configure complex conditions. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 5 requests/min - [Batch Update Advanced Cache Rules](https://developer.mlytics.com/reference/put_api-v2-wafs-domain-advanced-cache-rules-1.md): This call updates advanced cache rules in a batch. This request will be handled as a single transaction. All rules must exist and the priority must not repeat. If there is an error, the entire operation fails. Assume that the domain `api-example.references.net` has 4 following rules: ```json [ { "id": "e4ae13d5-7ba5-46d2-a853-fefc24921f9e", "name": "alpha", "priority": 1, }, { "id": "0bd5136b-3911-48e0-9ffe-f0efa686c0df", "name": "beta", "priority": 2, }, { "id": "1011e7e2-7518-40e5-abe6-66cf254a022f", "name": "gamma", "priority": 3, }, { "id": "2fca4dc6-5f14-4271-babe-a11a28b4f982", "name": "delta", "priority": 4, } ] ``` The request example **Swap rule priority** shows how to swap priority for the rule named "beta" and "delta". > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 5 requests/min - [Update a Advanced Cache Rule](https://developer.mlytics.com/reference/patch_api-v2-wafs-domain-advanced-cache-rules-rule-id-1.md): This call updates an advanced cache rule. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 5 requests/min - [Delete a Advanced Cache Rule](https://developer.mlytics.com/reference/delete_api-v2-wafs-domain-advanced-cache-rules-rule-id-1.md): This call will delete an advanced cache rule. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 5 requests/min - [Get DDoS & Bot Management](https://developer.mlytics.com/reference/get_api-v2-wafs-domain-ddos-1.md): This call returns configuration of DDoS (distributed denial-of-service) attack protection and Bot Management for a domain. Learn more about bot management: - What does 'Bot management' do? - How to block rogue crawlers and bad bots? - How to block security/vulnerability scanners? - What is 'Browser integrity check'? > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 100 requests/min - [Update DDoS & Bot Management](https://developer.mlytics.com/reference/patch_api-v2-wafs-domain-ddos-1.md): This call updates configuration of DDoS (distributed denial-of-service) attack protection and Bot Management for a domain. Learn more about bot management: - What does 'Bot management' do? - How to block rogue crawlers and bad bots? - How to block security/vulnerability scanners? - What is 'Browser integrity check'? > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 5 requests/min - [Get All Categories](https://developer.mlytics.com/reference/get_api-v2-vod-transcoder-vod-category-1.md): This call returns a list of all Stream Asset categories. A category is used to attach to the *stream asset* for the identification or give other information. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 60 requests/min - [Create New Categories](https://developer.mlytics.com/reference/post_api-v2-vod-transcoder-vod-category-1.md): This call creates categories in bulk in a single request. A category is used to attach to the *stream asset* for the identification or give other information. Maximum number of categories you can create: **10**. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 30 requests/min - [Update Category](https://developer.mlytics.com/reference/put_api-v2-vod-transcoder-vod-category-category-id-1.md): This call updates category name. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 30 requests/min - [Delete Category](https://developer.mlytics.com/reference/delete_api-v2-vod-transcoder-vod-category-category-id-1.md): This call deletes a category. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 30 requests/min - [Bulk Override All Categories](https://developer.mlytics.com/reference/put_api-v2-vod-transcoder-vod-asset-category-1.md): Bulk override all categories of multiple *stream assets*. If the field categories in payload is `[]`, the stream asset **will remove all** of its categories. If the category does not exist, it will create a new one and attach it to the stream assets. Maximum number of categories you can create: **10**. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 30 requests/min - [List Stream Assets](https://developer.mlytics.com/reference/get_api-v2-vod-transcoder-vod-asset.md): This call returns a list of Stream Asset (a.k.a. VOD, video on demand). Learn more about stream assets. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 60 requests/min - [Get Stream Asset](https://developer.mlytics.com/reference/get_api-v2-vod-transcoder-vod-asset-asset-id-1.md): This call returns a Stream Asset (a.k.a. VOD, video on demand). Learn more about stream assets. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 30 requests/min - [Update Stream Asset](https://developer.mlytics.com/reference/patch_api-v2-vod-transcoder-vod-asset-asset-id.md): This call updates a Stream Asset (a.k.a. VOD, video on demand). Learn more about stream assets. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 30 requests/min - [Delete Stream Asset](https://developer.mlytics.com/reference/delete_api-v2-vod-transcoder-vod-asset-asset-id.md): This call deletes a Stream Asset (a.k.a. VOD, video on demand). Learn more about stream assets. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 30 requests/min - [Upload Stream Assets](https://developer.mlytics.com/reference/post_api-v2-vod-transcoder-vod-presigned-url-1.md): This call returns a list of **pre-signed URLs** for incoming video uploading files (stream asset). ## 1. Generate Pre-signed URL The **pre-signed URL** is an URL that grants you a limited time of access to upload the object. You can use the pre-signed URL multiple times, but the file will be **replaced** by the latest upload request. You must start the action **before** the expiration date and time. ## 2. Use PUT method to upload file After created the pre-signed URL, you can use **PUT** method to upload your file. Check the following `curl` example. ```curl curl -i \ --url 'replace_with_your_presigned_url' \ -T 'your_file_path' ``` Learn more about how to upload asset programmatically. Learn more about stream assets. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 30 requests/min - [Update Video of Stream Asset](https://developer.mlytics.com/reference/post_api-v2-vod-transcoder-vod-asset-asset-id-presigned-url-1.md): This call returns a new **pre-signed URL** for updating video of a stream asset. ## Use PUT method to upload file with new **pre-signed URL** After created the **pre-signed** URL, you can use **PUT** method to upload your file to overwrite the original video. Check the following `curl` example. ```curl curl -i \ --url 'replace_with_your_presigned_url' \ -T 'your_file_path' ``` Learn more about how to upload asset programmatically. Learn more about stream assets. - [List All Transcoder Scenarios](https://developer.mlytics.com/reference/get_api-v2-stream-controller-transcoder-scenario-1.md): This call returns a list of transcoder scenarios for creating application. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 100 requests/min - [Create Application](https://developer.mlytics.com/reference/post_api-v2-stream-controller-app-1.md): This call creates a live stream application. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 5 requests/min - [List Applications](https://developer.mlytics.com/reference/get_api-v2-stream-controller-app-1.md): This call list live stream applications. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 100 requests/min - [Get Application Detail](https://developer.mlytics.com/reference/get_api-v2-stream-controller-app-app-name-1.md): This call returns specific detail of an application. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 100 requests/min - [Update Application](https://developer.mlytics.com/reference/patch_api-v2-stream-controller-app-app-name-1.md): This call update an application. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 5 requests/min - [CDN edge report](https://developer.mlytics.com/reference/get_api-v2-analytics-cdnreport-report-edge-1.md): Returns a list of CDN edge report records. > One of the 'domain', 'stream_id', 'site_id' or 'org_id' parameters must be present > Rate Limit: 60 requests/min - [List All Available Dimensions](https://developer.mlytics.com/reference/get_api-v2-analytics-stream-data-dimensions-1.md): Dimensions are the types of metadata that can be collected for a video view. This API allows you to get a list of available dimensions. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 100 requests/min - [List Dimension Values](https://developer.mlytics.com/reference/get_api-v2-analytics-stream-data-dimensions-dimension-name-1.md): Lists the values for a dimension along with a total count of related views. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 60 requests/min - [List All Available Metrics](https://developer.mlytics.com/reference/get_api-v2-analytics-stream-data-metrics-1.md): Historical metrics provide a collection of dimensions that can be used to aggregate quality of experience based on view metadata. Now supports two kinds of metrics, e.g. `insights` and `timeseries`. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 100 requests/min - [List Insights](https://developer.mlytics.com/reference/get_api-v2-analytics-stream-data-metrics-insights-insight-metric-1.md): Returns a list of insights for a specific metric. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 60 requests/min - [List Timeseries Data](https://developer.mlytics.com/reference/get_api-v2-analytics-stream-data-metrics-timeseries-timeseries-metric-1.md): Returns a list of timeseries data for a specific metric. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 60 requests/min - [Get Engagement Data](https://developer.mlytics.com/reference/get_api-v2-analytics-stream-data-metrics-engagement-1.md): Returns engagement data of what your audience is watching. > Requires API Key as `apikey` request header or `apikey` URL query parameter. > Rate Limit: 60 requests/min ## Recipes - [How to create a Routing Strategy (Mlytics API)](https://developer.mlytics.com/recipes/how-to-create-a-routing-strategy-mlytics-api.md) - [How to Install Custom CDN (Mlytics API)](https://developer.mlytics.com/recipes/power-up-addon-installation-recipe-mlytics-api-shell.md)