Skip to content

Organizations API

Organizations

An organization represents any organization account on giosg system. An organization consists of a number of users with their own user accounts. A user always belongs to exactly one organization.

Please note that despite its name a "organization" in this context means any organization or group. It can even consists of only one user.

An organization object contains the following attributes. Note that the contact information is public.

Attribute Type Editable Description
id UUID read-only Unique identifier for this organization
name string required The name of the organization. Maximum length is 64.
email string optional Contact email address, or null. Maximum length is 64.
phone string optional Contact phone number, or null. Maximum length is 16.
street string optional Contact street address, or null. Maximum length is 128.
postal_code string optional Contact address postal code, or null. Maximum length is 8.
city string optional Contact address city, or null. Maximum length is 32.
country string optional Country as a two-letter, lowercase ISO 3166-1 code, or null. Maximum length is 2.
business_id string optional Business ID of the organization, if any, or null. Maximum length is 256.
script_tag string read-only The script tag for the organization.
is_online boolean read-only Whether the organization is currently online, i.e. at least one user from the organization is online. See users for more information.
is_humans_online boolean read-only Whether there is at least one non bot user online in the organization. Useful for developing chatbots, that need to know if they can transfer chats to people.
is_present boolean read-only Whether the organization is currently present, i.e. at least one user from the organization is present. See users for more information.
max_rules_count integer / null read-only Number of rules the organization can create. NOTE: Will be moved to somewhere else in the near future!
created_at datetime read-only When this organization account was created.
updated_at datetime read-only When organization details were changed last time.

Retrieve organization details

Get a single organization object by its ID.

GET https://service.giosg.com/api/v5/orgs/<organization_id>

This endpoint returns:

  • 200 if the request was successful
  • 401 if you are not authenticated
  • 403 if you do not have active subscription
  • 403 if you do not have access to the organization

Update organization details

You may update some of the attributes of an organization, if you have permissions to do so.

PUT https://service.giosg.com/api/v5/orgs/<organization_id>

PATCH https://service.giosg.com/api/v5/orgs/<organization_id>

When using PUT you need to provide an object as a request payload that contains all the required attributes of the organization. When using PATCH, you may omit those attributes that you do not want to change.

This endpoint returns:

  • 200 if the request was successful
  • 400 if required attributes are missing from the request
  • 400 if the request payload is in wrong format
  • 401 if you are not authenticated
  • 403 if you do not have active subscription
  • 403 if you do not have access to the organization
  • 403 if you do not have settings permission

Organization overviews

Usually you may want to know some aggregated numbers of a organization. A organization overview describes the current status of the organization.

An organization overview has the following attributes:

Attribute Type Description
present_visitor_count integer The total number of unique visitors currently present.
pending_chat_count integer The total number of pending chats.

Retrieve an overview of an organization

You can get the overview of your organization:

GET /api/v5/orgs/<organization_id>/overview

The overview attributes have the following meanings:

  • present_visitor_count describes the number of visitors present across all your organization rooms.
  • pending_chat_count describes the number of pending chats across all your organization rooms.

This endpoint returns:

  • 200 if the request was successful
  • 401 if you are not authenticated
  • 403 if you do not have active subscription
  • 403 if you do not have access to the organization
  • 403 if you do not have settings permission

Organization's Features

Features are different kind of services (e.g. rooms, rules) which giosg provides. A feature object contains following attributes:

Attribute Type Editable Description
id string read-only Unique identifier for this feature. In this case the name is the unique identifier.

List current features of organization

You may want to list all features which are currently enabled for a organization. Expired / disabled features cannot be listed.

GET https://service.giosg.com/api/v5/orgs/<organization_id>/features

Parameter Type Default Description
ordering ordering id Ordering of results with option id (with or without -)

This endpoint returns:

  • 200 if the request was successful
  • 401 if you are not authenticated
  • 403 if you do not have active subscription
  • 403 if you do not have access to the organization

Organization Settings

Every organization has its settings. These settings contain organization specific definitions how the system should work for them. Organization can have only one settings for them.

Attribute Type Editable Description
id UUID read-only Unique identifier for this organization settings.
organization_id UUID read-only ID of the organization.
organization object read-only The organization object.
ui_version string read-only Giosg UI version code.
default_ui_language string required Default UI language in console.
timezone string required Organization time zone. See Time zones API for supported values.
is_private_chat_history_enabled boolean required Whether only users with reports permission may see the organization's chat history or everyone
is_strict_password_policy_enabled boolean required Whether strict password policy is enabled or not.
is_automatic_chat_links_enabled boolean required Whether links in chat dialogs are clickable or not.
is_variable_signing_required boolean required Do visitor variables have to be signed with key.
is_login_credentials_preservation_enabled boolean required Are user login credentials saved, i.e. users do not have to login for every session.
login_credentials_preservation_duration integer required For how long login credentials are saved. This value is in seconds.
password_expiration_days integer / null optional Password expiration interval in days. Must be at least 1 day. If null, passwords will not expire.
giosg_crawler_secret string / null optional Organizations secret value that can be used to identify GiosgCrawler instance. This is part of the Crawlers user agen string.
custom_cdn_url string / null read-only Organizations own CDN. If null static files will be loaded through Giosg CDN.
created_at datetime read-only When organization settings were created.
updated_at datetime read-only When organization settings were changed last time.

Retrieve organization settings

Get organization's settings by:

GET https://service.giosg.com/api/v5/orgs/<organization_id>/settings

This endpoint returns:

  • 200 if the request was successful
  • 401 if you are not authenticated
  • 403 if you do not have active subscription
  • 403 if you do not have access to the organization

Update organization settings

You may update some of the attributes of organization settings, if you have permissions to do so.

PUT https://service.giosg.com/api/v5/orgs/<organization_id>/settings

PATCH https://service.giosg.com/api/v5/orgs/<organization_id>/settings

When using PUT you need to provide an object as a request payload that contains all the required attributes of the organization settings. When using PATCH, you may omit those attributes that you do not want to change.

This endpoint returns:

  • 200 if the request was successful
  • 400 if required attributes are missing from the request
  • 400 if the request payload is in wrong format
  • 401 if you are not authenticated
  • 403 if you do not have active subscription
  • 403 if you do not have access to the organization
  • 403 if you do not have settings permission

Organization's Customership

Information about your organization's customership. The customership object contains information about usage limits of certain features and status of your current subscription (trial account or not).

Attribute Type Editable Description
organization_id UUID read-only ID of the organization.
organization object read-only The organization object.
is_trial boolean read-only Whether organization has a trial subscription or not.
max_users_count integer / null read-only How many users organization can have once.
max_online_users_count integer / null read-only How many users can organization have chatting once.
max_rules_count integer / null read-only How many created rules organization can have once.
max_scheduled_email_reports_count integer / null read-only How many scheduled reports organization can have once.
updated_at datetime read-only When organization's customership was updated last time.

Retrieve details of organization's customership

Get details of organization's customership:

GET https://service.giosg.com/api/v5/orgs/<organization_id>/customership

This endpoint returns:

  • 200 if the request was successful
  • 401 if you are not authenticated
  • 403 if you do not have active subscription
  • 403 if you do not have access to the organization
  • 404 if organization does not have created subscription.