Find Jobs
Hire Freelancers

Smartsheet Automation with Python Scripts

$30-250 USD

Completed
Posted about 2 months ago

$30-250 USD

Paid on delivery
Python scripts to handle automation within Smartsheet. Scripts will be hosted on server running FastAPI managed by uvicorn. Smartsheet API helper script should handle all API uses, including the creation and management of web hooks. There will eventually be multiple webhooks. For the purpose of this exercise, I just need one example of a web hook created on user saving worksheet, to trigger a script that: 1. Gathers all of the values from a column in a separate sheet 2. Sorts values ascending 3. Updates a dropdown list on the primary sheet. The two sample sheet API keys will be provided. Python Requirements Write Python 3 script that is PEP8 compliant code. When doing web requests, ensure asynchronous functionality as well as bundling jobs. All imports should be at the top of the code. Do not add imports within classes, methods, or functions. Avoid monolithic design. methods and functions should have single purpose and not be too complex. Typing: Ensure all methods and functions are fully types for both variables/attributes, as well as the output. Use [login to view URL] when applicable (if method attribute is a str and it can only be two responses, use Literal to indicate those two responses). The same goes for [login to view URL] when a dictionary must be in a certain structure. Logging: Logging should be applied to all scripts. If the response includes breaking scripts into separate files, the same log file should be used for all scripts. A verbose option should be offered to log non-errors for debugging and development. Using levels like: [login to view URL]() [login to view URL]() [login to view URL]() [login to view URL]() [login to view URL]() Configuration should be separate from the script. If the response is to break the script into separate files, a single configuration file should be used for all of the scripts. Principles: Single Responsibility Principle (SRP): The Single Responsibility Principle advocates for a class or module to have only one reason to change. In simpler terms, it should do one thing and do it well. By adhering to SRP, your code becomes more modular, making it easier to understand and maintain. Open-Closed Principle (OCP): The Open-Closed Principle states that software entities should be open for extension but closed for modification. This means that you should be able to extend a class’s behavior without modifying it. Liskov Principle: The principle defines that objects of a superclass shall be replaceable with objects of its subclasses without breaking the application. That requires the objects of your subclasses to behave in the same way as the objects of your superclass Interface segregation principle: This principle states that clients should not be forced to depend on methods they do not use. This means it’s better to have interfaces that are suited to specific task rather than one general-purpose interface. Dependency Inversion Principle Dependency Inversion Principle: high-level modules should not depend on low-level modules, but both should depend on abstractions. This means that you should not have to change other sections of your code when you change the implementation of a class
Project ID: 37813424

About the project

6 proposals
Remote project
Active 2 mos ago

Looking to make some money?

Benefits of bidding on Freelancer

Set your budget and timeframe
Get paid for your work
Outline your proposal
It's free to sign up and bid on jobs
Awarded to:
User Avatar
As a seasoned data analyst/ scientist who's no stranger to working with Python, RESTful APIs, and implementing intelligent software architecture, I am exceptionally suited for this Smartsheet automation task. Combining my expertise in both data management and API, I will create efficient and meticulous scripts that embody the Single Responsibility Principle (SRP), Open-Closed Principle (OCP), Liskov Principle, Interface segregation principle, and Dependency Inversion Principle.
$200 USD in 7 days
5.0 (2 reviews)
0.0
0.0
6 freelancers are bidding on average $347 USD for this job
User Avatar
Hello Greetings, After going through your project description, I feel confident and excited to work on this project for you. But I have some crucial things and queries to clear out. Can you please leave a message on chat so we can discuss this and I can share my recent work similar to your requirements? Thanks for your time! I look forward to hearing from you soon. Best Regards
$250 USD in 4 days
5.0 (13 reviews)
6.0
6.0
User Avatar
Hi there, I am Artjom from Latvia who has 7 years of experience in web/mobile app development. I have gone through your job description and I am confident in my rich experience to help you the best way. I can get started right away and looking forward to discussing your project further via direct interview. Thank you!
$250 USD in 7 days
0.0 (0 reviews)
0.0
0.0

About the client

Flag of UNITED STATES
Orlando, United States
5.0
8
Payment method verified
Member since Apr 30, 2013

Client Verification

Thanks! We’ve emailed you a link to claim your free credit.
Something went wrong while sending your email. Please try again.
Registered Users Total Jobs Posted
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Loading preview
Permission granted for Geolocation.
Your login session has expired and you have been logged out. Please log in again.