Bitly integrationBitly logo

Bitly integration for AI agents.

Bitly integration for AI agents with secure authentication and server-side credential injection. Open Connector runs the OAuth, seals the token in an encrypted vault, and serves Bitly tools to your agent over MCP or a typed API — credentials injected server-side, every call audited, nothing leaving your infrastructure. Open source (AGPL-3.0) and self-hostable.

What your agents can do

Real Bitly actions, managed and audited.

Your user connects Bitly once; your agent can then use the Bitly API to shorten links, manage bitlinks, inspect click metrics, groups, organizations, QR codes, campaigns, and webhooks — scoped to the OAuth permissions you grant and the tool allowlist you configure. Every action is least-privilege and written to a tamper-evident audit trail.

  1. 1

    Your user grants Bitly access once (OAuth) — the token lands in the vault.

  2. 2

    Your agent calls a tool over MCP or the typed API; Open Connector injects the credential server-side.

  3. 3

    Every routed call appends a hash-chained audit record — nothing leaves your infra.

Tools & triggers

Supported Bitly tools.

91 tools are generated from the published Bitly catalog. Descriptions are plain text; each action remains subject to its configured authentication and tool allowlist.

Showing 91 tools. All published catalog entries are included in this page's server-rendered HTML.

Add Custom Bitlink
Add a keyword (or "custom back-half") to a Bitlink with a Custom Domain (domains must match). This endpoint can also be used for initial redirects to a link.
Custom Bitlinks
Shorten a Link
Converts a long url to a Bitlink. You may see errors returned from this endpoint - "BRANDED_LINK_MONTHLY_LIMIT_EXCEEDED" occurs if you have shortened more links than your account is configured for for the month, and "DNS_CONFIGURATION_ERROR" occurs if you are attempting to shorten links against a custom domain which doesn't have DNS properly configured.
Bitlinks
Create Campaign
Creates a new campaign.
Campaigns
Create Channel
Creates a new channel.
Campaigns
Create a Bitlink
Converts a long url to a Bitlink and sets additional parameters. You may see errors returned from this endpoint - "BRANDED_LINK_MONTHLY_LIMIT_EXCEEDED" occurs if you have shortened more links than your account is configured for for the month, and "DNS_CONFIGURATION_ERROR" occurs if you are attempting to shorten links against a custom domain which doesn't have DNS properly configured.
Bitlinks
Create a QR Code
Create a new QR Code and return its metadata
QR Codes
Generate a static QR Code image
Generate a static QR code image without creating or saving a QR code resource. SVG and PNG output are supported via the Accept header Contact your Account Manager to discuss enabling this feature for your account. The `render_customizations` field supports basic appearance options. Customizations that require the rasterize API are not supported: `gradient`, `background_gradient`, `frame`, `text`, and `logo`. The Accept header controls the response format: - `application/json` (default): Returns a JSON object with the image as a base64-encoded byte string. - `image/svg+xml`: Returns the raw SVG image. - `image/png`: Returns the raw PNG image.
QR Codes
Create Webhook
Creates a webhook.
Webhooks
Delete a Bitlink
Delete an unedited hash Bitlink.
Bitlinks
Delete a QR Code
Delete a QR Code that has not been redirected and is not for a custom link. Also deletes the associated link (if applicable).
QR Codes
Delete Webhook
Deletes a webhook.
Webhooks
Expand a Bitlink
Returns the short link and long URL for the specified link.
Bitlinks
Retrieve a Bitlink
Returns information for the specified link.
Bitlinks
Retrieve Bitlinks by Group
Returns a paginated collection of Bitlinks for a group. The list of custom bitlinks has newest entries first.
Bitlinks
Get BSDs
Fetch all Branded Short Domains
BSDs
Retrieve a Campaign
Returns details for a campaign.
Campaigns
Retrieve Campaigns
Returns the campaigns for the current authenticated user.
Campaigns
Get a Channel
Returns a channel's details.
Campaigns
Retrieve Channels
Returns the channels available to a user.
Campaigns
Get Clicks for a Bitlink
Returns the click counts for the specified link in an array based on a date.
Bitlinks
Get Clicks for a Custom Bitlink's Entire History
Returns the click counts for the specified link. This returns an array with clicks based on a date.
Custom Bitlinks
Get a Clicks Summary for a Bitlink
Returns the click counts for the specified link rolled up into a single field.
Bitlinks
Retrieve Custom Bitlink
Returns the details and history of the specified link.
Custom Bitlinks
Get Metrics for a Custom Bitlink by Destination
Returns click metrics for the specified link by its historical destinations.
Custom Bitlinks
Get Engagement Counts for a Bitlink
Returns an array of engagement counts for the specified link. The array is comprised of button click, click and scan counts for each time window, where the window is based on the provided unit.
Bitlinks
Get an Engagement Count Summary for a Bitlink
Returns the engagement counts for the specified link rolled up into a single field.
Bitlinks
Retrieve a Group
Returns details for a group.
Groups
Get clicks by group
get number of clicks on bitlinks in a group
Groups
Get Scan Metrics for a Group by City
Get QR code scan metrics for a group broken down by city.
Groups
Get Scan Metrics for a Group by Country
Get QR code scan metrics for a group broken down by country.
Groups
Get Scan Metrics for a Group Over Time
Get QR code scan metrics over time for a group.
Groups
Get limit usage for a group
Get a group's current feature limit usage, optionally provide limit name(s) for usage on specific limit(s)
Groups
Get historical usage for a group
Get a group's historical usage for specific limit(s) and date range. Refer to GET /v4/groups/{group_guid}/feature_usage endpoint response for available limit names.
Groups
Get Group Link Clicks by City
Get link clicks by city for all links in a group.
Groups
Get Group Link Clicks by Country
Get link clicks by country for all links in a group.
Groups
Get Group Link Clicks by Device
Get link clicks by device for all links in a group.
Groups
Get Group Link Clicks by Referrer
Get link clicks by referrer for all links in a group.
Groups
Get Group Link Clicks Over Time
Get link clicks over time for all links in a group.
Groups
Get Click Metrics for a Group by City
Returns the geographic origins of click traffic by city for the specified group.
Groups
Get Click Metrics for a Group by Country
Returns the geographic origins of click traffic by country for the specified group.
Groups
Get Click Metrics for a Group by Device Type
Returns the device types generating click traffic to the specified group's links.
Groups
Get Click Metrics for a Group by Referrer
Returns metrics by referrer for the specified group's links.
Groups
Get Click Metrics for a Group by Referring Networks
Returns metrics by referring networks for the specified group's links.
Groups
Get Group Metrics Over Time
Get group engagement metrics over time for all links in a group.
Groups
Retrieve Group Preferences
Returns preferences for the specified group.
Groups
Retrieve Group Shorten Counts
Returns all the shorten counts for a group.
Groups
Retrieve Tags by Group
Returns the tags currently used in the specified group. Maximum 1000.
Groups
Get Top Performing QR Codes for a Group
Get top performing QR codes by scan count for all codes in a group.
Groups
Get Group Top Performing Links by Click
Get top performing links by click for all links in a group.
Groups
Get Group Top Performing Links by Engagement
Get top performing links by engagement for all links in a group.
Groups
Retrieve Groups
Returns a list of groups in the organization.
Groups
Get Metrics for a Bitlink by City
Returns the city origins of click traffic for the specified link.
Bitlinks
Get Metrics for a Bitlink by Country
Returns the country origins of click traffic for the specified link.
Bitlinks
Get Metrics for a Bitlink by Device Type
Returns the device types generating click traffic to the specified link.
Bitlinks
Get Metrics for a Bitlink by Referrer Name
Returns referrer click counts for the specified link.
Bitlinks
Get Metrics for a Bitlink by Referrers
Returns referrer click counts for the specified link.
Bitlinks
Get Metrics for a Bitlink by Referrers by Domain
Returns click metrics grouped by referrers for the specified link.
Bitlinks
Get Metrics for a Bitlink by Referring Domains
Returns the referring domain click counts for the specified link.
Bitlinks
Retrieve OAuth App
Retrieve the details for the provided OAuth App client ID
getoauthapp
Retrieve an Organization
Retrive details for the specified organization.
Organizations
Get Shorten Counts for an Organization
Returns the shorten counts for a specific organization over a specified time period.
Organizations
Get Shorten Counts for an Organization by Group
Returns the shorten counts for a specific organization by group for the current month.
Organizations
Retrieve Organizations
Retrieve a list of organizations for the authenticated user. By default, only organizations permitted by the token's allowed_orgs are returned. Use include_all=true to return all organizations regardless of token restrictions. Each organization is annotated with its authentication requirements (require_sso, require_2fa) when configured.
Organizations
Get Plan Limits
Returns all plan limits and counts available for an organization.
Organizations
Get Platform Limits
Fetch all platform limits and counts available for an organization
User
Retrieve a QR Code
Gets the QR code with a matching id.
QR Codes
Retrieve a QR Code image
Get the image of a given QR Code. The Accept header controls how this is returned (options are "application/json", "image/svg+xml", and "image/png"). If the Accept header is "application/json" the format query parameter will determine the image format inside of the json (which will be base64 encoded and prefixed with its mime type as would be suitable for a HTML image src tag). To Return the QR Code image itself, set the Accept header to "image/svg+xml" or "image/png", or remove the Accept header and set the format query parameter to “svg” or “png” (if no format is specified the default will be “svg”).
QR Codes
Get Scans for a QR Code
Returns an array of scan counts for the specified QR code. The array is comprised of scan counts for each time window, where the window is based on the provided unit.
QR Codes
Get Scans for a QR Code by Browser
Returns the browsers generating scan traffic to the specified QR Code.
QR Codes
Get Metrics for a QR Code by City
Returns the city origins of scan traffic for the specified QR Code.
QR Codes
Get Scans for a QR Code by Country
Returns the country origins of scan traffic for the specified QR Code.
QR Codes
Get Scans for a QR Code by Device OS
Returns the device os generating scan traffic for the specified QR Code.
QR Codes
Get Scans Summary for a QR Code
Returns the scan counts for a QR Code rolled up into a single field for a specified time window, where the window is based on the provided unit.
QR Codes
Retrieve Sorted Bitlinks for Group
Returns a list of Bitlinks sorted by group. The list of custom bitlinks has newest entries first.
Bitlinks
Retrieve Top Links and Decoupled QR Codes by Engagements
Returns the bitlinks and decoupled QR codes in a group with the most engagements over the requested time window, ranked together in descending order by engagement count. Bitlinks and decoupled QR codes are returned in separate lists; `sorted_links` preserves the unified descending-by-count ordering across both, with each entry's id referencing either a bitlink or a QR code guid.
Bitlinks
Retrieve a User
Returns information for the current authenticated user.
User
Retrieve Webhook
Returns a webhook.
Webhooks
Get Webhooks
Fetch all webhooks available for an Organization
Webhooks
Retrieve QR Codes by Group
Retrieves a list of QR codes matching the filter settings. Values are in reverse chronological order. The pagination occurs by calling the next link in the pagination response object.
QR Codes
Create an inline CSV export for a group
Build a CSV export synchronously and return it inline as a base64 data URI plus metadata. The export_type field selects the CSV shape: link_engagements_batch (engagement metrics for explicit bitlinks or a filter), links_list (link metadata roster), or qr_codes_list (QR code metadata roster). Row caps apply per request: 200 rows when metrics are included (link_engagements_batch, or include_metrics on a list export); 1000 rows for metadata-only list exports. When the match set exceeds the cap, truncated is true and only the first cap rows are returned; row_count reports how many data rows are in the CSV.
Groups
Update a Bitlink
Updates fields in the specified link. To redirect the link (i.e. to update the Long URL), use the long_url parameter. This will always charge an encode limit.
Bitlinks
Bulk update bitlinks
Bulk update can add or remove tags or archive up to 100 links at a time; The response includes a list of bitlink ids that were updated.
Bitlinks
Update Campaign
Updates a campaign's details.
Campaigns
Update a Channel
Updates an existing channel.
Campaigns
Update Custom Bitlink
Move a keyword (or custom back-half) to a different Bitlink (domains must match).
Custom Bitlinks
Update a Group
Updates the details of a group.
Groups
Update Group Preferences
Updates preferences for a group.
Groups
Update a QR Code
Updates the QR code with a matching id and returns it.
QR Codes
Update a User
Update fields in the user
User
Update Webhook
Update a webhook
Webhooks
Verify Webhook
Sends ping event to test webhook configuration.
Webhooks
FAQ

Bitly integration, answered

How do AI agents use Bitly through Open Connector?
Your user connects Bitly once with one of its cataloged authentication methods. Open Connector stores the credential in an encrypted vault and exposes Bitly tools to your agent over MCP or a typed API, with credentials injected server-side on each call.
Is this a Bitly MCP server?
Yes. Open Connector can serve Bitly as a named MCP server with a scoped allowlist and a per-user connection URL, so any MCP client can call Bitly actions with credentials injected server-side.
Where do Bitly credentials live?
In your own infrastructure. Open Connector keeps credentials in its own vault and injects them at call time, so they never leave your environment.

Give your agents Bitly — keep the keys.

Open source, self-hostable, with Bitly credentials that never leave your infrastructure. Run it from source today.