Warning This repository is no longer recommended or maintained and has now been archived. Huge thanks to the original authors and contributors for providing this to our community. Should you wish to maintain your own version of this repository, you are welcome to fork this repository and continue developing it there.
Circle Interactions to Orbit Workspace
Add your Circle interactions into your Orbit workspace with this community-built integration.
✨ This is a community project. The Orbit team does its best to maintain it and keep it up to date with any recent API changes.We welcome community contributions to make sure that it stays current. ✨ |
---|
First Time Setup
To set up this integration you will need your Circle API key and your Circle community URL. See the below table for instructions on where to find it, along with your Orbit API credentials.
Application Credentials
The application requires the following environment variables:
Variable | Description | More Info |
---|---|---|
CIRCLE_API_KEY |
Circle API key | Create a new API key in the API section in your User Settings |
CIRCLE_URL |
Circle community URL | This is your Circle custom URL, for example: https://orbit.circle.so
|
ORBIT_API_KEY |
API key for Orbit | Found in Account Settings in your Orbit workspace |
ORBIT_WORKSPACE_ID |
ID for your Orbit workspace | Last part of the Orbit workspace URL, i.e. https://app.orbit.love/my-workspace , the ID is my-workspace
|
Package Usage
Install the package with the following command
$ gem install circle_orbit
Then, run bundle install
from your terminal.
You can instantiate a client by either passing in the required credentials during instantiation or by providing them in your .env
file.
Instantiation with credentials:
client = CircleOrbit::Client.new(
orbit_api_key: YOUR_API_KEY,
orbit_workspace_id: YOUR_ORBIT_WORKSPACE_ID,
circle_api_key: YOUR_CIRCLE_API_KEY,
circle_url: YOUR_CIRCLE_URL
)
Instantiation with credentials in dotenv file:
client = CircleOrbit::Client.new
Performing a Historical Import
You may want to perform a one-time historical import to fetch all your previous Circle interactions and bring them into your Orbit workspace. To do so, instantiate your client
with the historical_import
flag:
client = CircleOrbit::Client.new(
historical_import: true
)
Post New Spaces Posts to Orbit Workspace
You can use the gem to get new posts in your Circle Spaces and share them as custom activities to your Orbit workspace by using the #posts
method on your client instance
:
client.posts
Post New Spaces Comments to Orbit Workspace
You can use the gem to get new comments on posts in your Circle Spaces and share them as custom activities to your Orbit workspace by using the #posts
method on your client instance
:
client.comments
CLI Usage
You can also use this package with the included CLI. To use the CLI pass in the required environment variables on the command line before invoking the CLI.
To check for new posts:
$ ORBIT_API_KEY=... ORBIT_WORKSPACE_ID=... CIRCLE_API_KEY=... CIRCLE_URL=... bundle exec circle_orbit --check-posts
To check for new comments on posts:
$ ORBIT_API_KEY=... ORBIT_WORKSPACE_ID=... CIRCLE_API_KEY=... CIRCLE_URL=... bundle exec circle_orbit --check-comments
Add the --historical-import
flag to your CLI command to perform a historical import of all your Circle interactions using the CLI.
GitHub Actions Automation Setup
⚡ You can set up this integration in a matter of minutes using our GitHub Actions template. It will run regularly to add new activities to your Orbit workspace. All you need is a GitHub account.
See our guide for setting up this automation
Contributing
We 💜 contributions from everyone! Check out the Contributing Guidelines for more information.
License
This project is under the MIT License.
Code of Conduct
This project uses the Contributor Code of Conduct. We ask everyone to please adhere by its guidelines.