FactSet Mergers and Acquisitions API

  • SECTIONS
  • Overview
  • API Definition
  • SDK Libraries
  • Notebooks
  • Code Snippet
  • Changelog
Overview

The FactSet Mergers and Acquisitions API provides access to key transactions and pricing metrics on over 60,000 globally traded deals. Reference a Global Universe of Mergers and Acquisitions (M&A) transactions where the target of the deal is a Publicly traded Company. Review premiums, multiples and fundamental data to gather insights on deals and create predictive models based on different deal characteristics.

Monetary values returned by this API are converted and represented in USD.

How to Programmatically Download API Specification file:

Please use the below link to download the FactSet M&A API Specification file in .yaml. You must be authorized for this API to extract. This specification can then be used for Codegen to create your own SDKs. You can also access by selecting the "Download Spec" button to the right of the version below.

https://api.factset.com/content/factset-mergers-acquisitions/v1/spec/swagger.yaml

This API is rate-limited to 10 requests per second and 10 concurrent requests per user.

API Definition
SDK Libraries
Notebooks
Getting Started - Jupyter Notebook
Code Snippet
Sample code to retrieve the company deals using FactSet And Acquisitions API
# Imports
import pandas as pd

# FDS Packages 
import fds.sdk.FactSetMergersandAcquisitions  # To install, please use "pip install fds.sdk.FactSetMergersandAcquisitions==1.0.0"
from fds.sdk.FactSetMergersandAcquisitions.api import deals_api
from fds.sdk.FactSetMergersandAcquisitions.models import *
from fds.sdk.utils.authentication import ConfidentialClient # To install, please use "pip install fds.sdk.utils"

# Authentication using OAuth
configuration = fds.sdk.FactSetMergersandAcquisitions.Configuration(
    fds_oauth_client=ConfidentialClient('<PATH_TO_CONFIG_FILE>')  # Path to config file from OAuth registration
)

# Get By Company Data
with fds.sdk.FactSetMergersandAcquisitions.ApiClient(configuration) as api_client:
    
    # Create an instance of the API class
    api_instance = deals_api.DealsApi(api_client)

    # Define Parameters
    deals_request = DealsRequest(
        data=DealsRequestBody(
            ids=Ids(["IBM-US"]),
            start_date="2023-10-30",
            end_date="2023-12-31",
        ),
    ) 

    # Send Request
    api_response = api_instance.get_deals_by_company_list(deals_request)

    # Convert to Pandas Dataframe
    results = pd.DataFrame(api_response.to_dict()['data'])
    print(results)
Changelog

v1.0.0

Summary

FactSet M&A API Production Release: 2024/04/25

Functionality Additions

  • /deals/by-company: Gets deals for a specified list of companies within a date range. Deals returned are any in which the requested company is involved as either the buyer, seller, or target. The response of this endpoint includes dealId which can be sent to the /deals/details endpoint for more information about the deal.
  • /delas/public-targets: Gets deals in which the target is a public company for a specified date range and status. The response of this endpoint includes dealId which can be sent to the /deals/details endpoint for more information about the deal.
  • /deals/details: retrieves the yield information like yield to maturity, yield to worst, benchmark yield to maturity and yield to call provided by Markit for a specified date range and frequency. Gets deal details for a specified list of FactSet deal identifiers.