> ## Documentation Index
> Fetch the complete documentation index at: https://docs.bango.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Service echo



## OpenAPI

````yaml /openapi/legacy/resale/content-provider-to-bango/openapi.yaml post /v1/echo/{echoRequestId}
openapi: 3.0.0
info:
  version: 1.1.0
  title: Resale Merchant - Server API
  description: |
    Changelog
    * 1.2.0:
      * Adding optional `sharedCustomerId` to all responses
    * 1.1.0:
      * Adding `extraInformation` to `PATCH /v1/entitlement/{merchantEntitlementId}` and response object
      * Adding `merchantExtensionData` to response object
      * Adding `merchantBangoExtensionData` to response object
      * Adding `customerId` and `resellerId` to response object
      * Adding `POST /v1/merchant/entitlement/report` to retrieve entitlements by `bangoUserId`
    * 1.0.4:
      * Adding `financeData` to:
        * `POST /v1/entitlement/activate/{merchantEntitlementId}`
        * `PATCH /v1/entitlement/{merchantEntitlementId}` 
        * `POST /v1/entitlement/terminate/{merchantEntitlementId}`
        * Response object 
    * 1.0.3: 
      * Updating API spec to be OpenAPI3
      * Adding the `entitlementBenefits` to `PATCH /v1/entitlement/{merchantEntitlementId}`
    * 1.0.2: Initial release
servers:
  - description: SwaggerHub API Auto Mocking
    url: >-
      https://virtserver.swaggerhub.com/BangoProducts/MerchantInterface_Server_API/1.1.0
security:
  - basic: []
paths:
  /v1/echo/{echoRequestId}:
    post:
      tags:
        - Echo
      summary: Service echo
      operationId: echo
      parameters:
        - name: X-RequestIdentifier
          in: header
          description: >-
            Request unique identifier. If present, this id will be used for
            idempotency.
          schema:
            type: string
        - name: echoRequestId
          in: path
          description: Echo request identifier.
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Echo request successful
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EchoResponse'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BadRequest'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Unauthorized'
        '429':
          description: Too many requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TooManyRequests'
        '500':
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalServerError'
        '503':
          description: Service unavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceUnavailable'
components:
  schemas:
    EchoResponse:
      type: object
      properties:
        responseCode:
          type: string
          example: OK
        responseMessage:
          type: string
          example: Success
        echo:
          type: string
          example: a25100b8-4e0c-4e37-b921-cac9cb1e930f
    BadRequest:
      type: object
      properties:
        responseCode:
          type: string
          example: BAD_REQUEST
        responseMessage:
          type: string
          example: Invalid request
    Unauthorized:
      type: object
      properties:
        responseCode:
          type: string
          example: UNAUTHORIZED
        responseMessage:
          type: string
          example: You have not provided adequate credentials to access this resource.
    TooManyRequests:
      type: object
      properties:
        responseCode:
          type: string
          example: TOO_MANY_REQUESTS
        responseMessage:
          type: string
          example: Request limit reached. Please try again later
    InternalServerError:
      type: object
      properties:
        responseCode:
          type: string
          example: INTERNAL_ERROR
        responseMessage:
          type: string
          example: >-
            The server encountered an unexpected condition which prevented it
            from fulfilling the request
    ServiceUnavailable:
      type: object
      properties:
        responseCode:
          type: string
          example: SERVICE_UNAVAILABLE
        responseMessage:
          type: string
          example: >-
            The server is undergoing maintenance and is not available. Please,
            try again later
  securitySchemes:
    basic:
      type: http
      description: Basic authentication
      scheme: basic

````