RunBuggy Webhooks API

Webhook operations.

OpenAPI Specification

runbuggy-webhooks-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Orders Webhooks API
  description: '### [Create Orders](/docs/shipping/6fcc8c040ec03-create-an-order) to transfer vehicles.'
  termsOfService: https://runbuggy.com/terms/
  contact:
    name: Support
    email: support@runbuggy.com
  license:
    name: Copyright © RunBuggy 2023
    url: https://runbuggy.com/terms/
  version: '1.0'
servers:
- url: https://ng-staging.runbuggy.com/staging/api
tags:
- name: Webhooks
  description: Webhook operations.
paths:
  /webhooks:
    post:
      tags:
      - Webhooks
      summary: Create a webhook
      operationId: createWebhook
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Webhook'
        '201':
          description: Created
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
      deprecated: false
      servers:
      - url: https://ng-staging.runbuggy.com/staging/api
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WebhookRequest'
        description: webhookRequest
        required: true
    get:
      tags:
      - Webhooks
      summary: Find webhooks
      operationId: getWebhooksPaginated
      parameters:
      - name: size
        in: query
        required: false
        schema:
          type: integer
          format: int32
      - name: page
        in: query
        required: false
        schema:
          type: integer
          format: int32
      - name: limit
        in: query
        required: false
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PageWebhook'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
      deprecated: false
      servers:
      - url: https://ng-staging.runbuggy.com/staging/api
  /webhooks/{id}/test:
    post:
      tags:
      - Webhooks
      summary: Test a webhook
      operationId: testWebhook
      parameters:
      - name: id
        in: path
        description: id
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
        '201':
          description: Created
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
      deprecated: false
      servers:
      - url: https://ng-staging.runbuggy.com/staging/api
  /webhooks/{id}:
    get:
      tags:
      - Webhooks
      summary: Retrieve a webhook
      operationId: getWebhook
      parameters:
      - name: id
        in: path
        description: id
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Webhook'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
      deprecated: false
      servers:
      - url: https://ng-staging.runbuggy.com/staging/api
    patch:
      tags:
      - Webhooks
      summary: Update a webhook
      operationId: patchWebhook
      parameters:
      - name: id
        in: path
        description: id
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Webhook'
        '204':
          description: No Content
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      deprecated: false
      servers:
      - url: https://ng-staging.runbuggy.com/staging/api
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WebhookRequest'
        description: webhookRequest
        required: true
    delete:
      tags:
      - Webhooks
      summary: Delete a webhook
      operationId: deleteWebhook
      parameters:
      - name: id
        in: path
        description: id
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
        '204':
          description: No Content
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      deprecated: false
      servers:
      - url: https://ng-staging.runbuggy.com/staging/api
components:
  schemas:
    PageWebhook:
      type: object
      title: PageWebhook
      properties:
        content:
          type: array
          items:
            $ref: '#/components/schemas/Webhook'
        empty:
          type: boolean
        first:
          type: boolean
        last:
          type: boolean
        number:
          type: integer
          format: int32
        numberOfElements:
          type: integer
          format: int32
        pageable:
          $ref: '#/components/schemas/Pageable'
        size:
          type: integer
          format: int32
        sort:
          $ref: '#/components/schemas/Sort'
        totalElements:
          type: integer
          format: int64
        totalPages:
          type: integer
          format: int32
      required:
      - content
      - empty
      - first
      - last
      - number
      - numberOfElements
      - pageable
      - size
      - sort
      - totalElements
      - totalPages
    Sort:
      type: object
      title: Sort
      properties:
        empty:
          type: boolean
        sorted:
          type: boolean
        unsorted:
          type: boolean
    Company:
      type: object
      title: Company
      properties:
        id:
          type: string
          x-examples:
          - c0ef80ce-2579-4682-af4f-c1d29457848a
        name:
          type: string
          x-examples:
          - Auto Land
        type:
          type: string
          enum:
          - DEALER
          - AUCTION
          x-examples:
          - DEALER
    Created:
      type: object
      title: Created
      properties:
        byCompany:
          $ref: '#/components/schemas/Company'
        byUser:
          type: string
          description: User ID
          x-examples:
          - 7ae99113-09fd-4838-917a-a7d9636c2f8c
        byUserFullName:
          type: string
        date:
          type: string
          description: Datetime in ISO 8601 format.
          format: ISO 8601 datetime
          x-examples:
          - '2020-12-05T21:18:47+00:00'
    WebhookRequest:
      type: object
      title: WebhookRequest
      properties:
        authorization:
          type: string
          description: Authorization header value
          x-examples:
          - Bearer bd1f8a0cbadde636
        url:
          type: string
          description: Webhook URL
          x-examples:
          - http://myapi.com/webhook
      required:
      - url
    Webhook:
      type: object
      title: Webhook
      properties:
        authorization:
          type: string
        company:
          $ref: '#/components/schemas/Company'
        created:
          $ref: '#/components/schemas/Created'
        id:
          type: string
        updated:
          type: string
          format: date-time
        url:
          type: string
    Pageable:
      type: object
      title: Pageable
      properties:
        offset:
          type: integer
          format: int64
        pageNumber:
          type: integer
          format: int32
        pageSize:
          type: integer
          format: int32
        paged:
          type: boolean
        sort:
          $ref: '#/components/schemas/Sort'
        unpaged:
          type: boolean
  securitySchemes:
    Authorization:
      type: apiKey
      description: See the [Authentication Guide](/docs/shipping/b6b6c2d4906e9-authentication).
      name: Authorization
      in: header