superwise_api.entities.source

class SourceApi(superwise_api.entities.base.BaseApi):

This class provides methods to interact with the Source API.

Attributes:
  • api_client (ApiClient): An instance of the ApiClient to make requests.
  • _model_name (str): The name of the model.
  • _resource_path (str): The path of the resource.
def create_gcs_source( self, name: str, bucket_name: str, pubsub_topic: str, service_account: Union[str, dict] = None, **kwargs):

Creates a new GCS source.

Arguments:
  • name (str): The name of the source.
  • bucket_name (str): The name of the GCS bucket.
  • pubsub_topic (str): The name of the PubSub topic.
  • service_account_file_path (str, optional): The path to the service account file.
  • **kwargs: Arbitrary keyword arguments.
Returns:

Source: The created source.

def create_s3_source( self, name: str, bucket_arn: str, queue_arn: str, aws_access_key_id: str = None, aws_secret_access_key: str = None, **kwargs):

Creates a new S3 source.

Arguments:
  • name (str): The name of the source.
  • bucket_arn (str): The name of the S3 bucket.
  • queue_arn (str): The name of the SQS queue.
  • aws_access_key_id: (str, optional): The access key of the S3 bucket.
  • aws_secret_access_key (str, optional): The secret key of the S3 bucket.
  • **kwargs: Arbitrary keyword arguments.
Returns:

Source: The created source.

def get( self, name: Optional[str] = None, created_by: Optional[str] = None, created_at: Optional[datetime.datetime] = None, updated_at: Optional[datetime.datetime] = None, type: Optional[superwise_api.models.source.source.SourceType] = None, page: Optional[Annotated[int, Strict(strict=True), Interval(gt=None, ge=1, lt=None, le=None), None]] = None, size: Optional[Annotated[int, Strict(strict=True), Interval(gt=None, ge=1, lt=None, le=500), None]] = None, **kwargs) -> superwise_api.client.models.page.Page:

Retrieves sources based on the provided filters.

Arguments:
  • name (Optional[str], optional): The name of the source.
  • created_by (Optional[str], optional): The creator of the source.
  • created_at (Optional[datetime], optional): When the source was created.
  • updated_at (Optional[datetime], optional): When the source was last updated.
  • type (Optional[SourceType], optional): The type of the source.
  • page (Optional[conint(strict=True, ge=1)], optional): The page number to retrieve.
  • size (Optional[conint(strict=True, le=500, ge=1)], optional): The number of sources to retrieve per page.
  • **kwargs: Arbitrary keyword arguments.
Returns:

Page: A page of sources.

def update( self, source_id: str, *, name: Optional[str] = None, params: Optional[dict] = None, credentials: Optional[dict] = None, **kwargs) -> superwise_api.models.source.source.Source:

Updates a source.

Arguments:
  • source_id (str): The id of the source to update.
  • name (str, optional): The new name of the source.
  • params (dict, optional): The new parameters of the source.
  • credentials (dict, optional): The new credentials of the source.
  • **kwargs: Arbitrary keyword arguments.
Returns:

Source: The updated source.

Inherited Members
superwise_api.entities.base.BaseApi
BaseApi
api_client
wrap_api_calls
raise_exception
get_by_id
delete