TagoIO Users API

Manage TagoRUN users (Profile Token).

OpenAPI Specification

tago-io-users-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: TagoIO Access Management Users API
  description: "#### **How to use this documentation**\nThe documentation is split by which token you're required to use in the request.  \nTagoIO provides 4 different tokens:\n- **Device-Token**: The token from your device, which you can get from the device's page.\n    \n- **Profile-Token**: Also know as Account-Token. You get from your profile settings page.\n    \n- **Network-Token**: Is the token from your Network. Only available if you're owner of the network in your integrations page.\n    \n- **Analysis-Token:** The token from your analysis, available in the analysis page.\n---\n#### Setting the API Endpoint Region\nWhen making a request to the TagoIO API, you must also specify the appropriate regional endpoint. Choose one of the following endpoints based on your geographical region:\n\n- **United States East 1:**  \n    Use this endpoint when your application is based in the eastern United States.  \n    **URL:** `https://api.us-e1.tago.io/`\n    \n- **Europe West 1:**  \n    Use this endpoint when your application is based in Western Europe.  \n    **URL:** `https://api.eu-w1.tago.io/`\n\n- **Tago Deploy:**  \n  You should use your own API URL that is available in your Domains section of the TagoDeploy."
  version: 1.0.0
  contact: {}
servers:
- url: https://api.us-e1.tago.io
- url: https://api.eu-w1.tago.io
security:
- ProfileToken: []
tags:
- name: Users
  description: Manage TagoRUN users (Profile Token).
paths:
  /run/users/{userID}:
    parameters:
    - name: userID
      in: path
      required: true
      schema:
        type: string
        example: (Type a RUN user ID)
    get:
      tags:
      - Users
      summary: User Information
      description: 'Get information about an user using userID

        '
      operationId: userInformation
      responses:
        '200':
          description: Getting RUN user information by ID
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    type: array
                    items:
                      type: object
                      properties:
                        active:
                          type: boolean
                          example: true
                        company:
                          type: string
                          example: Companyname
                        created_at:
                          type: string
                          example: '2022-01-21T21:29:08.957Z'
                        email:
                          type: string
                          example: runuser@email
                        id:
                          type: string
                          example: 614889df6a302639012a7caef
                        language:
                          type: string
                          example: en
                        last_login:
                          type: string
                          example: '2022-06-10T17:59:26.879Z'
                        name:
                          type: string
                          example: runusername
                        newsletter:
                          example: null
                        options:
                          type: object
                          properties:
                            date_format:
                              type: string
                              example: MM/DD/YYYY
                            time_format:
                              type: string
                              example: '12'
                        otp:
                          type: object
                          properties: {}
                        phone:
                          type: string
                          example: '+010001010011'
                        profile:
                          type: string
                          example: 612ea05e3cc07803480127151133
                        tags:
                          type: array
                          items:
                            type: object
                            properties:
                              key:
                                type: string
                                example: user_type
                              value:
                                type: string
                                example: enduser
                          example:
                          - key: user_type
                            value: enduser
                          - key: limit_login
                            value: '10'
                        timezone:
                          type: string
                          example: America/New_York
                        updated_at:
                          type: string
                          example: '2022-06-14T14:16:52.377Z'
                    example:
                    - active: true
                      company: Companyname
                      created_at: '2022-01-21T21:29:08.957Z'
                      email: runuser@email
                      id: 614889df6a302639012a7caef
                      language: en
                      last_login: '2022-06-10T17:59:26.879Z'
                      name: runusername
                      newsletter: null
                      options:
                        date_format: MM/DD/YYYY
                        time_format: '12'
                      otp: {}
                      phone: '+010001010011'
                      profile: 612ea05e3cc07803480127151133
                      tags:
                      - key: user_type
                        value: enduser
                      - key: limit_login
                        value: '10'
                      timezone: America/New_York
                      updated_at: '2022-06-14T14:16:52.377Z'
                  status:
                    type: boolean
                    example: true
    put:
      tags:
      - Users
      summary: Edit User
      description: 'Edit information about an user using userID

        '
      operationId: editUser
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                active:
                  type: boolean
                  example: true
                company:
                  type: string
                  example: Companyname
                language:
                  type: string
                  example: en
                name:
                  type: string
                  example: runusername
                options:
                  type: object
                  properties:
                    date_format:
                      type: string
                      example: MM/DD/YYYY
                    time_format:
                      type: string
                      example: '12'
                phone:
                  type: string
                  example: '+010001010011'
                tags:
                  type: array
                  items:
                    type: object
                    properties:
                      key:
                        type: string
                        example: user_type
                      value:
                        type: string
                        example: enduser
                  example:
                  - key: user_type
                    value: enduser
                  - key: limit_login
                    value: '10'
                timezone:
                  type: string
                  example: America/New_York
      responses:
        '200':
          description: Editing a RUN user information by ID
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    type: string
                    example: TagoIO Run User Successfully Updated
                  status:
                    type: boolean
                    example: true
    delete:
      tags:
      - Users
      summary: Delete User
      description: 'Delete user from Run using userID

        '
      operationId: deleteUser
      responses:
        '200':
          description: Deleting a RUN user by ID
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    type: string
                    example: Successfully Removed
                  status:
                    type: boolean
                    example: true
  /run/users:
    get:
      tags:
      - Users
      summary: List Users
      description: 'List users from Run

        '
      operationId: listUsers
      parameters:
      - name: page
        in: query
        schema:
          type: string
          example: '1'
        description: Page number.
      - name: name
        in: query
        schema:
          type: string
          example: John Doe
        description: Filter by the RUN user's name.
      - name: email
        in: query
        schema:
          type: string
          example: runuser@email.com
        description: Filter by the RUN user's email.
      - name: timezone
        in: query
        schema:
          type: string
          example: America/New_York
        description: Filter by the RUN user's timezone.
      - name: company
        in: query
        schema:
          type: string
          example: Companyname
        description: Filter by the RUN user's company.
      - name: phone
        in: query
        schema:
          type: string
          example: '+010001010011'
        description: Filter by the RUN user's phone number.
      - name: language
        in: query
        schema:
          type: string
          example: En
        description: Filter by the RUN user's language.
      - name: tags
        in: query
        schema:
          type: string
          example: '[{"key":"tag_key","value":"tag value"}]'
        description: Filter by the RUN user's tags and keys.
      - name: active
        in: query
        schema:
          type: string
          example: 'true'
        description: Filter by the RUN user's activation status.
      - name: id
        in: query
        schema:
          type: string
          example: 614889df6a302639012a7caef
        description: Filter by the RUN user's id.
      - name: last_login
        in: query
        schema:
          type: string
          example: '2021-04-15T15:52:01.102Z'
        description: Filter by the RUN user's last login.
      - name: created_at
        in: query
        schema:
          type: string
          example: '2021-07-26T13:10:39.314Z'
        description: Filter by the RUN user's creation timestamp.
      - name: amount
        in: query
        schema:
          type: string
          example: '5'
        description: Amount of RUN users by page.
      - name: orderBy
        in: query
        schema:
          type: string
          example: name,asc
        description: Order by the RUN users name/ascending/descending.
      responses:
        '200':
          description: Getting a list of RUN users
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    type: array
                    items:
                      type: object
                      properties:
                        active:
                          type: boolean
                          example: true
                        company:
                          type: string
                          example: Companyname
                        created_at:
                          type: string
                          example: '2022-01-21T21:29:08.957Z'
                        email:
                          type: string
                          example: runuser@email
                        id:
                          type: string
                          example: 614889df6a302639012a7caef
                        language:
                          type: string
                          example: en
                        last_login:
                          type: string
                          example: '2022-06-10T17:59:26.879Z'
                        name:
                          type: string
                          example: runusername
                        newsletter:
                          example: null
                        options:
                          type: object
                          properties:
                            date_format:
                              type: string
                              example: MM/DD/YYYY
                            time_format:
                              type: string
                              example: '12'
                        otp:
                          type: object
                          properties: {}
                        phone:
                          type: string
                          example: '+010001010011'
                        profile:
                          type: string
                          example: 612ea05e3cc07803480127151133
                        tags:
                          type: array
                          items:
                            type: object
                            properties:
                              key:
                                type: string
                                example: user_type
                              value:
                                type: string
                                example: enduser
                          example:
                          - key: user_type
                            value: enduser
                          - key: limit_login
                            value: '10'
                        timezone:
                          type: string
                          example: America/New_York
                        updated_at:
                          type: string
                          example: '2022-06-14T14:16:52.377Z'
                    example:
                    - active: true
                      company: Companyname
                      created_at: '2022-01-21T21:29:08.957Z'
                      email: runuser@email
                      id: 614889df6a302639012a7caef
                      language: en
                      last_login: '2022-06-10T17:59:26.879Z'
                      name: runusername
                      newsletter: null
                      options:
                        date_format: MM/DD/YYYY
                        time_format: '12'
                      otp: {}
                      phone: '+010001010011'
                      profile: 612ea05e3cc07803480127151133
                      tags:
                      - key: user_type
                        value: enduser
                      - key: limit_login
                        value: '10'
                      timezone: America/New_York
                      updated_at: '2022-06-14T14:16:52.377Z'
                  status:
                    type: boolean
                    example: true
    post:
      tags:
      - Users
      summary: Create User
      description: 'Create user on Run

        '
      operationId: createUser
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required:
              - name
              - email
              - password
              properties:
                active:
                  type: boolean
                  example: true
                email:
                  type: string
                  example: janedoe@mail.com
                name:
                  type: string
                  example: Jane Doe
                password:
                  type: string
                  example: Testing_01
                timezone:
                  type: string
                  example: New_York/America
      responses:
        '200':
          description: Creating a RUN user
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    type: object
                    properties:
                      user:
                        type: string
                        example: 62b086df27ce4d0012be6bac
                  status:
                    type: boolean
                    example: true
