LOGO

API文档 / v1.1

Darkroom的API接口,适合具体独立技术开发团队的专业级摄影机构。

假设你是【ABC摄影】的主管,你拥有自己的独立官网和预约系统(假设网址是 abc.com ),那么,当你的客户访问 abc.com 完成在线预约后,你的网站可以通过自动调用本页的API接口、把该订单数据实时同步到到Darkroom后台。同步成功后,你的团队可以直接在Darkroom里对该订单进行管理,无需再自行搭建一个后期管理平台。

如果有这个需要,请联系客服生成一对API秘钥,即可通过调用我们的API接口。本API按照REST 风格进行设计。如果您对REST不太了解,可以参考 RESTful API 设计指南 。对于缺乏技术开发能力的小型机构,我们建议您登陆后一键启用在线预约模块 ,可以大幅降低技术成本。

POST /orders/create

把现有的订单数据及其关联客户的数据,同步到darkroom后台

示例代码(PHP):

<?php

	//预设你在darkroom生成的密钥对:
	define('DARKROOM_API_KEY','.....');
	define('DARKROOM_API_SECRET','.....');
	
	//向这个网址发送api请求的,无需改动:
	define('DARKROOM_API_URL','https://api.darkroom.net/v1.1');
	
	//下载curl函数库: https://api.darkroom.net/assets/sdk-php/darkroom.phpinc 
	require "/path/to/darkroom.phpinc";     

	$data=array(
	
	    //必填参数1:必要的订单信息
	    "order_id"=>"123456", //必填:唯一的订单编号
	    "order_plan"=>"BASIC_PACK", //必填:拍摄服务的唯一编号(见【服务/套餐】页面)
	    "order_date"=>"2016-02-12", //必填:拍摄日期。如果拍摄日期未确定,就填2099-09-09
	    "order_hour"=>"14:30:00", //必填:当天的拍摄开始时间
	 
	    //必填参数2:必要的客户信息
	    "customer_name"=>"董小姐", //必填:客户的名字(称呼)
	    "customer_mobile"=>"13800001234", //必填:客户的手机号
	
	
	    ///////////////////////////////////////////////
	    //以下均为可选项,不是必须
	    ///////////////////////////////////////////////
	
	
	    //可选项1:门店和备注
	    "store_id"=>"123456",  //可选:门店的编号(见【门店设置】页面),如只有一家门店可留空
	    "order_coupon"=>"ABC123", //可选:优惠码
	    "created_at"=>"2015-08-18 21:12:00", //可选:订单的生成时间(如果留空,则自动设置为API发起时间)
	    "customer_remark"=>"我会自己化妆过来,不需要化妆师", //可选:客户写的备注
	    "team_remark"=>"这是一个重要客户", //可选:团队的内部备注(对客户不可见)
	
	
	    //可选项2:预约订金 
	    "prepay_amount"=>"10.00", //可选:预约时支付的订金金额
	    "prepay_method"=>"weixin", //可选:订金的支付方式代码,如果不为空,则只能为以下值之一:1、支付宝:alipay;2、微信支付:weixin;3、银行转账:bank;4、现金支付:manual;5、会员储值卡扣款:card;6、其它:other)
	    "prepay_remark"=>"关于订金的备注,比如交易号:ABC1234567890XZY", //可选:关于订金的备注
	
	
	    //可选项3:更多客户资料
	    "customer_pass"=>"1234ABCD", //可选:设置一个客户登录Darkroom的密码(如果留空,则由系统自动生成)
	    "customer_gender"=>"male", //可选:客户的性别(male或者female)
	    "customer_email"=>"abc@gmail.com", //可选:客户的Email
	    "customer_addr"=>"上海市光明路18号", //可选:客户的地址
	
	
	    //可选项4:如果是儿童摄影(或者拍摄主体是孩子)
	    "kid_name"=>"董小妹", //可选:孩子的名字
	    "kid_gender"=>"girl", //可选:如果不为空,则只能为以下值之一:1、男孩:boy;2、女孩:girl;3、多人组合或其它特殊情况:other
	    "kid_birthday"=>"2013-02-12", //可选:孩子的生日
	    "kid_age"=>"3岁半", //可选:孩子的当前年龄,如果已设置kid_birthday,则自动忽略kid_age        
	
	);
	
	$api_res = curlPOST("/orders/create", $data);  

	if ($api_res==false) 
	    die("Curl ERROR");
	
	$arr=json_decode($api_res,true);
?>
        

服务器响应示例(JSON):

{
    "response": "ok",
    "error_code": "0",
    "error_msg": "",
    "order_id": "123456",
    "order_status": "created",
    "order_date": "2016-02-12",
    "order_hour": "14:30:00",
    "order_url": "https://www.darkroom.net/****/*****"
}
        

GET /orders/{order_id}

通过订单号查询到该订单的详情(以及照片下载链接)

示例代码(PHP):

