راهنمای برنامه نویسان پارسااسپیس

به راهنمای برنامه نویسان پارسا اسپیس خوش آمدید، در این راهنما شما تمامی اطلاعات مورد نیاز خود جهت استفاده از این وب سرویس را بدست می آورید.

درباره API پارسااسپیس

پارسا اسپیس با داشتن REST API امکان ارتباط برنامه های مختلف را فراهم کرده است.در این سرویس شما می توانید به آسانی و امنیت بالا در هر نقطه ای از وب و در هر زمانی اطلاعات خود را ذخیره و بازیابی نمائید. هدف این سرویس، فراهم کردن امکانات آپلود، کپی، انتقال و غیره برای توسعه دهندگان است. در این راهنما مفاهیم اصلی API Parsaspace و نحوه کار با آن توضیح داده شده است.

آدرس های وب سرویس

آدرس های وب سرویس پارسا اسپیس پارامترهایی از نوع Get , Post دریافت و پاسخ هایی از نوع json بر می گردانند.

آدرس (url) :

https://api.parsaspace.com/v1/

آدرس های وب سرویس :

Return Endpoint
لیست فایل ها https://api.parsaspace.com/v1/files/list
حذف فایل https://api.parsaspace.com/v1/files/remove
تغییر نام فایل https://api.parsaspace.com/v1/files/rename
انتقال فایل https://api.parsaspace.com/v1/files/move
کپی فایل https://api.parsaspace.com/v1/files/copy
ایجاد پوشه https://api.parsaspace.com/v1/files/createfolder
آپلود فایل https://api.parsaspace.com/v1/files/upload
ریموت آپلود فایل https://api.parsaspace.com/v1/remote/new
وضعیت ریموت آپلود فایل https://api.parsaspace.com/v1/remote/status
اعتبارسنجی کاربر

پارسا اسپیس برای اعتبارسنجی درخواست های API خود از توکن استفاده می کند. جهت استفاده از سرویس های پارسااسپیس باید مقدار TOKEN که از پنل کاربری خود دریافت می نمائید، در هر درخواست در قسمت Header به صورت Bearer TOKEN ارسال نمائید.

اعتبارسنجی کاربر :

این روش رایج ترین روش اعتبارسنجی می باشد. در این روش هر کاربر با استفاده از TOKEN ایجاد شده منحصر بفرد در پنل کاربری خود می تواند در سرویس پارسااسپیس اعتبارسنجی شود و از این سرویس استفاده نماید.

نوع TOKEN :

Bearer

نمونه :

curl -X POST "https://api.parsaspace.com/v1" \
--header "Authorization: Bearer <OAUTH2_ACCESS_TOKEN>"

خطای 401

خطای 401 یا "Authorization has been denied for this request." این خطا زمانی اتفاق می افتد که TOKEN نامعتبر باشد, ممکن است TOKEN تغییر کرده باشد . ممکن است کاربر TOKEN را غیرفعال یا رمز دسترسی به آن را تغییر داده باشد.

درخواست ها

تمامی درخواست ها باید شامل Authorization در قسمت Header و Domain در قسمت Body باشند.

پارامتر های ضروری :


Name Entry In Example Description
Authorization Headers Bearer yourtoken Token ایجاد شده در حساب کاربری شما در پارسااسپیس
Domain Body yourdomain آدرس وب سایت ایجاد شده شما در پارسااسپیس
پاسخ ها

ساختار :

تمامی پاسخ ها در قالب JSON می باشند. اطلاعات در خواستی در تگ RESULT گنجانده می شود. اگر درخواست شما پاسخی داشته باشد RESULT با SUCCESS مقدار دهی می شود. و در صورتی خطایی اتفاق بیافتد پاسخ به این صورت که RESULT با ERROR و MESSAGE با خطای اتفاق افتاده مقدار دهی می شود.

پاسخ موفق :

{"result": "success"} 

پاسخ با خطا :

{"result":"error","message":"access denied"}
مدیریت خطا

خطاها به شکل کد خطای استاندارد HTTP باز می گردند. اطلاعات اضافی از خطا در قالب JSON در قسمت Body درخواست بازگردانده می شود.

کد خطاهای استاندار (Status Code):


