Client library for the IBM Cloud services
Project description
python-sdk-core
This project contains the core functionality used by Python SDK’s generated by the IBM OpenAPI 3 SDK Generator (openapi-sdkgen). Python code generated by openapi-sdkgen will depend on the function contained in this project.
Installation
To install, use pip or easy_install:
pip install --upgrade ibm-cloud-sdk-core
or
easy_install --upgrade ibm-cloud-sdk-core
Authentication Types
There are several flavors of authentication supported in this package. To specify the intended authentication pattern to use, simply instantiate the Authenticator of your choice.
Basic
This indicates Basic Auth is to be used. Users will pass in a username and password and the SDK will generate a Basic Auth header to send with requests to the service.
from ibm_cloud_sdk_core.authenticators import BasicAuthenticator
authenticator = BasicAuthenticator(<your_username>, <your_password>)
IAM
This indicates that IAM token authentication is to be used. Users can pass in a apikey and the SDK will generate a Bearer Auth header to send with requests to the service.
from ibm_cloud_sdk_core.authenticators import IAMAuthenticator
authenticator = IAMAuthenticator(<your_apikey>)
Cloud Pak for Data
This indicates that the service is an instance of CP4D, which has its own version of token authentication. Users can pass in a username, password and url, and the SDK will generate a Bearer Auth header to send with requests to the service.
from ibm_cloud_sdk_core.authenticators import CloudPakForDataAuthenticator
authenticator = CloudPakForDataAuthenticator(<your_username>, <your_password>, <your_url>)
Bearer Token
This indicates bearer token authentication is to be used. The system would prepend the bearer name to your token and add it to the authorization header.
from ibm_cloud_sdk_core.authenticators import BearerTokenAuthenticator
authenticator = BearerTokenAuthenticator(<your_bearer_token>)
No Authentication
This indicates that no authentication is needed when sending requests to the service
from ibm_cloud_sdk_core.authenticators import NoAuthAuthenticator
authenticator = NoAuthAuthenticator()
Issues
If you encounter an issue with this project, you are welcome to submit a bug report. Before opening a new issue, please search for similar issues. It’s possible that someone has already reported it.
Logging
Enable logging
import logging
logging.basicConfig(level=logging.DEBUG)
This would show output of the form:
DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): iam.cloud.ibm.com:443 DEBUG:urllib3.connectionpool:https://iam.cloud.ibm.com:443 "POST /identity/token HTTP/1.1" 200 1809 DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): gateway.watsonplatform.net:443 DEBUG:urllib3.connectionpool:https://gateway.watsonplatform.net:443 "POST /assistant/api/v1/workspaces?version=2018-07-10 HTTP/1.1" 201 None DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): gateway.watsonplatform.net:443 DEBUG:urllib3.connectionpool:https://gateway.watsonplatform.net:443 "GET /assistant/api/v1/workspaces/883a2a44-eb5f-4b1a-96b0-32a90b475ea8?version=2018-07-10&export=true HTTP/1.1" 200 None DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): gateway.watsonplatform.net:443 DEBUG:urllib3.connectionpool:https://gateway.watsonplatform.net:443 "DELETE /assistant/api/v1/workspaces/883a2a44-eb5f-4b1a-96b0-32a90b475ea8?version=2018-07-10 HTTP/1.1" 200 28
Low level request and response dump
To get low level information of the requests/ responses:
from http.client import HTTPConnection
HTTPConnection.debuglevel = 1
Open source @ IBM
Find more open source projects on the IBM Github Page
License
This library is licensed under Apache 2.0. Full license text is available in LICENSE.
Contributing
See CONTRIBUTING.md.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file ibm-cloud-sdk-core-1.0.0rc7.tar.gz
.
File metadata
- Download URL: ibm-cloud-sdk-core-1.0.0rc7.tar.gz
- Upload date:
- Size: 20.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: Python-urllib/3.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7aa36932ab05d79cfc46bdda0d9ed94a3b487be6eedf4f9933aa818dcf83279c |
|
MD5 | 4ddadda6364e44e7d6c982df834a5420 |
|
BLAKE2b-256 | 57fa42c5665661042113358ec062e41c0ab4dc91748ac0bcf4362d7f63cc3cc4 |