2

カードを作成し、その新しいカードでアカウントを作成できますが、保留を作成しようとすると、次のような 401 エラーが表示されますNot permitted to perform create on holds

私はbalanced.jsカードを作成するために使用し、それをアプリケーションに送信しcard_uriています。

POST次に、 ingでアカウントを作成します

{
"uri": card_uri,
"email_address":"xxx@yyy.com"
}

https://api.balancedpayments.com/v1/marketplaces/MYTESTMARKETURI/accounts?MYTESTMARKETSECRETKEY、次のような応答を受け取ります。

{
"holds_uri": "/v1/marketplaces/MYTESTMARKETURI/accounts/AC6uOkhFTsOMpvY8zAvjnBtu/holds",
"name": null,
"roles": [],
"created_at": ...,
"uri": ...,
"bank_accounts_uri": ...,
"refunds_uri": ...,
"meta": {},
"debits_uri": ..,
"transactions_uri": ...,
"email_address": "xxx@yyy.com",
"id": "AC6uOkhFTsOMpvY8zAvjnBtu",
"credits_uri": ...,
"cards_uri": ...
}

そして、新しいカードを使用した新しいアカウントが、balancedpayments.comのダッシュボードに表示されます。

POSTingで保留を作成しようとすると

{
"amount": 200
}

次のエラーが表示されhttps://api.balancedpayments.com/v1/marketplaces/MYTESTMARKETURI/accounts/AC6uOkhFTsOMpvY8zAvjnBtu/holds?MYTESTMARKETSECRETKEYます。

{
"status": "Unauthorized",
"category_code": "authentication-required",
"category_type": "permission",
"description": "Not permitted to perform create on holds. Your request id is OHMf82dbd8e10a811e29f5d026ba7d31e6f.",
"request_id": "OHMf82dbd8e10a811e29f5d026ba7d31e6f",
"status_code": 401
}

私は何を間違っていますか?BalancedPayments.com REST API を使用して保留を作成するにはどうすればよいですか?

4

1 に答える 1

4

401は、保留の作成要求を行うときに認証を行っていないことを意味します。

クエリ文字列にMYTESTMARKETSECRETKEYを含める代わりに、基本認証ヘッダーを使用する必要があります。

バランスの取れたクライアントのどれを使用しているかはわかりませんが(ヘッダーが含まれているので、MYTESTMARKETSECRETKEYとだけ伝えます)、curlの場合のリクエストは次のようになります。

curl -u MYTESTMARKETSECRETKEY:https://api.balancedpayments.com/v1/marketplaces
/ MYTESTMARKETURI / accounts / AC6uOkhFTsOMpvY8zAvjnBtu / holds -x POST -d amount = 200

そして、応答は次のようになります。

{
  "account": {
    "holds_uri": "/v1/marketplaces/MKxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/accounts/ACxxxxxxxxxxxxxxxxxxxxxx/holds", 
    "name": "xxxx",
    "roles": [
      "buyer"
    ], 
    "created_at": "2012-07-28T23:12:15.859231Z", 
    "uri": "/v1/marketplaces/MKxxxxxxxxxxxxxxxxxxxxxx/accounts/ACxxxxxxxxxxxxxxxxxxxxxx", 
    "bank_accounts_uri": "/v1/marketplaces/MKxxxxxxxxxxxxxxxxxxxxxx/accounts/ACxxxxxxxxxxxxxxxxxxxxxx/bank_accounts", 
    "refunds_uri": "/v1/marketplaces/MKxxxxxxxxxxxxxxxxxxxxxx/accounts/ACxxxxxxxxxxxxxxxxxxxxxx/refunds", 
    "meta": {}, 
    "debits_uri": "/v1/marketplaces/MKxxxxxxxxxxxxxxxxxxxxxx/accounts/ACxxxxxxxxxxxxxxxxxxxxxx/debits", 
    "transactions_uri": "/v1/marketplaces/MKxxxxxxxxxxxxxxxxxxxxxx/accounts/ACxxxxxxxxxxxxxxxxxxxxxx/transactions", 
    "email_address": "xxxxxxxx@xxxxxx.com", 
    "id": "ACxxxxxxxxxxxxxxxxxxxxxx", 
    "credits_uri": "/v1/marketplaces/MKxxxxxxxxxxxxxxxxxxxxxx/accounts/ACxxxxxxxxxxxxxxxxxxxxxx/credits", 
    "cards_uri": "/v1/marketplaces/MKxxxxxxxxxxxxxxxxxxxxxx/accounts/ACxxxxxxxxxxxxxxxxxxxxxx/cards"
  }, 
  "fee": 35, 
  "description": null, 
  "amount": 123, 
  "created_at": "2012-10-08T05:23:20.943961Z", 
  "uri": "/v1/marketplaces/MKxxxxxxxxxxxxxxxxxxxxxx/holds/HLxxxxxxxxxxxxxxxxxxxxxx", 
  "expires_at": "2012-10-15T05:23:20.876214Z", 
  "source": {
    "card_type": "xxxx"
    "hash": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", 
    "country_code": "USA", 
    "expiration_year": xxxx, 
    "created_at": "2012-09-03T01:08:31.530261Z", 
    "brand": "xxxx",
    "uri": "/v1/marketplaces/MKxxxxxxxxxxxxxxxxxxxxxx/accounts/ACxxxxxxxxxxxxxxxxxxxxxx/cards/CCxxxxxxxxxxxxxxxxxxxxxx", 
    "expiration_month": x, 
    "is_valid": true, 
    "meta": {}, 
    "last_four": "xxxx", 
    "postal_code": "xxxxx", 
    "id": "CCxxxxxxxxxxxxxxxxxxxxxx", 
    "street_address": "xxxxxxxxxxx", 
    "name": "xxxxxxxxx"
  }, 
  "transaction_number": "HLxxx-xxx-xxxx", 
  "meta": {}, 
  "is_void": false, 
  "debit": null, 
  "id": "HLxxxxxxxxxxxxxxxxxxxxxx"
}
于 2012-10-08T05:32:48.330 に答える