Documentation

Welcome to GetComplied! Get familiar with the GetComplied products and explore their features:


What is GetComplied?

GetComplied is the most powerful and flexible software for you to comply with the GDPR EU rules. Whenever you create a website, an app, a portal, a landing page, or a software, the GetComplied mission is to provide the most efficient solution to help you comply with the law.

Why use GetComplied?

Until May 25, all websites, apps, and platforms must comply with the GDPR EU Law.


Snippet Example

The following code is a test example of the snippet. So you can see how it looks like in your website.


Install - First Steps

1 - Create an account

Create your GetComplied account at www.getcomplied.com

2 - Policies and Cookies

Create the policies and cookies for your platform. You will need them when we create a project.

3 - Create a project

Create and configure your project.

4 - Add Snippet

After creating the project you only need to add the snippet to your site.

Install the code before </body>


Configure

For each project you can configured and customize the settings. When editing a project you can customize:

  • Project Information
    Choose a unique name for your project. A simple name to identify it.
  • Business Information
    Add conrrespondant legal info about this project.
  • DPO Information
    This section is mandatory per the GDPR. Add the DPO information so that the users can reach it.
  • Languages
    Choose the default and the active languages for the project.
  • Themes
    You can customize the Logo (add the url of the image of your logo) and the Header background color (the color is in rgb format, ex: "#cccccc" ).
  • What policies to use
    After creating the policies you can select which ones to use in the project.
  • What cookies to use
    After creating the cookies you can select which ones to use in the cookies.
  • What platforms to use
    After creating the platforms you can select which ones to use in the project.

Web SDK

Language

Default language can be set on your project settings. It can be overriten by using
getComplied.lang = 'en-GB' when the popup is closed. Next time that is openned, it will change to the chosen language.

NOTE: It must be put after your snippet code.

Current available language codes: de-DE, en-GB, es-AR, es-ES, fr-FR, pt-PT, ro-RO.

Inside Container

GeComplied can be inside of a html tag on your website instead of being a popup.
When this is applied, it will be always visible.
It will no longer listen to certain commands or execute some callbacks.

Affected commands: show
Affected callbacks: onopen, onclose

HTML
<gc-prompt-container></gc-prompt-container>
or
<div gc-prompt-container></div>
JAVASCRIPT
getComplied.container = document.getElementById('yourElementId')

NOTE: JAVASCRIPT code must be put after your snippet code.

Z-Index

Default z-index value is 2147483647. It can be set by using getComplied.zIndex = 999.

NOTE: It must be put after your snippet code.

Animation

Default value is true. It can be set by using getComplied.animate = true.

NOTE: It must be put after your snippet code.

Continue Anyway

If set to false, user will no longer be able to continue when having any required policy denied or not selected.
Default value is true. It can be set by using getComplied.continueAnyway = false.

NOTE: It must be put after your snippet code.

Auto Open

If set to false, modal will no longer open at the beginning even when there are new documents.
Default value is true. It can be set by using getComplied.autoOpen = false.

NOTE: It must be put after your snippet code.

Inputs

It can be used on forms for the purpose of accepting only one consent (newsletter permission for example).

You can generate inputs in your project from the backoffice.
After that, you just need to put your input code on your website (input is synchronized with the popup, so it will only work when your popup is configured and working).
It can be initialized by using:
<gc-input name="YOUR-INPUT-KEY"></gc-input>
or
<div gc-input name="YOUR-INPUT-KEY"></div>

Input Lock

Its purpose is to disable your form submission button when the input is required and its value is false and enable the same when the required permission is set to true.
It can be set by using:
<button for-gc-input-name="YOUR-INPUT-KEY" gc-input-lock></button>

The key for-gc-input-name tells us which input should it listen to (you can have more than one input per page) and gc-input-lock is the funcionality.

Right to rectification

Its purpose is to disable the right to rectification from your modal, its default value is true.
It can be set by using:
getComplied.rightToRectification = false;

NOTE: It must be put after your snippet code.

Right to data portability

Its purpose is to disable the right to data portability from your modal, its default value is true.
It can be set by using:
getComplied.rightToPortability = false;

NOTE: It must be put after your snippet code.

Right to data access

Its purpose is to disable the right to access data from your modal, its default value is true.
It can be set by using:
getComplied.rightToAccessData = false;

NOTE: It must be put after your snippet code.

Right to erasure (right to be forgotten)

Its purpose is to disable the right to erasure form your modal, its default value is true.
It can be set by using:
getComplied.rightToBeForgotten = false;

NOTE: It must be put after your snippet code.

Data-Attributes

These data-attributes are used to be easier and "replace" some commands.
You can open a popup view by (triggers when clicked):

Index
<div gc-open-view-index="0"></div>

Id
<div gc-open-view-id="119"></div>

Static
<div gc-open-view="languages"></div>

