Python Client wrapper for Typeform API
- Installation
- Usage
- Reference
- [Tests](#tests
pip install typeform1 - Import client library
from typeform import Typeform2 - Create an instance with your personal token
typeform = Typeform('<api_key>')3 - Use any of the methods available in the reference
# will retrieve all forms
forms: dict = typeform.forms.list()- Creates a new instance of Typeform's Python client
- Returns an instance with the methods described below
typeform = Typeform('<api_key>')Client returns the following properties:
formsresponses
Each one of them encapsulates the operations related to it (like listing, updating, deleting the resource).
Creates a form. Returns dict of created form. See docs.
forms = Typeform('<api_key>').forms
result: dict = forms.create({ 'title': 'Hello World' })Deletes the form with the given form_id and all of the form's responses. Returns a str based on success of deletion, OK on success, otherwise an error message. See docs.
forms = Typeform('<api_key>').forms
result: str = forms.delete('abc123')Retrieves a form by the given form_id. Includes any theme and images attached to the form as references. See docs.
forms = Typeform('<api_key>').forms
result: dict = forms.get('abc123')Retrieves a list of JSON descriptions for all forms in your Typeform account (public and private). Forms are listed in reverse-chronological order based on the last date they were modified. See docs.
forms = Typeform('<api_key>').forms
result: dict = forms.list()Updates an existing form. Defaults to put. put will return the modified form as a dict object. patch will Returns a str based on success of change, OK on success, otherwise an error message. See put docs or patch docs.
forms = Typeform('<api_key>').forms
result: dict = forms.update('abc123', { 'title': 'Hello World, Again' })
result: str = forms.update('abc123', { 'title': 'Hello World, Again' }, patch=True)Retrieves the customizable messages for a form (specified by form_id) using the form's specified language. You can format messages with bold (bold) and italic (italic) text. HTML tags are forbidden. See docs.
forms = Typeform('<api_key>').forms
result: dict = forms.messages.get('abc123')Specifies new values for the customizable messages in a form (specified by form_id). You can format messages with bold (bold) and italic (italic) text. HTML tags are forbidden. Returns a str based on success of change, OK on success, otherwise an error message. See docs.
forms = Typeform('<api_key>').forms
result: str = forms.messages.update('abc123', {
'label.buttonHint.default': 'New Button Hint'
})responses.list(uid: str, pageSize: int = None, since: str = None, until: str = None, after: str = None, before: str = None, includedResponseIds: str = None, completed: bool = None, sort: str = None, query: str = None, fields: List[str] = None)
Returns form responses and date and time of form landing and submission. See docs.
responses = Typeform('<api_key>').responses
result: dict = responses.list('abc123')Delete responses to a form. You must specify the included_tokens parameter. Returns a str based on success of deletion, OK on success, otherwise an error message. See docs.
responses = Typeform('<api_key>').responses
result: str = responses.delete('abc123' 'token1')
result: str = responses.delete('abc123' ['token2', 'token3'])Check typeform/test/fixtures.py to configure test run.