For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
Book a demoLog inStart for free
  • Overview
    • What is an API definition?
    • Project structure
      • Overview
      • Overlays
      • Overrides
      • Authentication
      • Servers
      • Sync your specification
        • Overview
        • API version
        • Audiences
        • Availability
        • Base path
        • Default values
        • Enum descriptions, names, and availability
        • Request + response examples
        • API Explorer control
        • Global headers
        • Ignoring elements
        • SDK method names
        • SDK variables
        • Tag display names
        • Parameter names
        • Property names
        • Idempotency
        • Pagination
        • Retry behavior
        • Schema names
        • Server names and URL templating
      • generators.yml reference
Checking status...
SOC2Soc 2 Type II
© 2026 Fern • Birch Solutions, Inc., a Postman company

Documentation

SDKsDocsAsk FernCLI Reference

API Definitions

OpenAPIAsyncAPIOpenRPCgRPC

Resources

BlogSupportPricing

Company

Brand KitPrivacy PolicyTerms of Service
LogoLogo
Book a demoLog inStart for free
On this page
  • Top level methods
  • Multiple levels of nesting
OpenAPIExtensions

Customize SDK method names

||View as Markdown|
Was this page helpful?
Edit this page
Previous

Ignoring elements

Next

SDK variables

Use the x-fern-sdk-group-name and x-fern-sdk-method-name extensions to control how endpoints are organized in your SDKs and CLIs.

Fern automatically parses operationId

If no extensions are present, Fern uses your operation ID to generate SDK method names. Format operation IDs as {tag_name}_{operation_name} (example: users_get) to automatically generate methods like users.get(). If the operation ID doesn’t start with a tag, Fern uses it directly as the method name.

In the example below, Fern will generate a method called client.users.create() for the POST /users endpoint.

openapi.yml
1paths:
2 /users:
3 post:
4 x-fern-sdk-group-name: users
5 x-fern-sdk-method-name: create

Top level methods

If you omit the x-fern-sdk-group-name extension, the generated SDK method will live at the root of the client rather than nested under a resource group. In the example below, Fern will generate a method called client.send():

openapi.yml
1paths:
2 /send:
3 post:
4 x-fern-sdk-method-name: send

Multiple levels of nesting

See how merge.dev uses nested groups here.

If you add more than one x-fern-sdk-group-name extension, then the generated SDK will nest group names. The generated SDK method preserves the order of group names.

In the example below, Fern will generate a method called client.users.notifications.send():

openapi.yml
1paths:
2 /users/notifications:
3 post:
4 x-fern-sdk-group-name:
5 - users
6 - notifications
7 x-fern-sdk-method-name: send