If you use the attribute gc-read-only="true" with one of the attributes above, it will make the selected view closable and the back button will be hidden.
Example:
<div gc-open-view="languages" gc-read-only="true"></div>

Events

Commands are used to comunicate with the popup via javascript.
Commands will only work after popup is initialized (there is a callback for when it is initialized).
For example:

Command Description Values
getComplied.command('show')
Opens Modal
getComplied.command('change-lang', 'pt-PT')
Changes popup and inputs language
language code ("en-GB", "pt-PT"...)
getComplied.command('change-view', 'id', 119)
Opens a specific resource by ID
int
getComplied.command('change-view', 'index', 1)
Opens a specific resource by Index
int
getComplied.command('change-view', 'static', 'languages')
Opens a specific static view
home
languages
contactdpo
thirdparties
cookies
edit
accessdata
movedata
beforgotten
getComplied.command('user', {
Name: 'Firstname Lastname',
Email: 'user@email.com',
Birthdate: {
Day: 1,
Month: 1,
Year: 1990
},
CallingCode: {
Code: '+351'
},
Country: {
Code: 'PT'
},
Gender: 0, // 0 - Male, 1 - Female, 2 - Other
Address1: 'Address Line 1',
Address2: 'Address Line 2',
City: 'CityName',
ZipCode: '0000-000',
PhoneNumber: '910 000 000',
BusinessEmail: 'user@company.com',
CustomId: 'YOUR-CUSTOM-ID',
});
Passes user information to GetComplied
Name
Email
Birthdate { Day, Month, Year }
CallingCode { Code ("+1", "+1-242", "+351" ...) }
Country { Code ("US", "PT", "GB" ...) }
Gender ( 0 - Male, 1 - Female, 2 - Other )
Address1
Address2
City
ZipCode
PhoneNumber
BusinessEmail
CustomId (string, max-length 256)

Query String

You can communicate with the modal via query string. This is ideal to validate legacy data. Example you can use a query string to pass the email that way Get Compiled knows exactly what user is using the platform. Ex: You can send a newsletter to your customers to let them know that you changed your terms and conditions, send the to the homepage with the query string passing the email.

Query String Scope Description Example Values
gc_email
USER
Passes user email to GetComplied
?gc_email=user@email.com string
gc_birthdate_day
USER
Passes user birthdate day to GetComplied
?gc_birthdate_day=1 int
gc_birthdate_month
USER
Passes user birthdate month to GetComplied
?gc_birthdate_month=1 int
gc_birthdate_year
USER
Passes user birthdate year to GetComplied
?gc_birthdate_year=1990 int
gc_callingcode
USER
Passes user calling code to GetComplied
?gc_callingcode=+351 string ("+1", "+1-242", "+351" ...)
gc_countrycode
USER
Passes user country to GetComplied
?gc_countrycode=PT string ("US", "PT", "GB" ...)
gc_gender
USER
Passes user gender to GetComplied
?gc_gender=0 int (0 - Male, 1 - Female, 2 - Other)
gc_addressline1
USER
Passes user address to GetComplied
?gc_addressline1=Address Line 1 string
gc_addressline2
USER
Passes user address to GetComplied
?gc_addressline2=Address Line 2 string
gc_city
USER
Passes user city to GetComplied
?gc_city=City string
gc_zipcode
USER
Passes user zip code to GetComplied
?gc_zipcode=1000-000 string
gc_phonenumber
USER
Passes user phone number to GetComplied
?gc_phonenumber=912345678 string
gc_businessemail
USER
Passes user business email to GetComplied
?gc_businessemail=user@businessemail.com string
gc_customid
USER
Passes user custom id to GetComplied
?gc_customid=1 string (max length: 256)
gc_name
USER
Passes user name to GetComplied
?gc_name=firstlastname string
gc_show
Modal
Forces the modal to open
?gc_show=true bool
gc_lang
Modal / FORM
Forces the popup to open in a certain language
?gc_lang=en-GB language code ("en-GB", "pt-PT"...)
gc_view_id
Modal
Opens a specific resource by ID
?gc_view_id=119 int
gc_view_index
Modal
Opens a specific resource by Index
?gc_view_index=1 int
gc_view
Modal
Opens a specific static view
?gc_view=languages
languages
contactdpo
thirdparties
cookies
edit
accessdata
movedata
beforgotten
gc_form_offer_title
FORM
Passes the offer title to form
?gc_form_offer_title=abc%20leitura string (max length: 1020)
gc_form_offer_id
FORM
Passes the offer Id
?gc_form_offer_id=abc123 string (max length: 125)
gc_form_logoshow
FORM
Show or hide form logo
?gc_form_logoshow=true bool
gc_form_logo
FORM
Change the logo of the form by the introduced one
?gc_form_logo=http://.. string (max length: 1024)
gc_form_title
FORM
Change the title pre-defined by this new
?gc_form_title=abc123 string (max length: 1024)
gc_form_subtitle
FORM
Change the subtitle pre-defined by this new
?gc_form_subtitle=abc123 string (max length: 1024)
gc_form_attachment_title
FORM
Change the attachment title pre-defined by this new
?gc_form_attachment_title=Report string (max length: 1024)
gc_form_comment_title
FORM
Change the comment title pre-defined by this new
?gc_form_comment_title=Suggestions string (max length: 1024)
gc_form_comment_subtitle
FORM
Change the comment subtitle pre-defined by this new
?gc_form_comment_subtitle=Leave some suggestions here string (max length: 1024)
gc_form_firstname
FORM
Passes user first name to form
?gc_form_firstname=firstname string
gc_form_last
FORM
Passes user last name to form
?gc_form_last=lastname string
gc_form_email
FORM
Passes user email to form
?gc_form_email=user@email.com string
gc_form_businessemail
FORM
Passes user business email to form
?gc_form_businessemail=user@businessemail.com string
gc_form_callingcode
FORM
Passes user calling code to form
?gc_form_callingcode=+351 string ("+1", "+1-242", "+351" ...)
gc_form_phonenumber
FORM
Passes user phone number to form
?gc_form_phonenumber=912345678 string
gc_form_addressline1
FORM
Passes user address to form
?gc_form_addressline1=Address Line 1 string
gc_form_addressline2
FORM
Passes user address to form
?gc_form_addressline2=Address Line 2 string
gc_form_countrycode
FORM
Passes user country to form
?gc_form_countrycode=PT string ("US", "PT", "GB" ...)
gc_form_city
FORM
Passes user city to form
?gc_form_city=City string
gc_form_zipcode
FORM
Passes user zip code to form
?gc_form_zipcode=1000-000 string
gc_form_region
FORM
Passes user custom id to GetComplied
?gc_form_region=algarve string (max length: 256)

