{"_id":"56c41c1ac4796b0d007ef042","version":{"_id":"56bc8e689afb8b0d00d62dd2","project":"56bc8e679afb8b0d00d62dcf","__v":18,"createdAt":"2016-02-11T13:36:40.146Z","releaseDate":"2016-02-11T13:36:40.146Z","categories":["56bc8e689afb8b0d00d62dd3","56c3c837bc41330d009f25ed","56c3c83e521f350d00d348eb","56c3c8452d97560d00e23cd8","56c3c85234df460d00c2beb8","56c4180d70187b17005f43b4","56c418162d97560d00e23cf6","56c4181cc4796b0d007ef039","56c4182370187b17005f43b5","56c418292e75e01700986052","56c4183328bd680d005e7ac6","56c4183bbb64720d00552b88","56c418414040602b0064cea0","56c4184754b6030d00ec29a1","56c4184c28bd680d005e7ac7","56c4185370187b17005f43b6","56c4185b6063071700500cfc","582a98b6f8c0a0190053d7a5"],"is_deprecated":false,"is_hidden":false,"is_beta":false,"is_stable":true,"codename":"","version_clean":"1.0.0","version":"1.0"},"parentDoc":null,"project":"56bc8e679afb8b0d00d62dcf","user":"56b98db7bb36440d0001f492","__v":4,"category":{"_id":"56c4182370187b17005f43b5","project":"56bc8e679afb8b0d00d62dcf","pages":["56c41b0dd1f6d91700d36972","56c41b4dc0c4630d004e86bc","56c41b57bb64720d00552b8f","56c41b892e75e01700986055","56c41b9548213b1700af6e2c","56c41ba72d97560d00e23cfb","56c41bb870187b17005f43bb","56c41bc6e1e4190d003429d5","56c41bd4c0c4630d004e86be","56c41be728bd680d005e7ac8","56c41c03c4796b0d007ef040","56c41c0d106c12170020dba0","56c41c1ac4796b0d007ef042","56c41c362e75e01700986057","56c41c413d30210d00ea851b","56c41c50bb64720d00552b91","56c41c5c34df460d00c2bed3","56c41c66c0c4630d004e86c0"],"version":"56bc8e689afb8b0d00d62dd2","__v":18,"sync":{"url":"","isSync":false},"reference":true,"createdAt":"2016-02-17T06:50:11.715Z","from_sync":false,"order":7,"slug":"media-and-files","title":"Media and Files"},"updates":[],"next":{"pages":[],"description":""},"createdAt":"2016-02-17T07:07:06.326Z","link_external":false,"link_url":"","githubsync":"","sync_unique":"","hidden":false,"api":{"results":{"codes":[]},"settings":"","auth":"required","params":[],"url":""},"isReference":false,"order":12,"body":"[block:api-header]\n{\n  \"type\": \"post\",\n  \"title\": \"/blobs\"\n}\n[/block]\nUploads binary data on behalf of the current user. An individual blob is limited to 100MB.\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"var options = {\\n\\tdata: \\\"{binary picture data}\\\",\\n\\tfriendlyName: \\\"Family Picnic\\\",\\n\\tlocation: \\\"47.1, -121.292\\\",\\n\\ttag: \\\"Some useful tag\\\",\\n\\treadPermissions: \\\"App\\\",\\n\\twritePermissions: \\\"User\\\"\\n};\\n\\nBuddy.post('/blobs',\\n\\t\\toptions,\\n\\t\\tfunction(err, result) {\\n\\t\\t\\t \\n\\t\\t\\tif (result.success) {\\n\\t\\t\\t\\t// Do something with the result!\\n\\t\\t\\t} else { \\n\\t\\t\\t\\t// Otherwise log the error\\n\\t\\t\\t\\tconsole.log(err); \\n\\t\\t\\t} \\n\\t\\t}\\n\\t);\",\n      \"language\": \"javascript\"\n    },\n    {\n      \"code\": \"NSDictionary *params = :::at:::{\\n\\t\\t\\[email protected]\\\"data\\\": myBpFile,\\n\\t\\t\\[email protected]\\\"friendlyName\\\": @\\\"Family Picnic\\\",\\n\\t\\t\\[email protected]\\\"location\\\": BPCoordinateMake(47.1, -121.292),\\n\\t\\t\\[email protected]\\\"tag\\\": @\\\"Some useful tag\\\",\\n\\t\\t\\[email protected]\\\"readPermissions\\\": @\\\"App\\\",\\n\\t\\t\\[email protected]\\\"writePermissions\\\": @\\\"User\\\"\\n\\t\\t};\\n\\n[Buddy POST:@\\\"/blobs\\\" parameters:params class:[BPBlob class] callback:^(id obj, NSError *error) {\\n\\t// Your callback code here\\n}];\",\n      \"language\": \"objectivec\",\n      \"name\": \"iOS\"\n    },\n    {\n      \"code\": \"Map<String, Object> parameters = new HashMap<String, Object>();\\nparameters.put(\\\"data\\\", new BuddyFile(new File(yourFile), fileType));\\nparameters.put(\\\"friendlyName\\\", \\\"Family Picnic\\\");\\nparameters.put(\\\"location\\\", myLocation);\\nparameters.put(\\\"tag\\\", \\\"Some useful tag\\\");\\nparameters.put(\\\"readPermissions\\\", \\\"App\\\");\\nparameters.put(\\\"writePermissions\\\", \\\"User\\\");\\n\\nBuddy.<Blob>post(\\\"/blobs\\\", parameters, new BuddyCallback<Blob>(Blob.class) {\\n\\[email protected]\\n\\tpublic void completed(BuddyResult<Blob> result) {\\n\\t\\t// Your callback code here\\n\\t}\\n});\",\n      \"language\": \"java\",\n      \"name\": \"Android\"\n    },\n    {\n      \"code\": \"var options = new {\\n\\t\\t\\tdata = new BuddyFile(myFile.AsStream(), \\\"My File Name\\\", fileType),\\n\\t\\t\\tfriendlyName = \\\"Family Picnic\\\",\\n\\t\\t\\tlocation = new BuddyGeoLocation(47.1, -122.3),\\n\\t\\t\\ttag = \\\"Some useful tag\\\",\\n\\t\\t\\treadPermissions = \\\"App\\\",\\n\\t\\t\\twritePermissions = \\\"User\\\"\\n\\t\\t};\\n\\nvar result = await Buddy.PostAsync<Blob>(\\\"/blobs\\\", options);\",\n      \"language\": \"csharp\",\n      \"name\": \".NET\"\n    }\n  ],\n  \"sidebar\": true\n}\n[/block]\n###Body Parameters\n\nThese parameters should be specified as part of the request body.\n[block:parameters]\n{\n  \"data\": {\n    \"0-0\": \"data\",\n    \"1-0\": \"friendlyName\",\n    \"2-0\": \"location\",\n    \"3-0\": \"tag\",\n    \"4-0\": \"readPermissions\",\n    \"5-0\": \"writePermissions\",\n    \"0-1\": \"The blob data to be uploaded.\",\n    \"1-1\": \"A human readable name for the blob.\",\n    \"2-1\": \"A location value, passed as a string in the format \\\"{latitude},{longitude}\\\" (e.g. \\\"47.1,-121.292\\\").\",\n    \"3-1\": \"A string value to attach to this object. This value will be returned with the object as a property called tag.\",\n    \"4-1\": \"Specifies who can view this item. Values are User, only the user that created the value can view it, or App, meaning any app code can view the value.\",\n    \"5-1\": \"Specifies who can modify this item. Values are User, only the user that created the value can view it and modify it, or App, meaning any app code can view and modify the value.\",\n    \"0-2\": \"file\",\n    \"1-2\": \"string\",\n    \"2-2\": \"string\",\n    \"3-2\": \"string\",\n    \"4-2\": \"string\",\n    \"5-2\": \"string\",\n    \"0-3\": \"Required\",\n    \"1-3\": \"Optional\",\n    \"2-3\": \"Optional\",\n    \"3-3\": \"Optional\",\n    \"4-3\": \"Optional\",\n    \"5-3\": \"Optional\"\n  },\n  \"cols\": 4,\n  \"rows\": 6\n}\n[/block]\n\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"{\\n  \\\"status\\\": 201,\\n  \\\"result\\\": {\\n    \\\"friendlyName\\\": \\\"Test blob\\\",\\n    \\\"contentType\\\": \\\"application/x-msdownload\\\",\\n    \\\"contentLength\\\": 113,\\n    \\\"signedUrl\\\": \\\"[someURL]\\\",\\n    \\\"id\\\": \\\"bbc.fvhbbPbJBdwp\\\",\\n    \\\"location\\\": {\\n      \\\"lat\\\": 42,\\n      \\\"lng\\\": 120\\n    },\\n    \\\"created\\\": \\\"2014-07-14T16:12:09.147Z\\\",\\n    \\\"lastModified\\\": \\\"2014-07-14T16:12:09.297Z\\\"\\n  },\\n  \\\"request_id\\\": \\\"53c40159b32fad0d1cecbd02\\\",\\n  \\\"success\\\": true\\n} \",\n      \"language\": \"json\",\n      \"name\": \"Response\"\n    }\n  ],\n  \"sidebar\": true\n}\n[/block]","excerpt":"","slug":"create-blob","type":"basic","title":"Create Blob"}
[block:api-header] { "type": "post", "title": "/blobs" } [/block] Uploads binary data on behalf of the current user. An individual blob is limited to 100MB. [block:code] { "codes": [ { "code": "var options = {\n\tdata: \"{binary picture data}\",\n\tfriendlyName: \"Family Picnic\",\n\tlocation: \"47.1, -121.292\",\n\ttag: \"Some useful tag\",\n\treadPermissions: \"App\",\n\twritePermissions: \"User\"\n};\n\nBuddy.post('/blobs',\n\t\toptions,\n\t\tfunction(err, result) {\n\t\t\t \n\t\t\tif (result.success) {\n\t\t\t\t// Do something with the result!\n\t\t\t} else { \n\t\t\t\t// Otherwise log the error\n\t\t\t\tconsole.log(err); \n\t\t\t} \n\t\t}\n\t);", "language": "javascript" }, { "code": "NSDictionary *params = @{\n\t\t\[email protected]\"data\": myBpFile,\n\t\t\[email protected]\"friendlyName\": @\"Family Picnic\",\n\t\t\[email protected]\"location\": BPCoordinateMake(47.1, -121.292),\n\t\t\[email protected]\"tag\": @\"Some useful tag\",\n\t\t\[email protected]\"readPermissions\": @\"App\",\n\t\t\[email protected]\"writePermissions\": @\"User\"\n\t\t};\n\n[Buddy POST:@\"/blobs\" parameters:params class:[BPBlob class] callback:^(id obj, NSError *error) {\n\t// Your callback code here\n}];", "language": "objectivec", "name": "iOS" }, { "code": "Map<String, Object> parameters = new HashMap<String, Object>();\nparameters.put(\"data\", new BuddyFile(new File(yourFile), fileType));\nparameters.put(\"friendlyName\", \"Family Picnic\");\nparameters.put(\"location\", myLocation);\nparameters.put(\"tag\", \"Some useful tag\");\nparameters.put(\"readPermissions\", \"App\");\nparameters.put(\"writePermissions\", \"User\");\n\nBuddy.<Blob>post(\"/blobs\", parameters, new BuddyCallback<Blob>(Blob.class) {\n\[email protected]\n\tpublic void completed(BuddyResult<Blob> result) {\n\t\t// Your callback code here\n\t}\n});", "language": "java", "name": "Android" }, { "code": "var options = new {\n\t\t\tdata = new BuddyFile(myFile.AsStream(), \"My File Name\", fileType),\n\t\t\tfriendlyName = \"Family Picnic\",\n\t\t\tlocation = new BuddyGeoLocation(47.1, -122.3),\n\t\t\ttag = \"Some useful tag\",\n\t\t\treadPermissions = \"App\",\n\t\t\twritePermissions = \"User\"\n\t\t};\n\nvar result = await Buddy.PostAsync<Blob>(\"/blobs\", options);", "language": "csharp", "name": ".NET" } ], "sidebar": true } [/block] ###Body Parameters These parameters should be specified as part of the request body. [block:parameters] { "data": { "0-0": "data", "1-0": "friendlyName", "2-0": "location", "3-0": "tag", "4-0": "readPermissions", "5-0": "writePermissions", "0-1": "The blob data to be uploaded.", "1-1": "A human readable name for the blob.", "2-1": "A location value, passed as a string in the format \"{latitude},{longitude}\" (e.g. \"47.1,-121.292\").", "3-1": "A string value to attach to this object. This value will be returned with the object as a property called tag.", "4-1": "Specifies who can view this item. Values are User, only the user that created the value can view it, or App, meaning any app code can view the value.", "5-1": "Specifies who can modify this item. Values are User, only the user that created the value can view it and modify it, or App, meaning any app code can view and modify the value.", "0-2": "file", "1-2": "string", "2-2": "string", "3-2": "string", "4-2": "string", "5-2": "string", "0-3": "Required", "1-3": "Optional", "2-3": "Optional", "3-3": "Optional", "4-3": "Optional", "5-3": "Optional" }, "cols": 4, "rows": 6 } [/block] [block:code] { "codes": [ { "code": "{\n \"status\": 201,\n \"result\": {\n \"friendlyName\": \"Test blob\",\n \"contentType\": \"application/x-msdownload\",\n \"contentLength\": 113,\n \"signedUrl\": \"[someURL]\",\n \"id\": \"bbc.fvhbbPbJBdwp\",\n \"location\": {\n \"lat\": 42,\n \"lng\": 120\n },\n \"created\": \"2014-07-14T16:12:09.147Z\",\n \"lastModified\": \"2014-07-14T16:12:09.297Z\"\n },\n \"request_id\": \"53c40159b32fad0d1cecbd02\",\n \"success\": true\n} ", "language": "json", "name": "Response" } ], "sidebar": true } [/block]