Code Result Description Message
200 success زمانی که درخواست با موفقیت به سرور ارسال و از سرور پاسخ دریافت نماید The request was successfull send to server and recieve result (The message is variable relative to the request)
400 error خطای 400 زمانی اتفاق می افتد حداقل یکی از پارامتر های ارسالی نامعتبر باششد bad request" "Your browser sent a request that this server could not understand
401 error خطای 401 یا "Authorization has been denied for this request." این خطا زمانی اتفاق می افتد که TOKEN نامعتبر باشد, ممکن است TOKEN تغییر کرده باشد . ممکن است کاربر TOKEN را غیرفعال یا رمز دسترسی به آن را تغییر داده باشد. Authorization has been denied for this request.
لیست فایل ها

لیست تمامی فایل ها و پوشه های مسیر مورد نظر کاربر را بر می گرداند.

آدرس (Url) :

https://api.parsaspace.com/v1/files/list

Method:

Post

اعتبارسنجی :

اعتبارسنجی کاربر

پارامترهای ارسالی :

Parameter Enty In Type Description Required
Authorization Headers Bearer yourtoken     Token ایجاد شده در حساب کاربری شما در پارسااسپیس اجباری
domain Body String آدرس وب سایت ایجاد شده شما در پارسااسپیس اجباری
path Body String آدرس (مسیر) فایل های ذخیره شده اختیاری

نمونه پاسخ دریافتی :

{"result":"success","list":[{"Name":"a.txt","IsFolder":false,"Size":8,"LastModified":"2016-11-07 09:49:24"},{"Name":"b.txt","IsFolder":false,"Size":3,"LastModified":"2016-11-07 09:49:24"}]}

نمونه کد زبان های برنامه نویسی :

$curl = curl_init();
curl_setopt_array($curl,
array(
CURLOPT_URL => "http://api.parsaspace.com/v1/files/list",
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST =>"POST",
CURLOPT_RETURNTRANSFER=>true,
CURLOPT_POSTFIELDS =>"path=Your-path&domain=Your-Domain&type=json",
CURLOPT_HTTPHEADER => array(
"authorization: Your-Token",
),
));
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err){
echo "cURL Error #:" $err;
}
else {
echo $response;
}
HttpResponse response = Unirest.post("http://api.parsaspace.com/v1/files/list")
.header("authorization", "Your-token")
.body("path=Your-Path &domain=Your-Doamin&type=json")
.asString();

var client = new RestClient("http://api.parsaspace.com/v1/files/list");
var request = new RestRequest(Method.POST);
request.AddHeader("authorization", "Bearer yourtoken");
request.AddHeader("content-type", "application/x-www-form-urlencoded");
request.AddParameter("domain", "yourdomain");
request.AddParameter("path", "/");
IRestResponse response = client.Execute(request);

import requests
url = "http://api.parsaspace.com/v1/files/list"
payload = "path=Your-Path &domain=Your-Domain &type=json"
headers = {
'authorization': "Your-Token",
}
response = requests.request("POST", url, data=payload, headers=headers)
print(response.text)

var request = require("request");
var options = { method: 'POST',
url:'http://api.parsaspace.com/v1/files/list',
headers:
{
authorization: '' },
form: { path: '/', domain: 'yourdomain', type: 'json' } };
request(options, function (error, response, body) {
if (error) throw new Error(error);
console.log(body);
});

نمونه پاسخ ( خطاها ) :

{
"result": "success",
"list":[{"List of files"}];
}

{
"result": "error",.
"message": "access denied"
}

{
"result": "error",
"message": Object already exist.",
}

{
"result": "error",
"message": "Authorization has been denied for this request.",
}

{
"result": "error",
"message": Sorry!Access denied",
}

حذف

حذف اطلاعات مسیر مورد نظر.

آدرس (Url):

https://api.parsaspace.com/v1/files/remove

Method:

Post

اعتبارسنجی :

اعتبارسنجی کاربر

پارامترهای ارسالی :

Parameter Enty In Type Description Required
Authorization Headers Bearer yourtoken     Token ایجاد شده در حساب کاربری شما در پارسااسپیس اجباری
domain Body String آدرس وب سایت ایجاد شده شما در پارسااسپیس اجباری
path Body String امکان حذف یک یا چند فایل به طور همزمان. فایل ها باید با (,) از هم جدا شوند.
مثال: /images/a.jpg,/music/1.mp3
اختیاری

