Links API (リンク型決済)
Links (リンク)APIを使用すると、決済リクエストのウェブサイトリンクを 作成および取得できます。 生成されたリンクはどのプラットフォームでも共 有でき、1回のみ、また複数回使用するように設定できます。
Attributes
Name | Type | Description |
---|---|---|
object | string | 固定値 |
id | object_id |
|
livemode | boolean | 本番モード ( |
location | string | 現在の |
amount | integer | 指定された通貨において最小単位、かつ正の整数で表される金額。(例:100サターンは1タイバーツ) サポート通過コード一覧。 |
charges | list | チャージオブジェクトのリスト。 |
created_at | datetime | ISO 8601 形式 ( |
currency | currency | 3文字で示される料金リクエストのクオート通貨ISO 4217コード。 |
deleted | boolean | リンクが削除されたかどうか。 |
deleted_at | datetime | ISO 8601 形式( |
description | string | リンクの説明。 |
multiple | boolean | リンクを複数回使用できるかどうか。 |
payment_uri | string | 顧客がカード詳細を入力するための決済ページのURL。 |
title | string | Linkのタイトル。 |
used | boolean | リンクが使用されたかどうか。 |
used_at | datetime | ISO 8601形式( |
Example
-
JSON Response
{ "object": "link", "id": "link_test_no1t4tnemucod0e51mo", "livemode": false, "location": "/links/link_test_no1t4tnemucod0e51mo", "created_at": "2019-07-23T01:19:35Z", "used_at": null, "deleted_at": null, "deleted": false, "amount": 4719, "currency": "THB", "used": false, "multiple": false, "title": "Hot Latte", "description": "A warm cup of coffee", "charges": { "object": "list", "from": "1970-01-01T00:00:00Z", "to": "2019-07-23T01:19:35Z", "offset": 0, "limit": 20, "total": 0, "order": "chronological", "location": "/links/link_test_no1t4tnemucod0e51mo/charges", "data": [ ] }, "payment_uri": "https://link.omise.co/D1660910" }
Linkを作成
- POST https://api.omise.co/links新しいLinkオブジェクトを返します。
Request Parameters
Name | Type | Description |
---|---|---|
amount | integer | (必須) 指定された通貨において最小単位、かつ正の整数で表される金額。(例:100サターンは1タイバーツ) サポート通過コード一覧。 |
currency | currency | (必須) 3文字で示される料金リクエストのクオート通貨ISO 4217コード。 |
description | string | (必須) リンクの説明。 |
title | string | (必須) Linkのタイトル。 |
multiple | boolean | (任意) リンクを複数回使用できるかどうか。 |
Example
-
1回限りのLinkを作成
- curl
- php
- node.js
- ruby
- C#
- java
- python
- go
- elixir
curl https://api.omise.co/links \ -u $OMISE_SECRET_KEY: \ -d "amount=10000" \ -d "currency=thb" \ -d "title=Hot Latte" \ -d "description=A warm cup of coffee"
<?php $link = OmiseLink::create(array( 'amount' => 99900, 'currency' => 'thb', 'title' => 'Hot Latte', 'description' => 'A warm cup of coffee' ));
omise.links.create({ 'amount': 10000, 'currency': 'thb', 'title': 'Hot Latte', 'description': 'A warm cup of coffee', }, function(err, resp) { /* Response. */ });
require "omise" Omise.secret_api_key = "skey_test_4xs8breq3htbkj03d2x" link = Omise::Link.create({ amount: 99900, currency: "thb", title: "Hot Latte", description: "A warm cup of coffee", })
var link = await Client.Links.Create(new CreateLinkRequest { Amount = 2000, Currency = "thb", Title = "that shirt.", Description = "that shirt.", }); Console.WriteLine($"payment link: {link.PaymentURI}");
Request<Link> request = new Link.CreateRequestBuilder() .amount(100000) .currency("THB") .title("Sale") .description("Thing") .multiple(false) .build(); Link link = client().sendRequest(request); System.out.printf("Link created: %s", link.getId());
import omise omise.api_secret = "skey_test_no1t4tnemucod0e51mo" link = omise.Link.create( amount=100000, currency="thb", title="Hot Latte", description="A warm cup of coffee" )
link, create := &omise.Link{}, &CreateLink{ Amount: 99900, Currency: "thb", Title: "Hot Latte", Description: "A warm cup of coffee", }) if e := client.Do(link, create); e != nil { log.Fatalln(e) } log.Println("created link: %#v\n", link)
Omise.configure(secret_key: "skey_test_4xs8breq3htbkj03d2x") Omise.Link.create( amount: 10000, currency: "thb", title: "Hot Latte", description: "A warm cup of coffee" )
-
複数回利用できるLinkを作成
- curl
- php
- node.js
- ruby
- C#
- java
- python
- go
- elixir
curl https://api.omise.co/links \ -u $OMISE_SECRET_KEY: \ -d "amount=10000" \ -d "currency=thb" \ -d "title=Hot Latte" \ -d "description=A warm cup of coffee" \ -d "multiple=true"
<?php $link = OmiseLink::create(array( 'amount' => 99900, 'currency' => 'thb', 'title' => 'Hot Latte', 'description' => 'A warm cup of coffee', 'multiple' => true ));
omise.links.create({ 'amount': 10000, 'currency': 'thb', 'title': 'Hot Latte', 'description': 'A warm cup of coffee', 'multiple': true, }, function(err, resp) { /* Response. */ });
require "omise" Omise.secret_api_key = "skey_test_4xs8breq3htbkj03d2x" link = Omise::Link.create({ amount: 99900, currency: "thb", title: "Hot Latte", description: "A warm cup of coffee", multiple: true, })
var link = await Client.Links.Create(new CreateLinkRequest { Amount = 2000, Currency = "thb", Title = "that shirt.", Description = "that shirt.", Multiple = true, }); Console.WriteLine($"payment link: ({link.Multiple}) {link.PaymentURI}");
Request<Link> request = new Link.CreateRequestBuilder() .amount(100000) .currency("THB") .title("Sale") .description("Thing") .multiple(true) .build(); Link link = client().sendRequest(request); System.out.printf("Link created: %s", link.getId());
import omise omise.api_secret = "skey_test_no1t4tnemucod0e51mo" link = omise.Link.create( amount=100000, currency="thb", title="Hot Latte", description="A warm cup of coffee", multiple=True, )
link, create := &omise.Link{}, &CreateLink{ Amount: 99900, Currency: "thb", Title: "Hot Latte", Description: "A warm cup of coffee", Multiple: true, }) if e := client.Do(link, create); e != nil { log.Fatalln(e) } log.Println("created link: %#v\n", link)
Omise.configure(secret_key: "skey_test_4xs8breq3htbkj03d2x") Omise.Link.create( amount: 10000, currency: "thb", title: "Hot Latte", description: "A warm cup of coffee", multiple: true )
Links を取得
- GET https://api.omise.co/links/{id}Example
-
Linksを取得
- curl
- php
- node.js
- ruby
- C#
- java
- python
- go
- elixir
curl https://api.omise.co/links/link_test_5g022xwp823yimkbzdl \ -u $OMISE_SECRET_KEY:
<?php $link = OmiseLink::retrieve('link_test_55s7xparb9djkecqkd4');
omise.links.retrieve('link_test_55s7xparb9djkecqkd4', function(err, resp) { /* Response. */ });
require "omise" Omise.secret_api_key = "skey_test_4xs8breq3htbkj03d2x" link = Omise::Link.retrieve("link_test_55s7xparb9djkecqkd4")
var link = await Client.Links.Get("link_test_56bkhnfd97h7eieu0hx"); Console.WriteLine($"link paid?: {link.Used} {link.Charges.FirstOrDefault()?.Id})");
Request<Link> request = new Link.GetRequestBuilder("link_test_6csdepgdsdob7ee47sf").build(); Link link = client().sendRequest(request); System.out.printf("Link retrieved: %s", link.getId());
import omise omise.api_secret = "skey_test_no1t4tnemucod0e51mo" link = omise.Link.retrieve("link_test_no1t4tnemucod0e51mo")
link, retrieve := &omise.Link{}, &operations.RetrieveLink{ LinkID: "link_test_55s7xparb9djkecqkd4", } if e := client.Do(link, retrieve); e != nil { log.Fatalln(e) } log.Printf("link: %#v\n", link)
Omise.configure(secret_key: "skey_test_4xs8breq3htbkj03d2x") Omise.Link.retrieve("link_test_55s7xparb9djkecqkd4")
リンクを破棄する
- DELETE https://api.omise.co/links/{id}LINK_ID
に適応するリンクを破棄もしくは無効化します。
Example
-
リンクを破棄する
- curl
- python
curl https://api.omise.co/links/link_test_5g022xwp823yimkbzdl \ -X DELETE \ -u $OMISE_SECRET_KEY:
import omise omise.api_secret = 'skey_test_4xsjvwfnvb2g0l81sjz' link = omise.Link.retrieve('link_test_5dsoxxan7gxrqihu8rs') link.destroy() link.destroyed # => true
-
レスポンス (JSON)
- JSON
{ "object": "link", "id": "link_test_no1t4tnemucod0e51mo", "livemode": false, "location": "/links/link_test_no1t4tnemucod0e51mo", "created_at": "2019-07-23T01:19:35Z", "used_at": null, "deleted_at": "2019-07-23T01:19:36Z", "deleted": true, "amount": 4222, "currency": "THB", "used": false, "multiple": true, "title": "Hot Latte", "description": "A warm cup of coffee", "charges": { "object": "list", "from": "1970-01-01T00:00:00Z", "to": "2019-07-23T01:19:36Z", "offset": 0, "limit": 20, "total": 0, "order": "chronological", "location": "/links/link_test_no1t4tnemucod0e51mo/charges", "data": [ ] }, "payment_uri": "https://link.omise.co/D41EF3BB" }
全てのLinkの取得
- GET https://api.omise.co/linkslinkに属するすべての お客様のアカウントオブジェクトの list を返します。
Request Parameters
Name | Type | Description |
---|---|---|
from | datetime | (任意, default: |
limit | integer | (任意, default: 20, maximum: 100) 返されるレコードの数。 |
offset | integer | (任意, default: 0) 返される最初のレコードのオフセット(先頭からスキップするレコードの数)。 |
order | string | (任意, default: |
to | datetime | (任意, default: current UTC datetime) ISO 8601形式 ( |
Example
-
Linkを作成
- curl
- php
- node.js
- ruby
- C#
- java
- python
- go
- elixir
curl https://api.omise.co/links \ -u $OMISE_SECRET_KEY:
<?php $links = OmiseLink::retrieve();
omise.links.list(function(err, resp) { /* Response. */ });
require "omise" Omise.secret_api_key = "skey_test_4xs8breq3htbkj03d2x" links = Omise::Link.list
var links = await Client.Links.GetList(order: Ordering.ReverseChronological); Console.WriteLine($"total links: {links.Total}");
Request<ScopedList<Link>> request = new Link.ListRequestBuilder().build(); ScopedList<Link> links = client().sendRequest(request); System.out.printf("Total no. of links: %d", links.getTotal());
import omise omise.api_secret = "skey_test_no1t4tnemucod0e51mo" links = omise.Link.retrieve()
links, list := &omise.CardList{}, &operations.ListLinks{} if e := client.Do(links, list); e != nil { log.Fatalln(e) } log.Printf("link: %#v\n", links.Data[0])
Omise.configure(secret_key: "skey_test_4xs8breq3htbkj03d2x") Omise.Link.list
List charges associated with a link
- GET https://api.omise.co/links/{id}/chargesRequest Parameters
Name | Type | Description |
---|---|---|
from | datetime | (任意, default: |
limit | integer | (任意, default: 20, maximum: 100) 返されるレコードの数。 |
offset | integer | (任意, default: 0) 返される最初のレコードのオフセット(先頭からスキップするレコードの数)。 |
order | string | (任意, default: |
to | datetime | (任意, default: current UTC datetime) ISO 8601形式 ( |
Example
-
Linkを作成
- curl
curl https://api.omise.co/links/link_test_5g022xwp823yimkbzdl/charges \ -u $OMISE_SECRET_KEY: