Baodi Di
Baodi Di

Reputation: 600

Does OAS3.0 support define header parameters in component?

I have one API yaml file contains 3 APIs and all of API need header parameters with same definition. would i know whether OAS 3.0 supports define same header parameters in the component and use $ref

/service1:
  /post:
    post:
      **parameters:
        - in: header
          name: X-partner**

/service2:
  /post:
    post:
      **parameters:
        - in: header
          name: X-partner**

/service3:
  /post:
    post:
      **parameters:
        - in: header
          name: X-partner**

how to define the X-partner in component so that I do not need to copy&paste every time? Thanks

Upvotes: 2

Views: 1596

Answers (1)

Helen
Helen

Reputation: 97962

Yes, you can define reusable header parameters (and other parameter types) in the global components/parameters section and reference them by using $ref.

openapi: 3.0.2
...

components:
  parameters:
    X-partner:
      in: header
      name: X-partner
      schema:
        type: string
      required: true

paths:
  /service1:
    post:
      parameters:
        - $ref: '#/components/parameters/X-partner'

Upvotes: 4

Related Questions