نمونه پاسخ دریافتی :

{  "result": "success"}

نمونه کد زبان های برنامه نویسی :


$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => "http://api.parsaspace.com/v1/files/remove",
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_RETURNTRANSFER=>true,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "path=%2Ftest-4&domain=yourdomain&type=json",
CURLOPT_HTTPHEADER => array(
"authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1bmlxdWVfbmFtZSI6InNhZWlkbWFyb3VmaTY2QGd",
"cache-control: no-cache",
"content-type: application/x-www-form-urlencoded",
),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
HttpResponse response = Unirest.post("http://api.parsaspace.com/v1/files/remove")
.header("content-type", "application/x-www-form-urlencoded")
.header("authorization", "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1bmlxdWVfbmFtZSI6InNhZWlkbWFyb3VmaTY2QGd")
.body("path=%2Ftest-4&yourdomain&type=json")
.asString();
var client = new RestClient("http://api.parsaspace.com/v1/files/remove");
var request = new RestRequest(Method.POST);
request.AddHeader("authorization", Bearer yourtoken");
request.AddHeader("content-type", "application/x-www-form-urlencoded");
request.AddParameter("domain","yourdomain");
IRestResponse response = client.Execute(request);
import requests
url = "http://api.parsaspace.com/v1/files/remove"
payload = "path=%2Ftest-4&domain=yourdomain&type=json"
headers = {
'content-type': "application/x-www-form-urlencoded",
'authorization': "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1bmlxdWVfbmFtZSI6InNhZWlkbWFyb3VmaTY2QGd",
}
esponse = requests.request("POST", url, data=payload, headers=headers)
print(response.text)
var request = require("request");
var options = { method: 'POST',
url: 'http://api.parsaspace.com/v1/files/remove',
headers:
{
authorization: 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1bmlxdWVfbmFtZSI6InNhZWlkbWFyb3VmaTY2QGd' },
form: { path: '/test-4', domain: 'yourdomain', type: 'json' } };

request(options, function (error, response, body) {
if (error) throw new Error(error);
console.log(body);
});

نمونه پاسخ ( خطاها ) :

{
"result": "success",
}

{
"result": "error",
"message": "Object already exist.",
}

{
"result": "error",
"message": "Sorry!Access denied",
}

تغییر نام

تغییر نام فایل مورد نظر به نام دلخواه.

آدرس (Url) :

https://api.parsaspace.com/v1/files/rename

Method:

Post

اعتبارسنجی :

اعتبارسنجی کاربر

پارامترهای ارسالی :

Parameter Entry In Type Description Required
Authorization Headers Bearer yourtoken     Token ایجاد شده در حساب کاربری شما در پارسااسپیس اجباری
domain Body String آدرس وب سایت ایجاد شده شما در پارسااسپیس اجباری
source Body String آدرس فایلی که می خواهید تغییر نام دهید
مثال : /image/a.jpg
اجباری
destination Body String آدرس فایلی که می خواهید به آن تغییر نام دهید اجباری

نمونه پاسخ دریافتی :

{"result":"success"}

نمونه کد زبان های برنامه نویسی :


$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => "http://api.parsaspace.com/v1/files/rename",
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_RETURNTRANSFER=>true,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "source=%2Ftest-1&destination=%2Ftest-4&domain=yourdomain&type=json",
CURLOPT_HTTPHEADER => array(
"authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1bmlxdWVfbmFtZSI6InNhZWlkbWFyb3VmaTY2QGd",
"cache-control: no-cache",
"content-type: application/x-www-form-urlencoded",
),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
HttpResponse response = Unirest.post("http://api.parsaspace.com/v1/files/rename")
.header("content-type", "application/x-www-form-urlencoded")
.header("authorization", "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1bmlxdWVfbmFtZSI6InNhZWlkbWFyb3VmaTY2QGd")
.body("source=%2Ftest-1&destination=%2Ftest-4&domain=yourdomain&type=json")
.asString();
var client = new RestClient("http://api.parsaspace.com/v1/files/rename");
var request = new RestRequest(Method.POST);
request.AddHeader("authorization","Bearer yourtoken");
request.AddHeader("content-type", "application/x-www-form-urlencoded");
request.AddParameter("domain","yourdomain");
request.AddParameter("source","/");
request.AddParameter("destinition","/");
IRestResponse response = client.Execute(request);
import requests
url = "http://api.parsaspace.com/v1/files/rename"

payload = "source=%2Ftest-1&destination=%2Ftest-4&domain=yourdomain&type=json"
headers = {
'content-type': "application/x-www-form-urlencoded",
'authorization': "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1bmlxdWVfbmFtZSI6InNhZWlkbWFyb3VmaTY2QGd",
}

esponse = requests.request("POST", url, data=payload, headers=headers)

print(response.text)
var request = require("request");
var options = { method: 'POST',
url: 'http://api.parsaspace.com/v1/files/rename',
headers:
{
authorization: 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1bmlxdWVfbmFtZSI6InNhZWlkbWFyb3VmaTY2QGd',
'content-type': 'application/x-www-form-urlencoded' },
form:
{ source: '/test-1',
destination: '/test-4',
domain: 'yourdomain',
type: 'json' } };
request(options, function (error, response, body) {
if (error) throw new Error(error);

console.log(body);
});

نمونه پاسخ ( خطاها ) :

{
"result": "ok",
}


{
"result": "operation failed",
}

{
"result": "error",
"message": "Object already exist.",
}

{
"result": "error",
"message": "Sorry!Access denied",
}

انتقال

انتقال فایل مورد نظر به پوشه دلخواه.

آدرس (Url) :

https://api.parsaspace.com/v1/files/move

Method:

Post

اعتبارسنجی :

اعتبارسنجی کاربر

پارامترهای ارسالی :

Parameter Entry In Type Description Required
Authorization Headers Bearer yourtoken     Token ایجاد شده در حساب کاربری شما در پارسااسپیس اجباری
domain Body String Each user can have multiple file or website, آدرس وب سایت ایجاد شده شما در پارسااسپیس اجباری
source Body String امکان انتقال یک یا چند فایل به طور همزمان. فایل ها باید با (,) از هم جدا شوند.
مثال : /images/a.jpg,/music/1.mp3
اجباری
destination Body String آدرس مسیری که فایل ها به آن انتقال می یابند
مثال : /c
اجباری

نمونه پاسخ دریافتی :

{  "result": "success"}

نمونه کد زبان های برنامه نویسی :


$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => "http://api.parsaspace.com/v1/files/move",
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_RETURNTRANSFER=>true,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "source=%2Ftest-3&destination=%2Ftest-1%2Ftest-3&domain=yourdomain&type=json",
CURLOPT_HTTPHEADER => array(
"authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1bmlxdWVfbmFtZSI6InNhZWlkbWFyb3VmaTY2QGd",
"cache-control: no-cache",
"content-type: application/x-www-form-urlencoded",
),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
HttpResponse response = Unirest.post("http://api.parsaspace.com/v1/files/move")
.header("content-type", "application/x-www-form-urlencoded")
.header("authorization", "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1bmlxdWVfbmFtZSI6InNhZWlkbWFyb3VmaTY2QGd")
.body("source=%2Ftest-3&destination=%2Ftest-1%2Ftest-3&domain=yourdomain&type=json")
.asString();
var client = new RestClient("http://api.parsaspace.com/v1/files/rename");
var request = new RestRequest(Method.POST);
request.AddHeader("authorization","Bearer yourtoken");
request.AddHeader("content-type", "application/x-www-form-urlencoded");
request.AddParameter("domain","yourdomain");
request.AddParameter("source","/");
request.AddParameter("destinition","/");
IRestResponse response = client.Execute(request);
import requests

url = "http://api.parsaspace.com/v1/files/move"

payload = "source=%2Ftest-3&destination=%2Ftest-1%2Ftest-3&domain=yourdomain.com&type=json"
headers = {
'content-type': "application/x-www-form-urlencoded",
'authorization': "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1bmlxdWVfbmFtZSI6InNhZWlkbWFyb3VmaTY2QGd",
}

esponse = requests.request("POST", url, data=payload, headers=headers)

print(response.text)
var request = require("request");

var options = { method: 'POST',
url: 'http://api.parsaspace.com/v1/files/move',
headers:
{ authorization: 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1bmlxdWVfbmFtZSI6InNhZWlkbWFyb3VmaTY2QGd',
'content-type': 'application/x-www-form-urlencoded' },
form:
{ source: '/test-3',
destination: '/test-1/test-3',
domain: 'yourdomain',
type: 'json' } };

request(options, function (error, response, body) {
if (error) throw new Error(error);

console.log(body);
});

نمونه پاسخ ( خطاها ) :

{
"result": "success",
}

{
"result": "error",
"message": "Object already exist.",
}

{
"result": "error",
"message": "Sorry!Access denied",
}

کپی

کپی کردن فایل مورد نظر در پوشه دلخواه.

آدرس (Url) :

https://api.parsaspace.com/v1/files/Copy

Method:

Post

اعتبارسنجی :

اعتبارسنجی کاربر

پارامترهای ارسالی :

Parameter Entry In Type Description Required
Authorization Headers Bearer yourtoken     Token ایجاد شده در حساب کاربری شما در پارسااسپیس اجباری
domain Body String Each user can have multiple file or website, آدرس وب سایت ایجاد شده شما در پارسااسپیس اجباری
source Body String امکان کپی یک یا چند فایل به طور همزمان. فایل ها باید با (,) از هم جدا شوند.
مثال : /images/a.jpg,/music/1.mp3
اجباری
destination Body String آدرس مسیری که فایل ها در آن کپی می شوند
مثال : /newfolder
اجباری

نمونه پاسخ دریافتی :

{  "result": "success"}

نمونه کد زیان های برنامه نویسی :

$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => "http://api.parsaspace.com/v1/files/copy",

CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_RETURNTRANSFER=>true,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "domain=yourdomain&type=json&source=%2Fa&destination=%2Fb",
CURLOPT_HTTPHEADER => array(
"authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1bmlxdWVfbmFtZSI6InNhZWlkbWFyb3VmaTY2QGd",

"content-type: application/x-www-form-urlencoded",

),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}

HttpResponse response = Unirest.post("http://api.parsaspace.com/v1/files/copy")
.header("content-type", "application/x-www-form-urlencoded")
.header("authorization", "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1bmlxdWVfbmFtZSI6InNhZWlkbWFyb3VmaTY2QGd")
.body("yourdomain&type=json&source=%2Fa&destination=%2Fb")
.asString();
var client = new RestClient("http://api.parsaspace.com/v1/files/rename");
var request = new RestRequest(Method.POST);
request.AddHeader("authorization","Bearer yourtoken");
request.AddHeader("content-type", "application/x-www-form-urlencoded");
request.AddParameter("domain","yourdomain");
request.AddParameter("source","/");
request.AddParameter("destinition","/");
IRestResponse response = client.Execute(request);
import requests

url = "http://api.parsaspace.com/v1/files/copy"

payload = "yourdomain&type=json&source=%2Fa&destination=%2Fb"
headers = {
'content-type': "application/x-www-form-urlencoded",
'authorization': "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1bmlxdWVfbmFtZSI6InNhZWlkbWFyb3VmaTY2QGd",

}

response = requests.request("POST", url, data=payload, headers=headers)

print(response.text)

var request = require("request");

var options = { method: 'POST',
url: 'http://api.parsaspace.com/v1/files/copy',
headers:
{
authorization: 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1bmlxdWVfbmFtZSI6InNhZWlkbWFyb3VmaTY2QGd' },
form:
{ domain: 'yourdomain',
type: 'json',
source: '/a',
destination: '/b' } };

request(options, function (error, response, body) {
if (error) throw new Error(error);

console.log(body);
});

نمونه پاسخ ( خطاها ) :

{
"result": "success",
}

{
"result": "error",
"message":"can not copy file",
}

{
"result": "error",
"message": "Object already exist.",
}

{
"result": "error",
"message": "Sorry!Access denied",
}

پوشه جدید

ساخت پوشه جدید با مسیر یا نام دلخواه.

آدرس (Url) :

https://api.parsaspace.com/v1/files/Createfolder

Method:

Post

اعتبارسنجی :

اعتبارسنجی کاربر

پارامترهای ارسالی :

Parameter Entry In Type Description Required
Authorization Headers Bearer yourtoken     Token ایجاد شده در حساب کاربری شما در پارسااسپیس اجباری
domain Body String آدرس وب سایت ایجاد شده شما در پارسااسپیس اجباری
path Body String آدرس ایجاد شدن پوشه جدید . به صورت پیش فرض مسیر root (مسیر اصلی) می باشد. اختیاری

نمونه پاسخ دریافتی:

{"result":"success"}

نمونه کد زیان های برنامه نویسی :


$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => "http://api.parsaspace.com/v1/files/createfolder",
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_RETURNTRANSFER=>true,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "path=%2Fhello&domain=yourdomain&type=json",
CURLOPT_HTTPHEADER => array(
"authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1bmlxdWVfbmFtZSI6InNhZWlkbWFyb3VmaTY2QGd",
"cache-control: no-cache",
"content-type: application/x-www-form-urlencoded",
),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
HttpResponse response = Unirest.post("http://api.parsaspace.com/v1/files/createfolder")
.header("content-type", "application/x-www-form-urlencoded")
.header("authorization", "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1bmlxdWVfbmFtZSI6InNhZWlkbWFyb3VmaTY2QGd")
.body("path=%2Fhello&yourdomain&type=json")
.asString();
var client = new RestClient("http://api.parsaspace.com/v1/files/rename");
var request = new RestRequest(Method.POST);
request.AddHeader("authorization","Bearer yourtoken");
request.AddHeader("content-type", "application/x-www-form-urlencoded");
request.AddParameter("domain","yourdomain");
request.AddParameter("path","/");
IRestResponse response = client.Execute(request);
import requests

url = "http://api.parsaspace.com/v1/files/createfolder"

payload = "path=%2Fhello&yourdomain&type=json"
headers = {
'content-type': "application/x-www-form-urlencoded",
'authorization': "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1bmlxdWVfbmFtZSI6InNhZWlkbWFyb3VmaTY2QGd",
}

esponse = requests.request("POST", url, data=payload, headers=headers)

print(response.text)
var request = require("request");
var options = { method: 'POST',
url: 'http://api.parsaspace.com/v1/files/createfolder',
headers:
{
authorization: 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1bmlxdWVfbmFtZSI6InNhZWlkbWFyb3VmaTY2QGd',
'content-type': 'application/x-www-form-urlencoded' },
form: { path: '/hello', domain: 'yourdomain', type: 'json' } };
request(options, function (error, response, body) {
if (error) throw new Error(error);
console.log(body);
});

نمونه پاسخ ( خطاها ) :

{
"result": "ok,
}

{
"result": "error" ,
"message": "Object already exist.",
}

{
"result": "error" ,
"message": "Sorry!Access denied",
}

آپلود

آپلود فایل جدید در مسیر دلخواه.
شما می توانید چندین فایل را همزمان در یک درخواست آپلود نمائید. فقط به خاطر داشته باشید که حداکثر حجم فایل جهت آپلود در یک درخواست 2GB می باشد. جهت آپلود فایلهای با حجم بالا از ftp استفاده کنید

آدرس (Url) :

https://api.parsaspace.com/v1/files/upload

Method:

Post

اعتبارسنجی :

اعتبارسنجی کاربر

پارامترهای ارسالی :

Parameter Entry In Type Description Required
Authorization Headers Bearer yourtoken     Token ایجاد شده در حساب کاربری شما در پارسااسپیس اجباری
domain Body String آدرس وب سایت ایجاد شده شما در پارسااسپیس اجباری
path Body String آدرس (مسیر) آپلود فایل ها درآن. به صورت پیش فرض مسیر اصلی (root) می باشد اختیاری
file Body file فایل اجباری

نمونه پاسخ دریافتی :

{"result":"success" ,"downloadLink":"file uploaded link"}

نمونه کد زبان های برنامه نویسی :


$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "http://api.parsaspace.com/v1/files/upload",
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_RETURNTRANSFER=>true,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"file\"; filename=\" yourfilename \"\r\nContent-Type: text/plain\r\n\r\n\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"domain\"\r\n\r\n yourdoamin \r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"path\"\r\n\r\n/\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW--",
CURLOPT_HTTPHEADER => array(
"authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1bmlxdWVfbmFtZSI6InNhZWlkbWFyb3VmaTY2QGd",
"cache-control: no-cache",
"content-type: multipart/form-data; boundary=---011000010111000001101001",
));
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
HttpResponse response = Unirest.post("http://api.parsaspace.com/v1/files/upload")
.header("authorization", "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1bmlxdWVfbmFtZSI6InNhZWlkbWFyb3VmaTY2QGd")
.header("content-type", "("content-type", "multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW")
.body("------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"file\"; filename=\"yourfilename \"\r\nContent-Type: text/plain\r\n\r\n\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"domain\"\r\n\r\n yourdomain \r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"path\"\r\n\r\n/\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW--")
.asString();
var client = new RestClient("http://api.parsaspace.com/v1/files/rename");
var request = new RestRequest(Method.POST);
request.AddHeader("authorization","Bearer yourtoken");
request.AddHeader("content-type", "application/x-www-form-urlencoded");
request.AddParameter("domain","yourdomain");
request.AddParameter("path","/");
request.AddFile("file",yourfile);
IRestResponse response = client.Execute(request);
import requests
url = "http://api.parsaspace.com/v1/files/upload"

payload = ""------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"file\"; filename=\" yourfilename \"\r\nContent-Type: text/plain\r\n\r\n\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"domain\"\r\n\r\n yourdoamin \r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"path\"\r\n\r\n/\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW--""
headers = {
'content-type': "multipart/form-data; boundary=---011000010111000001101001",
'authorization': "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1bmlxdWVfbmFtZSI6InNhZWlkbWFyb3VmaTY2QGd" }

esponse = requests.request("POST", url, data=payload, headers=headers)

print(response.text)
var fs = require("fs");
var request = require("request");

var options = { method: 'POST',
url: 'http://api.parsaspace.com/v1/files/upload',
headers:
{
'content-type': 'multipart/form-data; boundary=---011000010111000001101001',
authorization: 'youre token' },
formData:
formData:{ file: { value: 'fs.createReadStream(" ")',options:{ filename: 'yourfilename',contentType: null } }, domain: 'yourdomain', path: '/' } };

request(options, function (error, response, body) {
if (error) throw new Error(error);

console.log(body);
});

نمونه پاسخ (خطاها) :

{
"result": "success",
}

{
"result": "error",
"message": "Object already exist.",
}

{
"result": "error",
"message": "Sorry!Access denied.",
}

ریموت آپلود

آپلود فایل از طریق آدرس های اینترنتی HTTP در بستر وب.
این روش آپلود خیلی سریع تر از آپلود فایل واقعی می باشد. شما می توانید فایل ها را از URL راه دور آپلود نمائید.

آدرس (Url) :

https://api.parsaspace.com/v1/remote/new

Method:

Post

اعتبارسنجی :

اعتبار سنجی کاربر

پارامترهای ارسالی :

Parameter Entry In Type Description Required
Authorization Headers Bearer yourtoken     Token ایجاد شده در حساب کاربری شما در پارسااسپیس اجباری
domain Body String آدرس وب سایت ایجاد شده شما در پارسااسپیس اجباری
path Body String آدرس ذخیره شدن url مورد نظر در حساب کاربری شما. به صورت پیش فرض مسیر root (مسیر اصلی) می باشد. اختیاری
url Body String آدرس (url) های فایل ، که می توانند با (,) از هم جدا شوند. حداکثر تعدا آدرس ها 100 می باشد.. اجباری
filename Body String نام جدید فایل ها ، که برای هر فایل می توانید تنظیم کنید ، با کاما (,) از هم جدا می شوند. اگر نمی خواهید نام فایل را تغییر دهید آن را خالی بگذارید. اختیاری
checkid Body String این فیلد برای دریافت گزارش وضعیت ریموت آپلود لازم میباشد.شما باید مقدار یکتایی به ازای هر فایل ارسال کنید. اختیاری

نمونه پاسخ دریافتی :

{"result":"success"}

نمونه کد زبان های برنامه نویسی :

$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "http://api.parsaspace.com/v1/remote/new",
CURLOPT_RETURNTRANSFER=>true,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "checkid=unique checkid &path=your path&url=the url&domain=your domain",
CURLOPT_HTTPHEADER => array(
"authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1bmlxdWVfbmFtZSI6InNhZWlkbWFyb3VmaTY2QGd",

),
));

