{"id":29890006,"url":"https://github.com/opsmatters/bitly-java-api","last_synced_at":"2025-10-16T21:56:43.200Z","repository":{"id":46904035,"uuid":"245828995","full_name":"opsmatters/bitly-java-api","owner":"opsmatters","description":"Java client library to execute operations on URLs using the Bitly API.","archived":false,"fork":false,"pushed_at":"2023-06-14T22:30:13.000Z","size":106,"stargazers_count":7,"open_issues_count":2,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-07-30T18:54:01.958Z","etag":null,"topics":["api","bitly","java"],"latest_commit_sha":null,"homepage":"https://opsmatters.com","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/opsmatters.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-03-08T14:26:43.000Z","updated_at":"2025-04-08T06:30:57.000Z","dependencies_parsed_at":"2022-09-14T11:21:58.455Z","dependency_job_id":null,"html_url":"https://github.com/opsmatters/bitly-java-api","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"purl":"pkg:github/opsmatters/bitly-java-api","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opsmatters%2Fbitly-java-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opsmatters%2Fbitly-java-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opsmatters%2Fbitly-java-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opsmatters%2Fbitly-java-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/opsmatters","download_url":"https://codeload.github.com/opsmatters/bitly-java-api/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opsmatters%2Fbitly-java-api/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":268126583,"owners_count":24200290,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-31T02:00:08.723Z","response_time":66,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","bitly","java"],"created_at":"2025-07-31T22:23:15.878Z","updated_at":"2025-10-16T21:56:38.146Z","avatar_url":"https://github.com/opsmatters.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"![opsmatters](https://i.imgur.com/VoLABc1.png)\n\n# Bitly Java API \n[![Build Status](https://travis-ci.org/opsmatters/bitly-java-api.svg?branch=master)](https://travis-ci.org/opsmatters/bitly-java-api)\n[![Maven Central](https://maven-badges.herokuapp.com/maven-central/com.opsmatters/bitly-java-api/badge.svg?style=blue)](https://maven-badges.herokuapp.com/maven-central/com.opsmatters/bitly-java-api)\n[![Javadocs](http://javadoc.io/badge/com.opsmatters/bitly-java-api.svg)](http://javadoc.io/doc/com.opsmatters/bitly-java-api)\n\nJava client library to execute operations on URLs using the [Bitly V4 API](https://dev.bitly.com/v4_documentation.html).\n\nThe following Bitly APIs are currently supported:\n\n### Bitlinks\n\n- [x] [Shorten a Bitlink (`POST /v4/shorten`)](https://dev.bitly.com/v4/#operation/createBitlink)\n- [x] [Expand a Bitlink (`POST /v4/expand`)](https://dev.bitly.com/v4/#operation/expandBitlink)\n- [x] [Retrieve a Bitlink (`GET /v4/bitlink/{bitlink}`)](https://dev.bitly.com/v4/#operation/getBitlink)\n- [x] [Create a Bitlink (`POST /v4/bitlinks`)](https://dev.bitly.com/v4/#operation/createFullBitlink)\n- [x] [Update a Bitlink (`PATCH /v4/bitlink/{bitlink}`)](https://dev.bitly.com/v4/#operation/updateBitlink)\n- [x] [Get Clicks for a Bitlink (`GET /v4/bitlink/{bitlink}/clicks`)](https://dev.bitly.com/v4/#operation/getClicksForBitlink)\n- [x] [Get Clicks Summary for a Bitlink (`GET /v4/bitlink/{bitlink}/clicks/summary`)](https://dev.bitly.com/v4/#operation/getClicksSummaryForBitlink)\n- [x] [Get Metrics for a Bitlink by Countries (`GET /v4/bitlinks/{bitlink}/countries`)](https://dev.bitly.com/v4/#operation/getMetricsForBitlinkByCountries)\n- [x] [Get Metrics for a Bitlink by Referrers (`GET /v4/bitlinks/{bitlink}/referrers`)](https://dev.bitly.com/v4/#operation/getMetricsForBitlinkByReferrers)\n- [x] [Get Metrics for a Bitlink by Referring Domains (`GET /v4/bitlinks/{bitlink}/referring_domains`)](https://dev.bitly.com/v4/#operation/getMetricsForBitlinkByReferringDomains)\n- [x] [Get Metrics for a Bitlink by Referrers by Domain (`GET /v4/bitlinks/{bitlink}/referrers_by_domains`)](https://dev.bitly.com/v4/#operation/getMetricsForBitlinkByReferrersByDomains)\n- [x] **PREMIUM** [Get a QR Code for a Bitlink (`GET /v4/{bitlink}/qr`)](https://dev.bitly.com/v4/#operation/getBitlinkQRCode)\n\n### Custom Bitlinks\n\n- [x] [Create Custom Bitlink (`POST /v4/custom_bitlinks`)](https://dev.bitly.com/v4/#operation/addCustomBitlink)\n- [x] **PREMIUM** [Retrieve Custom Bitlink (`GET /v4/custom_bitlinks/{custom_bitlink}`)](https://dev.bitly.com/v4/#operation/getCustomBitlink)\n- [x] **PREMIUM** [Update Custom Bitlink (`PATCH /v4/custom_bitlink/{custom_bitlink}`)](https://dev.bitly.com/v4/#operation/updateCustomBitlink)\n- [x] **PREMIUM** [Get Metrics for a Custom Bitlink by Destination (`GET /v4/custom_bitlinks/{custom_bitlink}/clicks_by_destination`)](https://dev.bitly.com/v4/#operation/getCustomBitlinkMetricsByDestination)\n\n### Groups\n\n- [x] [Retrieve Group (`GET /v4/groups/{group_guid}`)](https://dev.bitly.com/v4/#operation/getGroup)\n- [x] [Update Group (`PATCH /v4/groups/{group_guid}`)](https://dev.bitly.com/v4/#operation/updateGroup)\n- [x] [Retrieve Groups (`GET /v4/groups`)](https://dev.bitly.com/v4/#operation/getGroups)\n- [x] [Delete Group (`DELETE /v4/groups/{group_guid}`)](https://dev.bitly.com/v4/#operation/deleteGroup)\n- [x] [Retrieve Tags by Group (`GET /v4/groups/{group_guid}/tags`)](https://dev.bitly.com/v4/#operation/getGroupTags)\n- [x] [Retrieve Group Shorten Counts (`GET /v4/groups/{group_guid}/shorten_counts`)](https://dev.bitly.com/v4/#operation/getGroupShortenCounts)\n- [x] [Retrieve Group Preferences (`GET /v4/groups/{group_guid}/preferences`)](https://dev.bitly.com/v4/#operation/getGroupPreferences)\n- [x] [Update Group Preferences (`PATCH /v4/groups/{group_guid}/preferences`)](https://dev.bitly.com/v4/#operation/updateGroupPreferences)\n- [x] [Retrieve Bitlinks by Group (`GET /v4/groups/{group_guid}/bitlinks`)](https://dev.bitly.com/v4/#operation/getBitlinksByGroup)\n- [x] [Retrieve Sorted Bitlinks by Group (`GET /v4/groups/{group_guid}/bitlinks/{sort}`)](https://dev.bitly.com/v4/#operation/getSortedBitlinks)\n- [x] [Get Click Metrics for a Group by Countries (`GET /v4/groups/{group_guid}/countries`)](https://dev.bitly.com/v4/#operation/getGroupMetricsByCountries)\n- [x] [Get Click Metrics for a Group by Referring Networks (`GET /v4/groups/{group_guid}/referring_networks`)](https://dev.bitly.com/v4/#operation/GetGroupMetricsByReferringNetworks)\n\n### Organizations\n\n- [x] [Retrieve Organizations (`GET /v4/organizations`)](https://dev.bitly.com/v4/#operation/getOrganizations)\n- [x] [Retrieve Organization (`GET /v4/organizations/{organization_guid}`)](https://dev.bitly.com/v4/#operation/getOrganization)\n- [x] [Retrieve Organization Shorten Counts (`GET /v4/organizations/{organization_guid}/shorten_counts`)](https://dev.bitly.com/v4/#operation/getOrganizationShortenCounts)\n\n### Campaigns\n\n- [x] **PREMIUM** [Retrieve Campaign (`GET /v4/campaigns/{campaign_guid}`)](https://dev.bitly.com/v4/#operation/getCampaign)\n- [x] **PREMIUM** [Create Campaign (`POST /v4/campaigns`)](https://dev.bitly.com/v4/#operation/createCampaign)\n- [x] **PREMIUM** [Update Campaign (`PATCH /v4/campaigns/{campaign_guid}`)](https://dev.bitly.com/v4/#operation/updateCampaign)\n- [x] **PREMIUM** [Retrieve Campaigns (`GET /v4/campaigns`)](https://dev.bitly.com/v4/#operation/getCampaigns)\n\n### Campaign Channels\n\n- [x] **PREMIUM** [Retrieve Channel (`GET /v4/channels/{channel_guid}`)](https://dev.bitly.com/v4/#operation/getChannel)\n- [x] **PREMIUM** [Create Channel (`POST /v4/channels`)](https://dev.bitly.com/v4/#operation/createChannel)\n- [x] **PREMIUM** [Update Channel (`PATCH /v4/channels/{channel_guid}`)](https://dev.bitly.com/v4/#operation/updateChannel)\n- [x] **PREMIUM** [Retrieve Channels (`GET /v4/channels`)](https://dev.bitly.com/v4/#operation/getChannels)\n\n### Users\n\n- [x] [Retrieve User (`GET /v4/user`)](https://dev.bitly.com/v4/#operation/getUser)\n- [x] [Update User (`PATCH /v4/user`)](https://dev.bitly.com/v4/#operation/updateUser)\n\n### Webhooks\n\n- [x] **PREMIUM** [Retrieve a Webhook (`GET /v4/webhooks/{webhook_guid}`)](https://dev.bitly.com/v4/#operation/getWebhook)\n- [x] **PREMIUM** [Create a Webhook (`POST /v4/webhooks`)](https://dev.bitly.com/v4/#operation/createWebhook)\n- [x] **PREMIUM** [Update a Webhook (`PATCH /v4/webhooks/{webhook_guid}`)](https://dev.bitly.com/v4/#operation/updateWebhook)\n- [x] **PREMIUM** [Fetch all Webhooks for an Organization (`GET /v4/organizations/{organization_guid}/webhooks`)](https://dev.bitly.com/v4/#operation/getWebhooks)\n- [x] **PREMIUM** [Delete a Webhook (`DELETE /v4/webhooks/{webhook_guid}`)](https://dev.bitly.com/v4/#operation/deleteWebhook)\n\n### BSDs (Branded Short Domains)\n\n- [x] [Retrieve BSDs (`GET /v4/bsds`)](https://dev.bitly.com/v4/#operation/getBSDs)\n\n### OAuth Apps\n\n- [x] [Retrieve OAuth App (`GET /v4/apps/{client_id}`)](https://dev.bitly.com/v4/#operation/getOAuthApp)\n\n## Examples\n\nA detailed set of examples of the usage of each of the APIs can be found on [the API site](src/main/java/com/opsmatters/bitly/api).\n\n## Prerequisites\n\nA Bitly account with an access token.\nThe user needs to generate an [Access Token](https://support.bitly.com/hc/en-us/articles/230647907-How-do-I-find-my-OAuth-access-token-) \nto provide access via the [Bitly V4 API](https://dev.bitly.com/v4_documentation.html).\nThe Access Token is referenced in the documentation as the parameter \"YOUR_ACCESS_TOKEN\".\n\n## Installing\n\nFirst clone the repository using:\n```\n\u003e$ git clone https://github.com/opsmatters/bitly-java-api.git\n\u003e$ cd bitly-java-api\n```\n\nTo compile the source code, run all tests, and generate all artefacts (including sources, javadoc, etc):\n```\nmvn package -Dbitly.access_token=\"\u003cYOUR_ACCESS_TOKEN\u003e\"\n```\n\n## Running the tests\n\nTo execute the unit tests:\n```\nmvn clean test -Dbitly.access_token=\"\u003cYOUR_ACCESS_TOKEN\u003e\"\n```\n\nThe following tests are included:\n\n* testBitlinksServices: Operations on bitlinks such as shorten and expand.\n\n## Deployment\n\nThe build artefacts are hosted in The Maven Central Repository. \n\nAdd the following dependency to include the artefact within your project:\n```\n\u003cdependency\u003e\n  \u003cgroupId\u003ecom.opsmatters\u003c/groupId\u003e\n  \u003cartifactId\u003ebitly-java-api\u003c/artifactId\u003e\n  \u003cversion\u003e1.0.2\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n## Built With\n\n* [HttpComponents](https://hc.apache.org/httpcomponents-client-ga/) - RESTful Web Services in Java using HttpClient and HttpCore\n* [Gson](https://github.com/google/gson) - Java serialization/deserialization library\n* [Guava](https://github.com/google/guava/wiki) - An open-source set of common libraries for Java\n* [Maven](https://maven.apache.org/) - Dependency Management\n* [JUnit](http://junit.org/) - Unit testing framework\n\n## Contributing\n\nPlease read [CONTRIBUTING.md](https://www.contributor-covenant.org/version/1/4/code-of-conduct.html) for details on our code of conduct, and the process for submitting pull requests to us.\n\n## Versioning\n\nThis project use [SemVer](http://semver.org/) for versioning. For the versions available, see the [tags on this repository](https://github.com/opsmatters/bitly-java-api/tags). \n\n## Authors\n\n* **Gerald Curley** - *Initial work* - [opsmatters](https://github.com/opsmatters)\n\nSee also the list of [contributors](https://github.com/opsmatters/bitly-java-api/contributors) who participated in this project.\n\n## License\n\nThis project is licensed under the terms of the [Apache license 2.0](https://www.apache.org/licenses/LICENSE-2.0.html).\n\n\u003csub\u003eCopyright (c) 2020 OpsMatters\u003c/sub\u003e","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopsmatters%2Fbitly-java-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopsmatters%2Fbitly-java-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopsmatters%2Fbitly-java-api/lists"}