Callbacks

Callbacks are used as handlers for GetComplied actions.

Action Description Example Data
Initialize Triggers when GetComplied is initialized getComplied.callback.oninit = function(){ /* your code goes here */ }
Load Triggers when GetComplied loads documents and user permissions getComplied.callback.onload = function(data){ /* your code goes here */ } Consents list
Open Triggers when GetComplied is openned getComplied.callback.onopen = function(){ /* your code goes here */ }
Close Triggers when GetComplied is closed getComplied.callback.onclose = function(){ /* your code goes here */ }
Language change Triggers when user changes language getComplied.callback.onlangchange = function(data){ /* your code goes here */ } language code ("en-GB", "pt-PT"...)
Save Triggers when user approves consents getComplied.callback.onsave = function(data){ /* your code goes here */ } Consents list
Input initialize Triggers when an input is initialized getComplied.callback.oninputinit = function(data){ /* your code goes here */ } InputName
Input change Triggers when user changes his consent getComplied.callback.oninputchange = function(data){ /* your code goes here */ }
InputName
Value (true / false)
Input lock Triggers when submit button after submission input should or should not be disabled. getComplied.callback.oninputlock = function(data){ /* your code goes here */ }
InputName
Lock (true / false)

NOTE: It must be put after your snippet code.


Api Commands

Api commands are used to comunicate directly with our Api via javascript.
Api commands will only work after popup is initialized (there is a callback for when it is initialized)

Command Description Values Callback data
getComplied.api('policy-consent', {Id: 0, Grant: false}, function(data){ /* callback */ })
Sets the consent of a specific policy
Id (policy id)
Grant (bool)
Success (bool)
Message (string)
getComplied.api('thirdparty-consent', {Id: 0, Grant: false}, function(data){ /* callback */ })
Sets the consent of a specific thirdparty
Id (thirdparty id)
Grant (bool)
Success (bool)
Message (string)
getComplied.api('cookies-consent', {Grant: false}, function(data){ /* callback */ })
Sets the consent of the cookies
Grant (bool)
Success (bool)
Message (string)

Debug Console

You can open the debug console with the following technique:

Query String Scope Description Example Values Default
gc_console
MODAL
Opens console
?gc_console=true
bool
false

NOTE: It has to be set to true from backoffice and query string, otherwise it won't work.


Webhook

You can always be up to date with your contacts. Receive the response below whenever a contact or his consents change.
Response:

In the Header you can find the field "x-signature" which is generated in the webhook creation is sent to verify the authenticity of the request


Want to integrate with a CMS, ERP or CRM?

A custom GetComplied integration requires you to either be or hire a developer.

Manage all your projects gdpr privacy policies and gdpr cookies in one platform.

Salesforce gdpr compliance Extension
Microsoft gdpr compliance Plugin
Zoho gdpr compliance Extension
Zoho gdpr compliance Extension
Zoho gdpr compliance Extension

Manage all your customers
privacy in one platform.


We're here to help!

We're always happy to help with code or any questions you have.

Join our mailing list to be notified of API changes and stay up to date.



Questions?

We're always happy to help with code or other questions you might have! Contact support or connect with our sales team.