Skip to content

⚡ Write a generateShortUrl() Function using Java #4191

@PineappleIOnic

Description

@PineappleIOnic

💭 Introduction

Appwrite Functions allow you to extend and customize your Appwrite server functionality by executing your custom code 🤩 You can learn more in our official Appwrite Functions docs.

The backbone of Appwrite Functions is Open Runtimes, an environment for serverless cloud computing. Since all Open Runtime functions are valid Appwrite functions, we are looking for contributors to extend the Open Runtimes Examples repository.

Your task is to implement generateShortUrl() function using Java. Please make sure to look at existing function examples and use them as a template for your function. This will help you keep the proper structure as well as provide information on how to test the function.

⚡ Function Details

Generate a short URL. Introduce support for bitly and tinyurl APIs. If necessary, introduce their secret keys as function variables. URL and provider to use must be provided as payload, and shortened URL should be returned.

Example function payload:

{"provider":"bitly","url":"https://google.com/"}

Successful function response:

{"success":true,"url":"https://bit.ly/3y3HDkC"}

Error function response:

{"success":false,"message":"Entered URL is not a valid URL."}

🎯 Requirements

  • Experience with Appwrite.
  • Experience with Java.
  • Knowledge to implement generateShortUrl function.
  • Experience with Docker.

✅ Task Summary

  • Ask to be assigned to the issue.
  • Implement function generateShortUrl() in Java/ folder.
  • Manually execute the newly implemented function to ensure it works.
  • Submit a pull request in open-runtimes/examples and include screenshots of successful execution.

If you have questions, need any help, or just want to hang out, make sure to join us on our Discord server.

Happy Appwriting!

Metadata

Metadata

Assignees

Labels

good first issueGood for newcomershacktoberfestIssues that can win you some cool swags!product / functionsFixes and upgrades for the Appwrite Functions.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions