VBOUT EmailMarketing API

The EmailMarketing API from VBOUT — 25 operation(s) for emailmarketing.

OpenAPI Specification

vbout-emailmarketing-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: VBOUT EmailMarketing API
  version: '1.0'
  description: VBOUT Features API documentation
servers:
- url: https://api.vbout.com/1
tags:
- name: EmailMarketing
paths:
  /EmailMarketing/GetContacts:
    get:
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  contacts:
                    type: object
                    properties:
                      count:
                        type: integer
                      items:
                        type: array
                        items:
                          type: object
                          properties:
                            id:
                              type: integer
                            email:
                              type: string
                            status:
                              type: string
                            registration_date:
                              type: string
      operationId: get-EmailMarketing-GetContacts
      description: Get Contacts for a list
      parameters:
      - schema:
          type: integer
        in: query
        name: listid
        required: true
        description: The ID of the list to return its contacts.
      tags:
      - EmailMarketing
  /EmailMarketing/GetContact:
    get:
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  contact:
                    type: object
                    properties:
                      id:
                        type: integer
                      email:
                        type: string
                      status:
                        type: string
                      registration_date:
                        type: string
      operationId: get-EmailMarketing-GetContact
      description: Get contact based on ID
      parameters:
      - schema:
          type: integer
        in: query
        name: id
        required: true
        description: The ID of the contact to return.
      tags:
      - EmailMarketing
  /EmailMarketing/GetContactsByPhoneNumber:
    get:
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  contacts:
                    type: object
                    properties:
                      count:
                        type: integer
                      items:
                        type: array
                        items:
                          type: object
                          properties:
                            id:
                              type: integer
                            email:
                              type: string
                            status:
                              type: string
                            registration_date:
                              type: string
      operationId: get-EmailMarketing-GetContactsByPhoneNumber
      description: Get Contacts By PhoneNumber
      parameters:
      - schema:
          type: string
          pattern: ^\+?[1-9]\d{1,14}$
        in: query
        name: phone
        description: The phone number of the contacts to return.
        required: true
      - schema:
          type: integer
        in: query
        name: listid
        description: The ID of the list to return its contacts.
      tags:
      - EmailMarketing
  /EmailMarketing/AddContact:
    post:
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                properties:
                  id:
                    type: integer
                  item:
                    type: string
      operationId: post-EmailMarketing-AddContact
      description: 'Add contact. The contact has fields like firstname ''john''. The list contains custom fields with an ID as the key (e.g., {''123'': ''firstname'', ''8910'': ''lastname''}). In request parameters there is a ''fields'' string that contains multiple comma-seperated key-value pairs, such as 123:john,8910:smith.'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                email:
                  type: string
                  description: The email of the contact.
                status:
                  type: string
                  description: The status of the contact.
                listid:
                  type: integer
                  description: The ID of the list to assign this contact to.
                ipaddress:
                  type: string
                  description: The ip of the contact.
                fields:
                  type: string
                  description: Custom Field that has multiple comma-seperated key-value pairs where key is field ID and value is the field value. Format -> key1:value1,key2:value2
      tags:
      - EmailMarketing
  /EmailMarketing/GetContactByEmail:
    get:
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  contact:
                    type: object
                    properties:
                      id:
                        type: integer
                      email:
                        type: string
                      status:
                        type: string
                      registration_date:
                        type: string
      operationId: get-EmailMarketing-GetContactByEmail
      description: Get contact based on email
      parameters:
      - schema:
          type: string
        in: query
        name: email
        required: true
        description: The email of the contact to return.
      - schema:
          type: integer
        in: query
        name: listid
        description: The list id of which this contact does belong to.
      tags:
      - EmailMarketing
  /EmailMarketing/EditContact:
    post:
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                properties:
                  item:
                    type: string
      operationId: post-EmailMarketing-EditContact
      description: 'Edit Contact. The contact has fields like firstname ''john''. The list contains custom fields with an ID as the key (e.g., {''123'': ''firstname'', ''8910'': ''lastname''}). In request parameters there is a ''fields'' string that contains multiple comma-seperated key-value pairs, such as 123:john,8910:smith.'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                id:
                  type: integer
                  description: The ID of the contact.
                email:
                  type: string
                  description: The email of the contact.
                status:
                  type: string
                  description: The status of the contact.
                ipaddress:
                  type: string
                  description: The ip of the contact.
                fields:
                  type: string
                  description: Custom Field that has multiple comma-seperated key-value pairs where key is field ID and value is the field value. Format -> key1:value1,key2:value2
      tags:
      - EmailMarketing
  /EmailMarketing/SyncContact:
    post:
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                properties:
                  id:
                    type: integer
                  item:
                    type: string
      operationId: post-EmailMarketing-SyncContact
      description: 'Sync Contact. The contact has fields like firstname ''john''. The list contains custom fields with an ID as the key (e.g., {''123'': ''firstname'', ''8910'': ''lastname''}). In request parameters there is a ''fields'' string that contains multiple comma-seperated key-value pairs, such as 123:john,8910:smith.'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                listid:
                  type: integer
                  description: The ID of the list to assign this contact to.
                email:
                  type: string
                  description: The email of the contact.
                status:
                  type: string
                  description: The status of the contact.
                ipaddress:
                  type: string
                  description: The ip of the contact.
                fields:
                  type: string
                  description: Custom Field that has multiple comma-seperated key-value pairs where key is field ID and value is the field value. Format -> key1:value1,key2:value2
      tags:
      - EmailMarketing
  /EmailMarketing/DeleteContact:
    post:
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                properties:
                  item:
                    type: string
      operationId: post-EmailMarketing-DeleteContact
      description: Delete Contact
      parameters:
      - schema:
          type: integer
        in: query
        name: listid
        description: The ID of the list of the list to delete from.
        required: true
      - schema:
          type: integer
        in: query
        name: id
        description: The ID of the contact to delete.
        required: true
      tags:
      - EmailMarketing
  /EmailMarketing/MoveContact:
    post:
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                properties:
                  item:
                    type: string
      operationId: post-EmailMarketing-MoveContact
      description: Move Contact from list to list
      parameters:
      - schema:
          type: integer
        in: query
        name: id
        description: The ID of the contact.
        required: true
      - schema:
          type: integer
        in: query
        name: listid
        description: The ID of the list to move this contact to.
        required: true
      - schema:
          type: integer
        in: query
        name: sourceid
        description: The ID of the list where this contact is found.
        required: true
      tags:
      - EmailMarketing
  /EmailMarketing/GetContactTimeline:
    get:
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: integer
                  email:
                    type: string
                  timeline:
                    type: object
                    properties:
                      data:
                        type: array
                        items:
                          type: object
                          properties:
                            key:
                              type: string
                            snippet:
                              type: string
                            timestamp:
                              type: integer
                            datetime:
                              type: string
                            details:
                              type: array
                              items:
                                type: object
                                properties:
                                  key:
                                    type: string
                                  label:
                                    type: string
                                  value:
                                    type: integer | string
                      count:
                        type: integer
                      total:
                        type: integer
                  utm:
                    type: object
                    properties:
                      data:
                        type: array
                        items:
                          type: object
                          properties:
                            link:
                              type: string
                            utm:
                              type: object
                              properties:
                                campaign:
                                  type: string
                                source:
                                  type: string
                                medium:
                                  type: string
                                term:
                                  type: string
                                content:
                                  type: string
                            timestamp:
                              type: integer
                            datetime:
                              type: string
                      count:
                        type: integer
                  automated:
                    type: object
                    properties:
                      data:
                        type: array
                        items:
                          type: object
                          properties:
                            name:
                              type: string
                            type:
                              type: string
                            timestamp:
                              type: integer
                            datetime:
                              type: string
                            details:
                              type: array
                              items:
                                type: object
                                properties:
                                  key:
                                    type: string
                                  value:
                                    type: string
                      count:
                        type: integer
      operationId: get-EmailMarketing-GetContactTimeline
      description: Get Contact Timeline By ID
      parameters:
      - schema:
          type: integer
        in: query
        name: id
        required: true
        description: The ID of the contact to return his timeline activities.
      - schema:
          type: string
        in: query
        name: include
        required: true
        description: Comma separated keys to return other details with the timeline activities.
      tags:
      - EmailMarketing
  /EmailMarketing/GetContactTimelineByEmailAddress:
    get:
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: integer
                  email:
                    type: string
                  timeline:
                    type: object
                    properties:
                      data:
                        type: array
                        items:
                          type: object
                          properties:
                            key:
                              type: string
                            snippet:
                              type: string
                            timestamp:
                              type: integer
                            datetime:
                              type: string
                            details:
                              type: array
                              items:
                                type: object
                                properties:
                                  key:
                                    type: string
                                  label:
                                    type: string
                                  value:
                                    type: integer | string
                      count:
                        type: integer
                      total:
                        type: integer
                  utm:
                    type: object
                    properties:
                      data:
                        type: array
                        items:
                          type: object
                          properties:
                            link:
                              type: string
                            utm:
                              type: object
                              properties:
                                campaign:
                                  type: string
                                source:
                                  type: string
                                medium:
                                  type: string
                                term:
                                  type: string
                                content:
                                  type: string
                            timestamp:
                              type: integer
                            datetime:
                              type: string
                      count:
                        type: integer
                  automated:
                    type: object
                    properties:
                      data:
                        type: array
                        items:
                          type: object
                          properties:
                            name:
                              type: string
                            type:
                              type: string
                            timestamp:
                              type: integer
                            datetime:
                              type: string
                            details:
                              type: array
                              items:
                                type: object
                                properties:
                                  key:
                                    type: string
                                  value:
                                    type: string
                      count:
                        type: integer
      operationId: get-EmailMarketing-GetContactTimelineByEmailAddress
      description: Get Contact Timeline By Email Address
      parameters:
      - schema:
          type: string
        in: query
        name: email
        required: true
        description: The email address for the contact to return his timeline activities.
      - schema:
          type: string
        in: query
        name: include
        required: true
        description: Comma separated keys to return other details with the timeline activities.
      tags:
      - EmailMarketing
  /EmailMarketing/AddList:
    post:
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                properties:
                  id:
                    type: integer
                  item:
                    type: string
      operationId: post-EmailMarketing-AddList
      description: Add / Create List
      parameters:
      - schema:
          type: string
        in: query
        name: name
        description: The name of the list.
        required: true
      - schema:
          type: string
        in: query
        name: email_subject
        description: The default subject line of subscription.
      - schema:
          type: string
          format: email
        in: query
        name: reply_to
        description: The Reply to email of the list.
      - schema:
          type: string
          format: email
        in: query
        name: fromemail
        description: The From email of the list.
      - schema:
          type: string
        in: query
        name: from_name
        description: The From name of the list.
      - schema:
          type: string
        in: query
        name: doubleOptin
        description: Email confirmation required (Double opt-in).
      - schema:
          type: string
        in: query
        name: notify
        description: Notify me of new subscribers.
      - schema:
          type: string
          format: email
        in: query
        name: notify_email
        description: Notification Email.
      - schema:
          type: string
          format: email
        in: query
        name: success_email
        description: Subscription Success Email.
      - schema:
          type: string
        in: query
        name: success_message
        description: Subscription Success Message.
      - schema:
          type: string
        in: query
        name: error_message
        description: Subscription Error Message.
      - schema:
          type: string
          format: email
        in: query
        name: confirmation_email
        description: Confirmation Email.
      - schema:
          type: string
        in: query
        name: confirmation_message
        description: Confirmation Message.
      - schema:
          type: string
        in: query
        name: communications
        description: Turn off Communications.
      tags:
      - EmailMarketing
  /EmailMarketing/GetLists:
    get:
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  lists:
                    type: object
                    properties:
                      count:
                        type: integer
                      items:
                        type: array
                        items:
                          type: object
                          properties:
                            id:
                              type: integer
                            name:
                              type: string
                            form_title:
                              type: string
                            email_subject:
                              type: string
                            reply_to:
                              type: string
                            from_email:
                              type: string
                            from_name:
                              type: string
                            confirmation_email:
                              type: string
                            success_email:
                              type: string
                            confirmation_message:
                              type: string
                            success_message:
                              type: string
                            error_message:
                              type: string
                            doubleOptin:
                              type: string
                            notify_email:
                              type: string
                            creation_date:
                              type: string
      operationId: get-EmailMarketing-GetLists
      description: Get Lists
      parameters:
      - schema:
          type: integer
        in: query
        name: limit
        description: The limit of lists per page.
      - schema:
          type: integer
        in: query
        name: page
        description: the page number used for pagination, when asking for previous or next page as well as specific page number to get lists from.
      tags:
      - EmailMarketing
  /EmailMarketing/GetList:
    get:
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  list:
                    type: object
                    properties:
                      id:
                        type: integer
                      name:
                        type: string
                      form_title:
                        type: string
                      email_subject:
                        type: string
                      reply_to:
                        type: string
                      from_email:
                        type: string
                      from_name:
                        type: string
                      confirmation_email:
                        type: string
                      success_email:
                        type: string
                      confirmation_message:
                        type: string
                      success_message:
                        type: string
                      error_message:
                        type: string
                      doubleOptin:
                        type: string
                      notify_email:
                        type: string
                      creation_date:
                        type: string
                      fields:
                        description: The list of custom fields added to a specific list like firstname, lastname, city, phone, etc.
                        type: object
                        additionalProperties:
                          type: string
                        example:
                          125: First Name
                          325: Last Name
      operationId: get-EmailMarketing-GetList
      description: Get List by name or Id. Make sure to return the custom fields added to a specific list.
      parameters:
      - schema:
          type: string
        in: query
        name: name
        description: The Name of the list to return.
      - schema:
          type: integer
        in: query
        name: id
        description: The ID of the list to return.
      tags:
      - EmailMarketing
  /EmailMarketing/EditList:
    post:
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                properties:
                  item:
                    type: string
      operationId: post-EmailMarketing-EditList
      description: Edit List
      parameters:
      - schema:
          type: string
        in: query
        name: name
        description: The name of the list.
        required: true
      - schema:
          type: integer
        in: query
        name: id
        description: The id of the list.
        required: true
      - schema:
          type: string
        in: query
        name: subject
        description: The default subject line of subscription.
      - schema:
          type: string
          format: email
        in: query
        name: reply_to
        description: The Reply to email of the list.
      - schema:
          type: string
          format: email
        in: query
        name: fromemail
        description: The From email of the list.
      - schema:
          type: string
        in: query
        name: from_name
        description: The From name of the list.
      - schema:
          type: string
        in: query
        name: double_optin
        description: Email confirmation required (Double opt-in)? Must be 0 or 1. Convert True to 1 and False to 0.
      - schema:
          type: integer
        in: query
        name: notify
        description: Notify me of new subscribers. Must be 0 or 1. Convert True to 1 and False to 0.
      - schema:
          type: string
          format: email
        in: query
        name: notify_email
        description: Notification Email.
      - schema:
          type: string
          format: email
        in: query
        name: success_email
        description: Subscription Success Email.
      - schema:
          type: string
        in: query
        name: success_message
        description: Subscription Success Message.
      - schema:
          type: string
        in: query
        name: error_message
        description: Subscription Error Message.
      - schema:
          type: string
        in: query
        name: confirmation_email
        description: Confirmation Email.
      - schema:
          type: string
        in: query
        name: confirmation_message
        description: Confirmation Message.
      - schema:
          type: integer
        in: query
        name: communications
        description: Turn off Communications. Must be 0 or 1. Convert True to 1 and False to 0.
      tags:
      - EmailMarketing
  /EmailMarketing/DeleteList:
    post:
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                properties:
                  item:
                    type: string
      operationId: post-EmailMarketing-DeleteList
      description: Delete List
      parameters:
      - schema:
          type: integer
        in: query
        name: id
        description: The ID of the list to delete.
        required: true
      tags:
      - EmailMarketing
  /EmailMarketing/AddActivity:
    post:
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                properties:
                  item:
                    type: string
      operationId: post-EmailMarketing-AddActivity
      description: Add Activity to contact.
      parameters:
      - schema:
          type: integer
        in: query
        name: id
        description: The ID of the contact.
        required: true
      - schema:
          type: string
        in: query
        name: description
        description: The description of the activity.
        required: true
      - schema:
          type: string
          format: date-time
          pattern: ^(\d{4})-(\d{2})-(\d{2}) (\d{2}):(\d{2})$
        in: query
        name: datetime
        description: The date and time to activity.
        required: true
      tags:
      - EmailMarketing
  /EmailMarketing/AddTag:
    post:
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                properties:
                  item:
                    type: string
      operationId: post-EmailMarketing-AddTag
      description: Add Tag to contact
      parameters:
      - schema:
          type: string
        in: query
        name: email
        description: The email of the contact.
        required: true
      - schema:
          type: integer
        in: query
        name: id
        description: The id of the contact. (ID)
      - schema:
          type: string
        in: query
        name: tagname
        description: Tag(s) to be added.
        required: true
      tags:
      - EmailMarketing
  /EmailMarketing/RemoveTag:
    post:
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                properties:
                  item:
                    type: string
      operationId: post-EmailMarketing-RemoveTag
      description: Remove Tag
      parameters:
      - schema:
          type: string
        in: query
        name: email
        description: The email of the contact.
        required: true
      - schema:
          type: integer
        in: query
        name: id
        description: The id of the contact.
      - schema:
          type: string
        in: query
        name: tagname
        description: Tag(s) to be deleted.
        required: true
      tags:
      - EmailMarketing
  /EmailMarketing/GetEmailTemplates:
    get:
      responses:
        '200':
          description: Successfu

# --- truncated at 32 KB (43 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/vbout/refs/heads/main/openapi/vbout-emailmarketing-api-openapi.yml