Crossref API Example
This example demonstrates using langchain-openapi with the public Crossref REST API to search academic works and literature.
Code Example
import asyncio
from langchain_openapi_tools import OpenAPIToolkit, RetryMiddleware, LoggingMiddleware
async def main():
# 1. Initialize toolkit with retries and logging
toolkit = OpenAPIToolkit.from_url(
"https://api.crossref.org/swagger-docs",
middleware=[
LoggingMiddleware(),
RetryMiddleware(retries=3),
],
)
# 2. Get tools
tools = toolkit.get_tools()
print(f"Loaded {len(tools)} tools from Crossref OpenAPI spec.")
# 3. Execute search tool
search_tool = toolkit.get_tool("search_works")
if search_tool:
result = await search_tool.ainvoke({"query": "LangChain"})
print("Search Results:", result)
if __name__ == "__main__":
asyncio.run(main())