$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
HttpResponse response = Unirest.post("http://api.parsaspace.com/v1/remote/new")
.header("authorization", "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1bmlxdWVfbmFtZSI6InNhZWlkbWFyb3VmaTY2QGd")
.body("checkid=unique checkid &path=your path t&url=the url&domain=your domain")
.asString();
var client = new RestClient("http://api.parsaspace.com/v1/files/rename");
var request = new RestRequest(Method.POST);
request.AddHeader("authorization","Bearer yourtoken");
request.AddHeader("content-type", "application/x-www-form-urlencoded");
request.AddParameter("domain","yourdomain");
request.AddParameter("path","/");
request.AddParameter("url",yourfileurl);
IRestResponse response = client.Execute(request);
import requests
url = "http://api.parsaspace.com/v1/remote/new"
payload = "checkid=unique checkid&path=your path &url=the url&domain=your domain"
headers = {
'authorization': "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1bmlxdWVfbmFtZSI6InNhZWlkbWFyb3VmaTY2QGd",
}
response = requests.request("POST", url, data=payload, headers=headers)
print(response.text)
var request = require("request");
var options = { method: 'POST',
url: 'http://api.parsaspace.com/v1/remote/new',
headers:
{
authorization: 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1bmlxdWVfbmFtZSI6InNhZWlkbWFyb3VmaTY2QGd' },
form:
{ checkid: 'unique checkid'
path: 'your path',
url: 'the url', domain: 'your domain' } };
request(options, function (error, response, body) {
if (error) throw new Error(error);

console.log(body);
});

نمونه پاسخ (خطاها) :

{
"result": "{"success" } ,
}

{
"result": "error" ,
}

{
"result": "error" ,
"message": "Sorry!Access denied",
}

وضعیت ریموت آپلود

بررسی وضعیت ریموت آپلود فایل ها.

آدرس (Url) :

https://api.parsaspace.com/v1/remote/status

Method:

Post

اعتبارسنجی :

اعتبارسنجی کاربر

پارامترهای ارسالی :

Parameter Entry In Type Description Required
Authorization Headers Bearer yourtoken     Token ایجاد شده در حساب کاربری شما در پارسااسپیس اجباری
checkid Body String کد منحصر به فرد فایل اجباری

نمونه پاسخ دریافتی :

{"result":"success","list":[{"Url":"your url",FileName:"Uploaded File Name","Status":"queue","DownloadSize":11117}]}

حجم فایل (DownloadSize) به byte می باشد.

نمونه کد زبان های برنامه نویسی :


curl_setopt_array($curl, array(
CURLOPT_URL => "http://api.parsaspace.com/v1/remote/status",
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_RETURNTRANSFER=>true,
CURLOPT_POSTFIELDS => "chechid= your checkid",
CURLOPT_HTTPHEADER => array(
"authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1bmlxdWVfbmFtZSI6InNhZWlkbWFyb3VmaTY2QGd",
),
));
$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
HttpResponse response = Unirest.post("http://api.parsaspace.com/v1/remote/status")
.header("authorization", "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1bmlxdWVfbmFtZSI6InNhZWlkbWFyb3VmaTY2QGd")
.body("chechid=your checkid")
.asString();
var client = new RestClient("http://api.parsaspace.com/v1/files/rename");
var request = new RestRequest(Method.POST);
request.AddHeader("authorization","Bearer yourtoken");
request.AddHeader("content-type", "application/x-www-form-urlencoded");
request.AddParameter("checkid",remoteuploadcheckid);
IRestResponse response = client.Execute(request);
import requests
url = "http://api.parsaspace.com/v1/remote/status"
payload = "chechid=your checkid"
headers = {
'authorization': "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1bmlxdWVfbmFtZSI6InNhZWlkbWFyb3VmaTY2QGd",
}
response = requests.request("POST", url, data=payload, headers=headers)
print(response.text)
var request = require("request");
var options = { method: 'POST',
url: 'http://api.parsaspace.com/v1/remote/status',
headers:
{
authorization: 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1bmlxdWVfbmFtZSI6InNhZWlkbWFyb3VmaTY2QGd' },
form: { chechid: 'your checkid' } };
request(options, function (error, response, body) {
if (error) throw new Error(error);
console.log(body);
});

نمونه پاسخ (خطاها) :

{
"result": "success,
"list": [ { "Url": "http://trainbit.com/files/6156037884/gulpfile.js",
"Status": "queue",
"DownloadSize": 11117
"FileName:"Uploaded File Name"
}

}

حجم فایل (DownloadSize) به byte می باشد.

{
"result": "error" ,
}

{
"result": "error" ,
"message": "Sorry!Access denied",
}