components:
  securitySchemes:
    Device-Token:
      type: apiKey
      description: A Device-Token that is unique to your device. Generate a token by accessing your Device's page.
      name: Device-Token
      in: header
      x-example: 5e12345a-d70a-4e2d-b83d-5c0123456789
    Network-Token:
      type: apiKey
      description: A Network Token that is unique to your Network. Access Integrations > Network > Tokens to generate a token for your Network.
      name: Token
      in: header
      x-DisplayName: Network-Token
      x-example: fd549ad2-813c-4d66-bf72-508e5b98afe3
    Profile-Token:
      type: apiKey
      description: A Profile token that is unique to your entire profile. Generate in your account settings.
      name: Profile-Token
      in: header
      x-example: a15ea5ea-dd2d-4c63-8945-92b54da4772a
x-tagGroups:
- name: Device Token (Device-level)
  tags:
  - Device Data
- name: Network Token (Network-level)
  tags:
  - Network Ingest
- name: Device Management
  tags:
  - Devices
  - Device Tokens
  - Configuration Param
  - Import/Export
  - Immutable Device
- name: Tago RUN
  tags:
  - Tago RUN
  - Users
  - Dictionary
  - Notifications
- name: Dashboards
  tags:
  - Dashboards
  - Widgets
- name: File(s) Management
  tags:
  - Files
  - Upload
- name: Profile
  tags:
  - Account
  - Profile
  - Statistics / Billing
- name: Entities
  tags:
  - Entity
  - Entity Data
- name: Resources
  tags:
  - Access Management