Obol Terms And Conditions API

The Terms And Conditions API from Obol — 2 operation(s) for terms and conditions.

OpenAPI Specification

obol-terms-and-conditions-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: Obol Address Terms And Conditions API
  description: "## What is this API?\n\nThis API is for creating and managing [Distributed Validators](https://docs.obol.tech/docs/int/key-concepts#distributed-validator). This API works in tandem with Obol's [Distributed Validator Launchpad](https://hoodi.launchpad.obol.org), a dapp designed to allow people to authenticate their counterparties and agree to the terms of a Distributed Validator Cluster. This API will be made more easy for code-only interaction in the coming quarters with the release of the Obol-SDK. \n\nRead more about Obol and how to use the [launchpad](https://hoodi.launchpad.obol.org) on our [docs site](https://docs.obol.tech/). \n\nFor enquiries:"
  version: v1.0.0-local
  contact:
    name: Obol Labs
    url: https://obol.tech
    email: support@obol.tech
servers:
- url: https://api.obol.tech
  description: Production environment
- url: http://localhost:3000
  description: Local development server
- url: https://localhost:3000
  description: HTTPS Local development server
tags:
- name: Terms And Conditions
paths:
  /v1/termsAndConditions:
    post:
      description: Saves user's signature to latest [Obol's terms and conditions](https://obol.tech/terms.pdf) hash and it's version
      operationId: TermsAndConditionsController_signTermsAndConditions_v1
      parameters:
      - name: authorization
        required: true
        in: header
        description: EIP712 terms and conditions hash as bearer token
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TermsAndConditionsDto'
      responses:
        '201':
          description: success message
        '400':
          description: Invalid terms and conditions hash
        '401':
          description: Signature verification failed
        '500':
          description: An unknown error occurred
      security:
      - bearer: []
      summary: Saves user's approval latest terms and conditions
      tags:
      - Terms And Conditions
  /v1/termsAndConditions/{address}:
    get:
      description: This endpoint is used to check whether the Terms and Conditions has been signed by the user.
      operationId: TermsAndConditionsController_getTermsAndConditionsSigned_v1
      parameters:
      - name: address
        required: true
        in: path
        description: The address to check the Terms and Conditions.
        schema:
          type: string
      responses:
        '200':
          description: This value returns true if the Terms and Conditions have been signed; otherwise, it returns false.
          content:
            application/json:
              schema:
                anyOf:
                - $ref: '#/components/schemas/TermsAndConditions'
        '400':
          description: The Address provided is not valid
        '500':
          description: An unknown error occurred
      summary: Verify Signature on Terms and Conditions
      tags:
      - Terms And Conditions
components:
  schemas:
    TermsAndConditionsDto:
      type: object
      properties:
        address:
          type: string
          example: v1.0.0
        version:
          type: number
          example: 1
        terms_and_conditions_hash:
          type: string
          example: ''
        fork_version:
          type: string
          enum:
          - mainnet
          - '0x00000000'
          - goerli
          - '0x00001020'
          - gnosis
          - '0x00000064'
          - sepolia
          - '0x90000069'
          - hoodi
          - '0x10000910'
          example: '0x00000000'
      required:
      - address
      - version
      - terms_and_conditions_hash
    TermsAndConditions:
      type: object
      properties:
        isTermsAndConditionsSigned:
          type: boolean
          description: Boolean Value Indicating if Terms and Conditions Have Been Signed
      required:
      - isTermsAndConditionsSigned
  securitySchemes:
    bearer:
      scheme: bearer
      bearerFormat: JWT
      type: http