DevCycle EdgeDB API

The EdgeDB API from DevCycle — 1 operation(s) for edgedb.

OpenAPI Specification

devcycle-edgedb-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: DevCycle Bucketing Audiences EdgeDB API
  description: Documents the DevCycle Bucketing API which provides an API interface to User Bucketing and for Server SDKs configured to use Cloud Bucketing.
  version: 1.3.0
servers:
- url: https://bucketing-api.devcycle.com/
tags:
- name: EdgeDB
paths:
  /v1/edgedb/{user_id}:
    patch:
      summary: Update EdgeDB data based on unique id and project id
      tags:
      - EdgeDB
      parameters:
      - in: path
        name: user_id
        schema:
          type: string
        required: true
        description: A unique id used to fetch and update the EdgeDB data
      - name: sdkKey
        in: query
        description: SDK Key as defined in the dashboard for your DevCycle environment. One of the Authorization header or "sdkKey" query parameter is required to be set.
        required: false
        schema:
          type: string
      requestBody:
        description: User properties to update the EdgeDB data
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserDataEdgeDB'
      responses:
        200:
          description: Client SDK API Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EdgeDBApiResponse'
        400:
          $ref: '#/components/responses/BadRequest'
        401:
          $ref: '#/components/responses/UnauthorizedError'
        404:
          $ref: '#/components/responses/NotFound'
        500:
          $ref: '#/components/responses/InternalServerError'
components:
  schemas:
    EdgeDBApiResponse:
      type: object
      properties:
        message:
          description: Response message of the request
          type: string
      required:
      - message
    ErrorResponse:
      type: object
      properties:
        statusCode:
          type: number
          description: Error response status code
        message:
          type: string
          description: Error message
        data:
          type: object
          description: Additional error information detailing the error reasoning
      required:
      - message
    UserDataEdgeDB:
      type: object
      properties:
        user_id:
          description: Unique id to identify the user
          type: string
        email:
          description: User's email used to identify the user on the dashaboard / target audiences
          type: string
        name:
          description: User's name used to idenify the user on the dashaboard / target audiences
          type: string
        language:
          description: User's language in ISO 639-1 format
          additionalProperties:
            type: string
            maxLength: 2
        country:
          description: User's country in ISO 3166 alpha-2 format
          additionalProperties:
            type: string
            maxLength: 2
        customData:
          description: User's custom data to target the user with, data will be logged to DevCycle for use in dashboard.
          type: object
        lastSeenDate:
          description: Date the user was last seen being used, Unix epoch timestamp format
          type: number
      required:
      - user_id
  responses:
    UnauthorizedError:
      description: Missing 'sdkKey' query parameter or 'Authorization' header
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    NotFound:
      description: Not Found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    InternalServerError:
      description: Internal Server Error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    BadRequest:
      description: Bad Request
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  securitySchemes:
    bearerAuth:
      type: apiKey
      in: header
      name: Authorization
      description: Enter your DevCycle SDK token