LayUp Technologies Auth Service API

The Auth Service API from LayUp Technologies — 6 operation(s) for auth service.

Operations 6

GET /v1/auth/apikey Warning: Calling this endpoint will replace any existing apikeys on your account #
POST /v1/auth/login Auth service login #
POST /v1/auth/register Auth service register #
GET /v1/auth/terminal-key Auth service generate terminal api key #
POST /v1/request-password-reset Auth service forgot password #
POST /v1/send-billing-settlements-change-request Auth service merchant billing changes request #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/layup-technologies-auth-service-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

layup-technologies-auth-service-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Layup endpoints Auth Service API
  version: 1.4.16
  description: Welcome to The Layup Swagger page.
servers:
- url: http://localhost:3000
- url: https://localhost:3000
- url: wss://localhost:3000
security:
- apiKey:
  - read
  - write
tags:
- name: Auth Service
paths:
  /v1/auth/apikey:
    get:
      summary: 'Warning: Calling this endpoint will replace any existing apikeys on your account'
      operationId: authService_GenerateApiKey
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/modelApiKeyResponse'
        '204':
          description: Successfully processed the request, no content.
        '403':
          description: Returned when the user does not have permission to access the resource.
        '404':
          description: Returned when the resource does not exist.
      tags:
      - Auth Service
  /v1/auth/login:
    post:
      operationId: authService_Login
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/modelUserResponse'
        '204':
          description: Successfully processed the request, no content.
        '403':
          description: Returned when the user does not have permission to access the resource.
        '404':
          description: Returned when the resource does not exist.
      tags:
      - Auth Service
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/modelLoginRequest'
        required: true
      summary: Auth service login
      x-summary-source: derived
  /v1/auth/register:
    post:
      operationId: authService_Register
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/modelUserResponse'
        '204':
          description: Successfully processed the request, no content.
        '403':
          description: Returned when the user does not have permission to access the resource.
        '404':
          description: Returned when the resource does not exist.
      parameters:
      - name: _id
        in: query
        required: false
        schema:
          type: string
      - name: avs
        in: query
        required: false
        schema:
          type: string
      - name: isRealtimeVerification
        in: query
        required: false
        schema:
          type: boolean
      tags:
      - Auth Service
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/modelUserRequest'
        required: true
      summary: Auth service register
      x-summary-source: derived
  /v1/auth/terminal-key:
    get:
      operationId: authService_GenerateTerminalApiKey
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/modelTerminalApiKeyResponse'
        '204':
          description: Successfully processed the request, no content.
        '403':
          description: Returned when the user does not have permission to access the resource.
        '404':
          description: Returned when the resource does not exist.
      parameters:
      - name: id
        in: query
        required: false
        schema:
          type: string
      tags:
      - Auth Service
      summary: Auth service generate terminal api key
      x-summary-source: derived
  /v1/request-password-reset:
    post:
      operationId: authService_ForgotPassword
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/modelForgotPasswordResponse'
        '204':
          description: Successfully processed the request, no content.
        '403':
          description: Returned when the user does not have permission to access the resource.
        '404':
          description: Returned when the resource does not exist.
      tags:
      - Auth Service
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/modelForgotPasswordRequest'
        required: true
      summary: Auth service forgot password
      x-summary-source: derived
  /v1/send-billing-settlements-change-request:
    post:
      operationId: authService_MerchantBillingChangesRequest
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/modelMerchantBillingSettlementResponse'
        '204':
          description: Successfully processed the request, no content.
        '403':
          description: Returned when the user does not have permission to access the resource.
        '404':
          description: Returned when the resource does not exist.
      tags:
      - Auth Service
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/modelMerchantBillingSettlementRequest'
        required: true
      summary: Auth service merchant billing changes request
      x-summary-source: derived
