2012-05-24 33 views
6

Sử dụng Stripe API, tôi muốn để có thể truy vấn cho ngày khoảng hay, không rằng, ngày đó là lớn hơn hoặc ít hơn một số ngày tùy ý.Có thể truy vấn phạm vi ngày giờ bằng API sọc không?

tôi biết rằng tôi có thể truy vấn cho một cái gì đó dựa trên một ngày chính xác, ví dụ,:.

https://api.stripe.com/v1/events?created=1336503409 

Nhưng tôi muốn một cái gì đó dọc theo dòng của ...

# Search for events where `created` is greater than the epoch time: 1336503400 
https://api.stripe.com/v1/events?created__gt=1336503400 

Trả lời

8

Yes. Từ https://stripe.com/docs/api?lang=curl#list_events

tạo: Bộ lọc trong danh sách dựa trên ngày tạo sự kiện. Giá trị có thể là một chuỗi với một UTC timestamp chính xác, hoặc nó có thể là một cuốn từ điển với các tùy chọn sau:

gt giá trị (không bắt buộc) Trở nên đã được tạo ra sau mốc thời điểm này.

gte (tùy chọn) Giá trị trả lại phải được tạo sau hoặc bằng dấu thời gian này.

lt (tùy chọn) Giá trị trả lại phải được tạo trước dấu thời gian này.

lte (tùy chọn) Giá trị trả lại phải được tạo trước hoặc bằng dấu thời gian này.

Vì vậy, với curl, bạn có thể xây dựng một đề nghị như thế này:

curl https://api.stripe.com/v1/events?created%5Blt%5D=1337923293 -u <you_api_key>: 

Không thoát, tham số truy vấn là created[lt]=1337923293.

+0

tiếc là dường như không thể có một cuộc gọi có hóa đơn giữa hai ngày (ví dụ: hóa đơn trong 1 tháng cụ thể) – Alessio

5

Nếu bạn đang tìm cách để làm như vậy với ruby client, ở đây nó là:

Stripe::Charge.all(limit: 100, 'created[lt]' => timestamps }) 
0

Dọc theo đường cùng. Bạn có thể đạt được điều tương tự với ứng dụng khách Python như vậy:

import stripe 
from datetime import datetime, timedelta 

my_date = '1/31/2011' 
my_timestamp = datetime.strptime(my_date, "%m/%d/%Y").timestamp() 


stripe.Charge.all(created={'lt': my_timestamp}) 
Các vấn đề liên quan