Skip to content

Commit

Permalink
Merge pull request #822 from ayeshLK/2201.0.x-dev
Browse files Browse the repository at this point in the history
[2201.0.x] Update stripe-connector to support list-customer functionality
  • Loading branch information
ayeshLK authored Nov 17, 2023
2 parents 995c80f + 3ae16de commit 7bf4288
Show file tree
Hide file tree
Showing 3 changed files with 1,859 additions and 0 deletions.
17 changes: 17 additions & 0 deletions openapi/stripe/client.bal
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,23 @@ public isolated client class Client {
Coupon response = check self.clientEp->get(resourcePath);
return response;
}
# <p>Returns a list of your customers. The customers are returned sorted by creation date, with the most recent customers appearing first.</p>
#
# + email - A case-sensitive filter on the list based on the customer's `email` field. The value must be a string.
# + endingBefore - A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list.
# + expand - Specifies which fields in the response should be expanded.
# + 'limit - A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.
# + startingAfter - A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list.
# + testClock - Provides a list of customers that are associated with the specified test clock. The response will not include customers with test clocks if this parameter is not set.
# + return - Successful response.
remote isolated function listCustomers(CreatedDetails? created = (), string? email = (), string? endingBefore = (), string[]? expand = (), int? 'limit = (), string? startingAfter = (), string? testClock = ()) returns CustomerResourceCustomerList|error {
string resourcePath = string `/v1/customers`;
map<anydata> queryParam = {"created": created, "email": email, "ending_before": endingBefore, "expand": expand, "limit": 'limit, "starting_after": startingAfter, "test_clock": testClock};
map<Encoding> queryParamEncoding = {"created": {style: DEEPOBJECT, explode: true}, "expand": {style: DEEPOBJECT, explode: true}};
resourcePath = resourcePath + check getPathForQueryParam(queryParam, queryParamEncoding);
CustomerResourceCustomerList response = check self.clientEp->get(resourcePath);
return response;
}
# <p>Creates a new customer object.</p>
#
# + payload - Customer details
Expand Down
122 changes: 122 additions & 0 deletions openapi/stripe/openapi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -24614,6 +24614,128 @@ paths:
"$ref": "#/components/schemas/error"
description: Error response.
"/v1/customers":
get:
description: "<p>Returns a list of your customers. The customers are returned sorted by creation date, with the most recent customers appearing first.</p>"
operationId: listCustomers
parameters:
- explode: true
in: query
name: created
required: false
schema:
$ref: '#/components/schemas/CreatedDetails'
style: deepObject
- description: >-
A case-sensitive filter on the list based on the customer's `email`
field. The value must be a string.
in: query
name: email
required: false
schema:
maxLength: 512
type: string
style: form
- description: >-
A cursor for use in pagination. `ending_before` is an object ID that
defines your place in the list. For instance, if you make a list
request and receive 100 objects, starting with `obj_bar`, your
subsequent call can include `ending_before=obj_bar` in order to
fetch the previous page of the list.
in: query
name: ending_before
required: false
schema:
maxLength: 5000
type: string
style: form
- description: Specifies which fields in the response should be expanded.
explode: true
in: query
name: expand
required: false
schema:
items:
maxLength: 5000
type: string
type: array
style: deepObject
- description: >-
A limit on the number of objects to be returned. Limit can range
between 1 and 100, and the default is 10.
in: query
name: limit
required: false
schema:
type: integer
style: form
- description: >-
A cursor for use in pagination. `starting_after` is an object ID
that defines your place in the list. For instance, if you make a
list request and receive 100 objects, ending with `obj_foo`, your
subsequent call can include `starting_after=obj_foo` in order to
fetch the next page of the list.
in: query
name: starting_after
required: false
schema:
maxLength: 5000
type: string
style: form
- description: >-
Provides a list of customers that are associated with the specified
test clock. The response will not include customers with test clocks
if this parameter is not set.
in: query
name: test_clock
required: false
schema:
maxLength: 5000
type: string
style: form
responses:
'200':
content:
application/json:
schema:
description: ''
properties:
data:
items:
$ref: '#/components/schemas/customer'
type: array
has_more:
description: >-
True if this list has another page of items after this one
that can be fetched.
type: boolean
object:
description: >-
String representing the object's type. Objects of the same
type share the same value. Always has the value `list`.
enum:
- list
type: string
url:
description: The URL where this list can be accessed.
maxLength: 5000
pattern: ^/v1/customers
type: string
required:
- data
- has_more
- object
- url
title: CustomerResourceCustomerList
type: object
x-expandableFields:
- data
description: Successful response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/error'
description: Error response.
post:
description: "<p>Creates a new customer object.</p>"
operationId: createCustomer
Expand Down
Loading

0 comments on commit 7bf4288

Please sign in to comment.