> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://akamai.ferndocs.com/demo-apis/api/operation/design-issues/put-op-req-multi-type/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://akamai.ferndocs.com/_mcp/server. # Multi mime type PUT http://{hostname}/test-suite/v2/op-req-multi-type Content-Type: application/csv An operation accepting multiple mime types. Reference: https://akamai.ferndocs.com/demo-apis/api/operation/design-issues/put-op-req-multi-type ## Request ### Query parameters - `accountSwitchKey` (string, optional) — For customers who manage more than one account, this [runs the operation from another account](https://techdocs.akamai.com/developer/docs/manage-many-accounts-with-one-api-client). The Identity and Access Management API provides a [list of available account switch keys](https://techdocs.akamai.com/iam-api/reference/get-client-account-switch-keys). ### Body (application/csv) This endpoint expects a string. - `string` ## Response ### 204 Success ## Examples **Request** ```json "# Client Devices\nname,registered time,blacklisted,software,mac,reported state,reported time\nBOS-WP7XS,2020-08-13T20:20:58,false,Windows-3.2.0,02-00-4C-4F-4F-50,Health check failure,2020-08-17T18:03:42\nMacBook-Air.local,2020-08-15T02:54:44,false,Mac-3.2.0,98-01-A7-BF-AA-31,Other,2020-08-17T18:09:55\nLab-Mac-19818179159.local,2020-06-27T03:12:56,false,Mac-3.1.1,38-C9-86-3D-D0-E2,Other,2020-08-17T18:01:02\nJacks-MacBook-Pro.local,2020-08-15T02:09:04,false,Mac-3.2.0,18-65-90-DA-CB-9B,Other,2020-08-17T18:09:56\nDESKTOP-6BDEKKS,2020-08-17T15:31:20,false,Windows-3.2.0,00-0C-29-FD-77-4A,Other,2020-08-17T18:05:45\nWIN81-ENT-210,2020-06-22T19:26:14,false,Windows-3.1.1,00-0C-29-D5-22-87,Protected,2020-08-17T18:05:19" ``` **Response** ```json {} ``` **SDK Code** ```python import requests url = "http://{hostname}/test-suite/v2/op-req-multi-type" payload = "\"# Client Devices\\nname,registered time,blacklisted,software,mac,reported state,reported time\\nBOS-WP7XS,2020-08-13T20:20:58,false,Windows-3.2.0,02-00-4C-4F-4F-50,Health check failure,2020-08-17T18:03:42\\nMacBook-Air.local,2020-08-15T02:54:44,false,Mac-3.2.0,98-01-A7-BF-AA-31,Other,2020-08-17T18:09:55\\nLab-Mac-19818179159.local,2020-06-27T03:12:56,false,Mac-3.1.1,38-C9-86-3D-D0-E2,Other,2020-08-17T18:01:02\\nJacks-MacBook-Pro.local,2020-08-15T02:09:04,false,Mac-3.2.0,18-65-90-DA-CB-9B,Other,2020-08-17T18:09:56\\nDESKTOP-6BDEKKS,2020-08-17T15:31:20,false,Windows-3.2.0,00-0C-29-FD-77-4A,Other,2020-08-17T18:05:45\\nWIN81-ENT-210,2020-06-22T19:26:14,false,Windows-3.1.1,00-0C-29-D5-22-87,Protected,2020-08-17T18:05:19\"" headers = {"Content-Type": "application/csv"} response = requests.put(url, data=payload, headers=headers) print(response.json()) ``` ```javascript const url = 'http://{hostname}/test-suite/v2/op-req-multi-type'; const options = { method: 'PUT', headers: {'Content-Type': 'application/csv'}, body: '"# Client Devices\nname,registered time,blacklisted,software,mac,reported state,reported time\nBOS-WP7XS,2020-08-13T20:20:58,false,Windows-3.2.0,02-00-4C-4F-4F-50,Health check failure,2020-08-17T18:03:42\nMacBook-Air.local,2020-08-15T02:54:44,false,Mac-3.2.0,98-01-A7-BF-AA-31,Other,2020-08-17T18:09:55\nLab-Mac-19818179159.local,2020-06-27T03:12:56,false,Mac-3.1.1,38-C9-86-3D-D0-E2,Other,2020-08-17T18:01:02\nJacks-MacBook-Pro.local,2020-08-15T02:09:04,false,Mac-3.2.0,18-65-90-DA-CB-9B,Other,2020-08-17T18:09:56\nDESKTOP-6BDEKKS,2020-08-17T15:31:20,false,Windows-3.2.0,00-0C-29-FD-77-4A,Other,2020-08-17T18:05:45\nWIN81-ENT-210,2020-06-22T19:26:14,false,Windows-3.1.1,00-0C-29-D5-22-87,Protected,2020-08-17T18:05:19"' }; try { const response = await fetch(url, options); const data = await response.json(); console.log(data); } catch (error) { console.error(error); } ``` ```go package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "http://{hostname}/test-suite/v2/op-req-multi-type" payload := strings.NewReader("\"# Client Devices\\nname,registered time,blacklisted,software,mac,reported state,reported time\\nBOS-WP7XS,2020-08-13T20:20:58,false,Windows-3.2.0,02-00-4C-4F-4F-50,Health check failure,2020-08-17T18:03:42\\nMacBook-Air.local,2020-08-15T02:54:44,false,Mac-3.2.0,98-01-A7-BF-AA-31,Other,2020-08-17T18:09:55\\nLab-Mac-19818179159.local,2020-06-27T03:12:56,false,Mac-3.1.1,38-C9-86-3D-D0-E2,Other,2020-08-17T18:01:02\\nJacks-MacBook-Pro.local,2020-08-15T02:09:04,false,Mac-3.2.0,18-65-90-DA-CB-9B,Other,2020-08-17T18:09:56\\nDESKTOP-6BDEKKS,2020-08-17T15:31:20,false,Windows-3.2.0,00-0C-29-FD-77-4A,Other,2020-08-17T18:05:45\\nWIN81-ENT-210,2020-06-22T19:26:14,false,Windows-3.1.1,00-0C-29-D5-22-87,Protected,2020-08-17T18:05:19\"") req, _ := http.NewRequest("PUT", url, payload) req.Header.Add("Content-Type", "application/csv") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) } ``` ```ruby require 'uri' require 'net/http' url = URI("http://{hostname}/test-suite/v2/op-req-multi-type") http = Net::HTTP.new(url.host, url.port) request = Net::HTTP::Put.new(url) request["Content-Type"] = 'application/csv' request.body = "\"# Client Devices\\nname,registered time,blacklisted,software,mac,reported state,reported time\\nBOS-WP7XS,2020-08-13T20:20:58,false,Windows-3.2.0,02-00-4C-4F-4F-50,Health check failure,2020-08-17T18:03:42\\nMacBook-Air.local,2020-08-15T02:54:44,false,Mac-3.2.0,98-01-A7-BF-AA-31,Other,2020-08-17T18:09:55\\nLab-Mac-19818179159.local,2020-06-27T03:12:56,false,Mac-3.1.1,38-C9-86-3D-D0-E2,Other,2020-08-17T18:01:02\\nJacks-MacBook-Pro.local,2020-08-15T02:09:04,false,Mac-3.2.0,18-65-90-DA-CB-9B,Other,2020-08-17T18:09:56\\nDESKTOP-6BDEKKS,2020-08-17T15:31:20,false,Windows-3.2.0,00-0C-29-FD-77-4A,Other,2020-08-17T18:05:45\\nWIN81-ENT-210,2020-06-22T19:26:14,false,Windows-3.1.1,00-0C-29-D5-22-87,Protected,2020-08-17T18:05:19\"" response = http.request(request) puts response.read_body ``` ```java import com.mashape.unirest.http.HttpResponse; import com.mashape.unirest.http.Unirest; HttpResponse response = Unirest.put("http://{hostname}/test-suite/v2/op-req-multi-type") .header("Content-Type", "application/csv") .body("\"# Client Devices\\nname,registered time,blacklisted,software,mac,reported state,reported time\\nBOS-WP7XS,2020-08-13T20:20:58,false,Windows-3.2.0,02-00-4C-4F-4F-50,Health check failure,2020-08-17T18:03:42\\nMacBook-Air.local,2020-08-15T02:54:44,false,Mac-3.2.0,98-01-A7-BF-AA-31,Other,2020-08-17T18:09:55\\nLab-Mac-19818179159.local,2020-06-27T03:12:56,false,Mac-3.1.1,38-C9-86-3D-D0-E2,Other,2020-08-17T18:01:02\\nJacks-MacBook-Pro.local,2020-08-15T02:09:04,false,Mac-3.2.0,18-65-90-DA-CB-9B,Other,2020-08-17T18:09:56\\nDESKTOP-6BDEKKS,2020-08-17T15:31:20,false,Windows-3.2.0,00-0C-29-FD-77-4A,Other,2020-08-17T18:05:45\\nWIN81-ENT-210,2020-06-22T19:26:14,false,Windows-3.1.1,00-0C-29-D5-22-87,Protected,2020-08-17T18:05:19\"") .asString(); ``` ```php request('PUT', 'http://{hostname}/test-suite/v2/op-req-multi-type', [ 'body' => '"# Client Devices\\nname,registered time,blacklisted,software,mac,reported state,reported time\\nBOS-WP7XS,2020-08-13T20:20:58,false,Windows-3.2.0,02-00-4C-4F-4F-50,Health check failure,2020-08-17T18:03:42\\nMacBook-Air.local,2020-08-15T02:54:44,false,Mac-3.2.0,98-01-A7-BF-AA-31,Other,2020-08-17T18:09:55\\nLab-Mac-19818179159.local,2020-06-27T03:12:56,false,Mac-3.1.1,38-C9-86-3D-D0-E2,Other,2020-08-17T18:01:02\\nJacks-MacBook-Pro.local,2020-08-15T02:09:04,false,Mac-3.2.0,18-65-90-DA-CB-9B,Other,2020-08-17T18:09:56\\nDESKTOP-6BDEKKS,2020-08-17T15:31:20,false,Windows-3.2.0,00-0C-29-FD-77-4A,Other,2020-08-17T18:05:45\\nWIN81-ENT-210,2020-06-22T19:26:14,false,Windows-3.1.1,00-0C-29-D5-22-87,Protected,2020-08-17T18:05:19"', 'headers' => [ 'Content-Type' => 'application/csv', ], ]); echo $response->getBody(); ``` ```csharp using RestSharp; var client = new RestClient("http://{hostname}/test-suite/v2/op-req-multi-type"); var request = new RestRequest(Method.PUT); request.AddHeader("Content-Type", "application/csv"); request.AddParameter("application/csv", "\"# Client Devices\\nname,registered time,blacklisted,software,mac,reported state,reported time\\nBOS-WP7XS,2020-08-13T20:20:58,false,Windows-3.2.0,02-00-4C-4F-4F-50,Health check failure,2020-08-17T18:03:42\\nMacBook-Air.local,2020-08-15T02:54:44,false,Mac-3.2.0,98-01-A7-BF-AA-31,Other,2020-08-17T18:09:55\\nLab-Mac-19818179159.local,2020-06-27T03:12:56,false,Mac-3.1.1,38-C9-86-3D-D0-E2,Other,2020-08-17T18:01:02\\nJacks-MacBook-Pro.local,2020-08-15T02:09:04,false,Mac-3.2.0,18-65-90-DA-CB-9B,Other,2020-08-17T18:09:56\\nDESKTOP-6BDEKKS,2020-08-17T15:31:20,false,Windows-3.2.0,00-0C-29-FD-77-4A,Other,2020-08-17T18:05:45\\nWIN81-ENT-210,2020-06-22T19:26:14,false,Windows-3.1.1,00-0C-29-D5-22-87,Protected,2020-08-17T18:05:19\"", ParameterType.RequestBody); IRestResponse response = client.Execute(request); ``` ```swift import Foundation let headers = ["Content-Type": "application/csv"] let postData = NSData(data: ""# Client Devices\nname,registered time,blacklisted,software,mac,reported state,reported time\nBOS-WP7XS,2020-08-13T20:20:58,false,Windows-3.2.0,02-00-4C-4F-4F-50,Health check failure,2020-08-17T18:03:42\nMacBook-Air.local,2020-08-15T02:54:44,false,Mac-3.2.0,98-01-A7-BF-AA-31,Other,2020-08-17T18:09:55\nLab-Mac-19818179159.local,2020-06-27T03:12:56,false,Mac-3.1.1,38-C9-86-3D-D0-E2,Other,2020-08-17T18:01:02\nJacks-MacBook-Pro.local,2020-08-15T02:09:04,false,Mac-3.2.0,18-65-90-DA-CB-9B,Other,2020-08-17T18:09:56\nDESKTOP-6BDEKKS,2020-08-17T15:31:20,false,Windows-3.2.0,00-0C-29-FD-77-4A,Other,2020-08-17T18:05:45\nWIN81-ENT-210,2020-06-22T19:26:14,false,Windows-3.1.1,00-0C-29-D5-22-87,Protected,2020-08-17T18:05:19"".data(using: String.Encoding.utf8)!) let request = NSMutableURLRequest(url: NSURL(string: "http://{hostname}/test-suite/v2/op-req-multi-type")! as URL, cachePolicy: .useProtocolCachePolicy, timeoutInterval: 10.0) request.httpMethod = "PUT" request.allHTTPHeaderFields = headers request.httpBody = postData as Data 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() ```