<?php

	//预设你在darkroom生成的密钥对:
	define('DARKROOM_API_KEY','.....');
	define('DARKROOM_API_SECRET','.....');
	
	//向这个网址发送api请求的,无需改动:
	define('DARKROOM_API_URL','https://api.darkroom.net/v1.1');
	
	//下载curl函数库: https://api.darkroom.net/assets/sdk-php/darkroom.phpinc 
	require "/path/to/darkroom.phpinc";     

	$order_id="123456";//订单编号
	$api_res = curlGET("/orders/".$order_id);  

	if ($api_res==false) 
	    die("Curl ERROR");
	
	$arr=json_decode($api_res,true);
?>
        

服务器响应示例(JSON):

{
    "response": "ok",
    "error_code": "0",
    "error_msg": "",
    "order_id": "123456",
    "order_status": "downloading",
    "order_url": "http://droom.local/i/***/****",
    "order_files": [
        {
            "thumb": "https://qincocdn.darkroom.net/***/***/***.jpg",
            "origin": "http://api.darkroom.net/down/******/******"
        },
        {
            "thumb": "https://qincocdn.darkroom.net/***/***/***.jpg",
            "origin": "http://api.darkroom.net/down/******/******"
        }
    ]
}
        

参数说明:

订单的状态有以下几种类型:


created
订单已建立,但尚未拍摄

uploading
拍摄已完成,原片还没上传

choosing
拍摄已完成,客户正在选片(如果需要选片的话)

dispatching
客户已选片完成,需要设计师接单

processing
设计师正在对照片进行精修处理

downloading
精修已完成,客户可以下载精修片了

closed
订单已结束

canceled
因为某些原因,订单已被取消

absent
客户爽约了,没按时来拍摄

paused
订单有问题,暂停中

GET /customers/{mobile_phone}

通过手机号查询到客户的个人资料,以及该客户名下的所有订单ID

示例代码(PHP):

<?php

	//预设你在darkroom生成的密钥对:
	define('DARKROOM_API_KEY','.....');
	define('DARKROOM_API_SECRET','.....');
	
	//向这个网址发送api请求的,无需改动:
	define('DARKROOM_API_URL','https://api.darkroom.net/v1.1');
	
	//下载curl函数库: https://api.darkroom.net/assets/sdk-php/darkroom.phpinc 
	require "/path/to/darkroom.phpinc";     

	$mobile_phone="13800001234";//手机号
	$api_res = curlPOST("/customer/".$mobile_phone);

	if ($api_res==false) 
	    die("Curl ERROR");
	
	$arr=json_decode($api_res,true);
?>
        

服务器响应示例(JSON):

{
    "response": "ok",
    "error_code": "0",
    "error_msg": "",
    "customer_id": "123456",
    "customer_name": "张小美",
    "customer_mobile": "13800001234",
    "customer_email": "test@example",
    "customer_gender": "female",
    "weixin_nick": "@小美@",
    "weixin_avatar": "http://wx.qlogo.cn/***/****",
    "weixin_openid": "o5pYbm74RxKWWT**************",
    "customer_orders": [
        "ABCD1234",
        "UHSG102"
    ]
}
        

参数说明:


customer_id
客户在darkroom的唯一ID号

customer_name
客户称呼

customer_mobile
客户手机号

customer_email
客户Email(如果有的话)

customer_gender
客户的性别

customer_orders
客户名下的所有订单ID

如果客户通过darkroom绑定过微信,则还有以下信息:


weixin_nick
客户的微信昵称

weixin_avatar
客户的微信头像url

weixin_openid
客户在微信授权时所生成的openid

GET /coupons/{coupon_code}

查询某个优惠码的详细信息

示例代码(PHP):

<?php

	//预设你在darkroom生成的密钥对:
	define('DARKROOM_API_KEY','.....');
	define('DARKROOM_API_SECRET','.....');
	
	//向这个网址发送api请求的,无需改动:
	define('DARKROOM_API_URL','https://api.darkroom.net/v1.1');
	
	//下载curl函数库: https://api.darkroom.net/assets/sdk-php/darkroom.phpinc 
	require "/path/to/darkroom.phpinc";     

	$coupon_code="XYZ123456";//优惠码
	$api_res = curlGET("/coupon/".$coupon_code);

	if ($api_res==false) 
	    die("Curl ERROR");
	
	$arr=json_decode($api_res,true);
?>
        

服务器响应示例(JSON):

{
    "response": "ok",
    "error_code": "0",
    "error_msg": "",
    "coupon_code": "XYZ123456",
    "coupon_discount": "8.5",
    "coupon_cashoff": "30",
    "coupon_type": "仅设置固定折扣",
    "store_id": "123456",
    "coupon_expire": "2016-02-02 12:00:00",
    "max_use_time": "100",
    "now_used_times": "3"
}
        

参数说明:


coupon_discount
优惠码的折扣(比如:8.5表示85折 )

coupon_cashoff
现金抵扣的金额(比如:30表示现金抵扣30元)

coupon_type
优惠类型

store_id
该优惠码适用的门店id

coupon_expire
该优惠码的过期时间

max_use_time
该优惠码最多允许使用几次

now_used_times
该优惠码目前已被使用了多少次

微信公众号

微信服务号

  • Made with
  • 杭州 滨江区