components:
  schemas:
    modelBankValidation:
      type: object
      properties:
        verified:
          type: boolean
        value:
          type: string
    modelBillingAddress:
      type: object
      properties:
        country:
          type: string
        province:
          type: string
        streetAddress:
          type: string
        city:
          type: string
        postalCode:
          type: string
    modelMerchantBillingSettlementRequest:
      type: object
      properties:
        merchantName:
          type: string
        userName:
          type: string
        userEmail:
          type: string
        merchantId:
          type: string
        merchantContactNumber:
          type: string
        message:
          type: string
    modelMerchants:
      type: object
      properties:
        _id:
          type: string
        name:
          type: string
    modelMerchantOnboarding:
      type: object
      properties:
        name:
          type: string
        physicalAddress:
          $ref: '#/components/schemas/modelBillingAddress'
    modelTerminalApiKeyResponse:
      type: object
      properties:
        terminalApiKey:
          type: string
    modelApiKeyResponse:
      type: object
      properties:
        apikey:
          type: string
    modelForgotPasswordResponse:
      type: object
      properties:
        status:
          type: string
    modelForgotPasswordRequest:
      type: object
      properties:
        value:
          type: string
        channel:
          type: string
        redirectTo:
          type: string
        isRealtimeVerification:
          type: boolean
    modelLoginRequest:
      type: object
      properties:
        username:
          type: string
          required:
          - 'true'
        password:
          type: string
          format: password
          required:
          - 'true'
        rememberMe:
          type: boolean
    modelUserResponse:
      type: object
      properties:
        _id:
          type: string
        username:
          type: string
        email:
          type: string
          format: email
        idNumber:
          type: string
        address:
          type: string
        postalCode:
          type: string
        city:
          type: string
        province:
          type: string
        country:
          type: string
        role:
          type: string
          enum:
          - CLIENT
          - MERCHANT
          - ADMIN
          default: CLIENT
        active:
          type: boolean
        merchantId:
          type: string
        cellNumber:
          type: string
        dateOfBirth:
          type: string
        name:
          type: string
        verified:
          type: boolean
        timestamp:
          type: number
          format: double
        hasPassword:
          type: boolean
        verifiedEmail:
          type: boolean
        verifiedMobile:
          type: boolean
        merchantRole:
          type: string
        bankDetails:
          $ref: '#/components/schemas/modelBankInfo'
        merchantOnboarding:
          $ref: '#/components/schemas/modelMerchantOnboarding'
        bankValidationPendingReference:
          type: string
        oneTimePass:
          type: string
        passportState:
          type: string
        passportNumber:
          type: string
        profileImage:
          type: string
        merchantIds:
          type: array
          items:
            type: string
        merchants:
          type: array
          items:
            type: object
            $ref: '#/components/schemas/modelMerchants'
        isMerchantOwner:
          type: boolean
        twoFactorAuthenticationRequired:
          type: boolean
    modelUserRequest:
      type: object
      properties:
        username:
          type: string
        email:
          type: string
          format: email
        idNumber:
          type: string
        address:
          type: string
        postalCode:
          type: string
        city:
          type: string
        province:
          type: string
        country:
          type: string
        role:
          type: string
          enum:
          - CLIENT
          - MERCHANT
          - ADMIN
          default: CLIENT
        password:
          type: string
        active:
          type: boolean
        name:
          type: string
        dateOfBirth:
          type: string
        cellNumber:
          type: string
          pattern: ^\+27\d{9}$
        redirectTo:
          type: string
        apikey:
          type: string
        shouldWelcome:
          type: boolean
        merchantCreatePlan:
          type: boolean
        merchantId:
          type: string
        merchantRole:
          type: string
        bankDetails:
          $ref: '#/components/schemas/modelBankInfo'
        merchantOnboarding:
          $ref: '#/components/schemas/modelMerchantOnboarding'
        bankValidationPendingReference:
          type: string
        passportState:
          type: string
        passportNumber:
          type: string
        profileImage:
          type: string
        merchantIds:
          type: array
          items:
            type: string
        isMerchantOwner:
          type: boolean
    modelBankInfo:
      type: object
      properties:
        bankName:
          $ref: '#/components/schemas/modelBankValidation'
        account:
          $ref: '#/components/schemas/modelBankValidation'
        accountType:
          $ref: '#/components/schemas/modelBankValidation'
        branchCode:
          $ref: '#/components/schemas/modelBankValidation'
        idNumber:
          $ref: '#/components/schemas/modelBankValidation'
        verified:
          type: boolean
        clientName:
          $ref: '#/components/schemas/modelBankValidation'
        cellNumber:
          $ref: '#/components/schemas/modelBankValidation'
        initials:
          $ref: '#/components/schemas/modelBankValidation'
        email:
          $ref: '#/components/schemas/modelBankValidation'
        validationResponseErrors:
          type: array
          items:
            type: string
    modelMerchantBillingSettlementResponse:
      type: object
      properties:
        status:
          type: string
  securitySchemes:
    apiKey:
      type: apiKey
      name: apikey
      in: header