2017-01-09 9 views
1

npmパッケージ(node-upwork)経由でnodejs upwork apiを使用してUpwork.offers.makeOffer api call正常に動作します。しかし、固定価格ジョブを作成する際には、milestoneオブジェクトを作成し、job_typeを「固定価格」に設定することが要求されます。同じリクエストでこれを行うと、エラー=> '署名検証エラー'が返されます。 何が問題なのですか? は、ここで私は、要求それはupworkを表示さupworks apiを使用してマイルストーンを作成する方法、APIで定義されたマイルストーンで許可エラーが発生する

var Offers = require('upwork-api/lib/routers/hr/clients/offers.js').Offers; 
    var offers = new Offers(api); 
var params = { 
    title: 'RM 1', 
    job_type: 'fixed-price', 
    charge_rate: 15, 
    message_to_contractor: 'Please accept this test job from Task Router', 
    contractor_key: '~01be12345c1234534b', 
    'context[job_posting_ref]': '~12345d3348af3dc' 
}; 
var milestone = { 
    milestone_description : "complete the job", 
    deposit_amount : 1, 
    due_date : '01-17-2017' 
}; 
params.milestones = [milestone]; 
offers.makeOffer(params, function (err, data) { 
    if (err) { 
     console.log(err); 
    } 
    else { 
     console.log("offer has been made"); 
    } 
}); 

答えて

1

のために作成していますオブジェクトの一例であるフラットなJSONオブジェクトが必要です。彼らのAPIドキュメントは、すべてのデータをRAWの投稿データとして送信する必要があることに注意しています。したがって、このようなマイルストーン情報を提供する必要があります。

var params = { 
    title: 'RM 1', 
    job_type: 'fixed-price', 
    charge_rate: 15, 
    message_to_contractor: 'Please accept this test job from Task Router', 
    contractor_key: '~01be12345c1234534b', 
    'context[job_posting_ref]': '~12345d3348af3dc', 
    'milestones[0][milestone_description]': 'complete the job 1', 
    'milestones[0][deposit_amount]': 15.0, 
    'milestones[0][due_date]': '01-10-2017' 
}; 
+0

このアプローチはうまくいきました。 –

関連する問題