File: _file_service.py

package info (click to toggle)
python-stripe 13.2.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 14,476 kB
  • sloc: python: 187,843; makefile: 13; sh: 9
file content (142 lines) | stat: -rw-r--r-- 4,986 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
# -*- coding: utf-8 -*-
# File generated from our OpenAPI spec
from stripe._stripe_service import StripeService
from stripe._util import sanitize_id
from typing import Optional, cast
from typing_extensions import TYPE_CHECKING

if TYPE_CHECKING:
    from stripe._file import File
    from stripe._list_object import ListObject
    from stripe._request_options import RequestOptions
    from stripe.params._file_create_params import FileCreateParams
    from stripe.params._file_list_params import FileListParams
    from stripe.params._file_retrieve_params import FileRetrieveParams


class FileService(StripeService):
    def list(
        self,
        params: Optional["FileListParams"] = None,
        options: Optional["RequestOptions"] = None,
    ) -> "ListObject[File]":
        """
        Returns a list of the files that your account has access to. Stripe sorts and returns the files by their creation dates, placing the most recently created files at the top.
        """
        return cast(
            "ListObject[File]",
            self._request(
                "get",
                "/v1/files",
                base_address="api",
                params=params,
                options=options,
            ),
        )

    async def list_async(
        self,
        params: Optional["FileListParams"] = None,
        options: Optional["RequestOptions"] = None,
    ) -> "ListObject[File]":
        """
        Returns a list of the files that your account has access to. Stripe sorts and returns the files by their creation dates, placing the most recently created files at the top.
        """
        return cast(
            "ListObject[File]",
            await self._request_async(
                "get",
                "/v1/files",
                base_address="api",
                params=params,
                options=options,
            ),
        )

    def create(
        self,
        params: "FileCreateParams",
        options: Optional["RequestOptions"] = None,
    ) -> "File":
        """
        To upload a file to Stripe, you need to send a request of type multipart/form-data. Include the file you want to upload in the request, and the parameters for creating a file.

        All of Stripe's officially supported Client libraries support sending multipart/form-data.
        """
        if options is None:
            options = {}
        options["content_type"] = "multipart/form-data"
        return cast(
            "File",
            self._request(
                "post",
                "/v1/files",
                base_address="files",
                params=params,
                options=options,
            ),
        )

    async def create_async(
        self,
        params: "FileCreateParams",
        options: Optional["RequestOptions"] = None,
    ) -> "File":
        """
        To upload a file to Stripe, you need to send a request of type multipart/form-data. Include the file you want to upload in the request, and the parameters for creating a file.

        All of Stripe's officially supported Client libraries support sending multipart/form-data.
        """
        if options is None:
            options = {}
        options["content_type"] = "multipart/form-data"
        return cast(
            "File",
            await self._request_async(
                "post",
                "/v1/files",
                base_address="files",
                params=params,
                options=options,
            ),
        )

    def retrieve(
        self,
        file: str,
        params: Optional["FileRetrieveParams"] = None,
        options: Optional["RequestOptions"] = None,
    ) -> "File":
        """
        Retrieves the details of an existing file object. After you supply a unique file ID, Stripe returns the corresponding file object. Learn how to [access file contents](https://docs.stripe.com/docs/file-upload#download-file-contents).
        """
        return cast(
            "File",
            self._request(
                "get",
                "/v1/files/{file}".format(file=sanitize_id(file)),
                base_address="api",
                params=params,
                options=options,
            ),
        )

    async def retrieve_async(
        self,
        file: str,
        params: Optional["FileRetrieveParams"] = None,
        options: Optional["RequestOptions"] = None,
    ) -> "File":
        """
        Retrieves the details of an existing file object. After you supply a unique file ID, Stripe returns the corresponding file object. Learn how to [access file contents](https://docs.stripe.com/docs/file-upload#download-file-contents).
        """
        return cast(
            "File",
            await self._request_async(
                "get",
                "/v1/files/{file}".format(file=sanitize_id(file)),
                base_address="api",
                params=params,
                options=options,
            ),
        )