cobra CRM Cloud - API Docs
StartWebsitecobra Knowledge Portal
StartWebsitecobra Knowledge Portal
  1. Start
  • Welcome to our Developer Portal
  • Hybrid REST / GraphQL API
  • GraphQL API Endpoints
  • Versioning
  • Translated Responses
  • Tenant Context
  • Authentication
  • Pagination, Sorting, Filtering in GraphQL
  • Date/Time Format And Time Zones
  • Usage Policy
  • Access
    • Get a user by id
      GET
    • Update an existing user
      PUT
    • Delete a user
      DELETE
    • Create a new user
      POST
    • Deactivate an existing user
      POST
    • Activate an existing user
      POST
    • Reset the password for an existing user
      POST
    • Delete multiple users by id
      DELETE
    • Get available roles for a tenant
      GET
  • Auth
    • Get the OAuth2 configuration URL and the client ID.
      GET
    • Logs in to cobra with the login data and returns a bearer token if successful.
      POST
    • This is an implementation of the Introspect endpoint as defined in RFC 7662
      POST
  • cobra CRM
    • People360
      • Business Cards
        • Update an existing address in a business card of a person
        • Delete an address from a specific business card of a person by its address ID. If the favorite address is deleted and only one other address remains, this address becomes the new favorite. Otherwise, no new favorite is set
        • Create a new address in a person's existing business card. If the address to be created becomes the new favorite, the old favorite will lose its status as a favorite
        • Update an existing business card of a specific person by the business card ID
        • Retrieve the details of an existing business card from a specific person by the people ID and the business card ID
        • Delete a business card form a specific person by the business card ID
        • Retrieve the details of all existing business cards from a specific person by the people ID
        • Create a new business card for an existing person
        • Retrieve the details of an existing business card from a specific person only by the business card ID
        • Delete multiple business cards from a person by their IDs
        • Connects a persons business card with a company. The business card must not be private.
        • Retrieve an existing person's business card as a vCard (.vcf)
        • Validates a business card before it is created or updated.
      • Relations
        • Retrieve all relations of a given specific person by relation category
        • Relate two people with each other
        • Update a specific relation of a person
        • Remove a relation between two people
        • Creates one or more existing relations to multiple people
        • Update one or more existing relations of a person
        • Remove multiple relations of one or more people
        • Validates a relation before it is created or updated.
      • Settings
        • Update the settings for People360 such as postal address validation etc
      • Management
        • Create one or more new entries for people properties
        • Delete multiple entries for people properties from a list by their IDs
        • Delete an entry for people property from a list by its ID
        • Create one or more personality tags
        • Delete multiple personality tags from the list by their IDs
        • Delete a personality tag from the list by its ID
        • Create one or more new orga tags
        • Delete multiple orga tags from the list by their IDs
        • Delete an orga tag from the list by its ID
        • Create one or more new address types
        • Delete multiple address types from the list by their IDs
        • Delete an address type from the list by its ID
        • Create one or more life cycles
        • Delete multiple life cycles from the list by their IDs
        • Delete a life cycle from the list by its ID
        • Create one or more new manager roles that can be assumed by responsible people
        • Delete multiple manager roles from the list by their IDs
        • Delete a manager role from the list by its ID
        • Create one or more new address types
        • Delete multiple address types from the list by their IDs
        • Delete an address type from the list by its ID
        • Create one or more new company relation types
        • Delete multiple company relation types from the list by their IDs
        • Delete an company relation type from the list by its ID
      • Batch
        • Start a new process to validate addresses
        • Cancel an ongoing process that validates addresses
        • A data set with information about the process
      • PeopleMerge
        • If 2 people have been merged, this end point must be called at the end.
      • Retrieve people filtered by email or employee status or both
      • Retrieve a list of people
      • Create a new person
      • Retrieve the details of an existing person by its ID
      • Update an existing person by its ID
      • Delete a person by its ID
      • Retrieve a quicklook of an existing person by its ID
      • Update one or more existing people
      • Create one or more people
      • Delete multiple people by their IDs
      • Update the note on a person by its ID
      • Update the list of orga tags on a person by its ID (the list will be overwrite)
      • Update the list of personality tags on a person by its ID (the list will be overwrite)
      • Update the lifecycle on a person by its ID
      • Validates a person.
      • Retrieve all type of profile images for a person by its ID
      • Upload a replacement profile image for a person by its ID
      • Delete the profile image of a person by its ID
    • Touchpoints
      • Documents
        • Upload a file to an existing touchpoint
        • Delete a file from a touchpoint by its ID
      • Settings
        • Configure which of the predefined touchpoint types and channels should be activated for use
      • Management
        • Create one or more new tags
        • Delete multiple tags from the list by their IDs
        • Delete a tag from the list by its ID
      • Ai
        • Use AI to generate an email text based on the last touchpoints
        • Uses AI to generate a recommendation of the next steps based on the last touchpoints
      • Retrieve the details of an existing touchpoint by its ID
      • Create a new touchpoint
      • Update an existing touchpoint by its ID
      • Delete a touchpoint by its ID
      • Delete multiple touchpoints by their IDs
      • Perform an input validation without changing the data set or creating a touchpoint in the database (calculated fields are returned)
      • Add one or more tags to selected touchpoints
      • Remove one or more tags from selected touchpoints by their IDs
      • Delete a person involved from the touchpoint by its ID
      • Update the priority for multiple touchpoints by their IDs
      • Update the priority for a touchpoint by its ID
      • Add the current mood to a touchpoint by its ID
      • Move touchpoints from one person to another
    • Companies
      • Relations
        • Relate two companies with each other
        • Update a specific relation of a company
        • Remove a relation between two companies
        • Update one or more existing relations of a company
        • Remove multiple relations of one or more companies
        • Change the direction of the relation between two companies
      • Documents
        • Upload a file to an existing company
        • Delete a file from a company by its ID
      • Settings
        • Update the settings for Companies such as postal address validation etc.
      • Management
        • Create one or more new tags
        • Delete multiple tags from the list by their IDs
        • Delete a tag from the list by its ID
        • Create one or more entries for number of employees
        • Delete multiple entries for number of employees from the list by their IDs
        • Delete an entry for number of employees from the list by its IDs
        • Create one or more entries for number of customers
        • Delete multiple entries for number of customers from the list by their IDs
        • Delete an entry for number of customers from the list by its IDs
        • Create one or more legal forms
        • Delete multiple legal forms from the list by their IDs
        • Delete a legal form from the list by its IDs
        • Create one or more reference number types
        • Delete multiple reference number types from the list by their IDs
        • Delete a reference number type from the list by its ID
        • Create one or more industry sectors
        • Delete multiple industry sectors from the list by their IDs
        • Delete an industry sector from the list by its ID
        • Create one or more relation types
        • Delete multiple relation types from the list by their IDs
        • Updates a relation Type
        • Delete a relation type from the list by its ID
        • Create one or more life cycles
        • Delete multiple life cycles from the list by their IDs
        • Delete a life cycle from the list by its ID
        • Create one or more new email address types
        • Delete multiple email address types from the list by their IDs
        • Delete an email address type from the list by its ID
      • Batch
        • A data set with information about the process
        • Cancel an ongoing process that validates addresses
        • Start a new process to validate addresses
      • Bank Accounts
        • Upload a file for the direct debit mandate to a company bank account
        • Delete a file for the direct debit authorization from a company bank account
      • Logos
        • Upload a replacement logo for a company by its ID
        • Delete the logo from a company by its ID
        • Upload a logo for a company by its ID using the clearbit api and delete the old logo
      • PeopleRelations
        • Create a new managed by person relation between a person and a company.
        • Creates new managed by person relations between persons and a company.
        • Updates managed by person relations between persons and a company
        • Deletes managed by person relations.
        • Updates a managed by person relation between a person and a company.
        • Deletes a managed by person relation.
      • Create a new address for an exisiting company
      • Update an existing address of a specific company by its ID This endpoint should be only used by the frontend
      • Delete an address from a specific company by its ID
      • Perform an input validation without changing the dataset or creating a company address in the database (calculated fields are returned).
      • Retrieve the details of an existing company by its ID
      • Update an existing company by its ID
      • Delete a company by its ID
      • Retrieve the details of a company by its domain
      • Create a new company
      • Update the note on a company by its ID
      • Update the list of tags on a company by its ID (the list will be overwrite)
      • Update the lifecycle on a company by its ID
      • Delete multiple companies by their IDs
      • Add one or more tags to selected companies
      • Remove one or more tags from selected companies by their IDs
      • Add a new phone number to an exisitng company
      • Update an existing phone number of a specific company by its ID
      • Delete a phone number form a specific company by its ID
      • Perform an input validation without changing the data set or creating a company in the database (calculated fields are returned)
      • Update an existing e-mail address of a specific company by its ID
      • Perform an input validation without changing the data set or creating a company phone in the database
      • Add a new e-mail address to an existing company
      • Update existing e-mail addresses of a specific company by its ID. If the entry to be updated is marked as a favorite, the previous favorite loses its status. If no e-mail has been marked as a favorite, the first available element is selected
      • Delete an e-mail address form a specific company by its ID. If the entry to be deleted is marked as a favorite, a new favorite is determined. If no e-mail has been marked as a favorite, the first available element is selected
  • cobra Event
    • Settings
      • Booking form field sets
        • Gets a field set for booking forms by its ID
        • Updates an existing field set for booking forms
        • Deletes an existing field set for booking forms
        • Creates a new field set for booking forms
        • Validates a field set for booking forms
        • Replaces all references to existing booking form field set by another set.
      • Cancellation conditions
        • Gets a cancellation condition by its ID
        • Updates an existing cancellation condition
        • Deletes an existing cancellation condition
        • Creates a new cancellation condition
        • Validates a cancellation condition
        • Replaces all references to existing cancellation condition by another condition.
      • Contact person templates (copy list)
        • Gets a contact person template by its ID
        • Updates an existing contact person template
        • Deletes an existing contact person template
        • Creates a new contact person template
        • Deletes a list of contact person templates
        • Validates a contact person template
      • Contributor roles (tenant list)
        • Gets a contributor role by its ID
        • Updates an existing contributor role
        • Deletes an existing contributor role
        • Creates a new contributor role
        • Deletes a list of contributor roles
        • Validates a contributor role
        • Replaces all references to existing contributor role by another contributor role.
      • Event categories (tenant list)
        • Gets an event category by its ID
        • Updates an existing event category
        • Deletes an existing event category
        • Creates a new event category
        • Deletes a list of event categories
        • Validates an event category
        • Replaces all references to existing event category by another event category.
      • Online meeting platforms (vendor list)
        • Gets a online meeting platform by its ID
      • Orga tags (adhoc list)
        • Gets an orga tag by its ID
        • Updates an existing orga tag
        • Deletes an existing orga tag
        • Creates a new orga tag
        • Deletes a list of orga tags
        • Validates an orga tag
        • Replaces all references to existing orga tag by another orga tag.
      • Tax rates (vendor list)
        • Gets a tax rate by its ID
      • Portal tags (tenant list)
        • Gets a portal tag by its ID
        • Updates an existing portal tag
        • Deletes an existing portal tag
        • Creates a new portal tag
        • Deletes a list of portal tags
        • Validates a portal tag
        • Replaces all references to existing portal tag by another portal tag.
      • Gets the event settings for the current tenant
      • Updates the event settings for the current tenant
      • Validates the event settings
    • Event files
      • Uploads the provided file for the event
      • Deletes the file with the specified url of an event
      • Deletes all files of an event
    • Event images
      • Uploads an image of a certain type for the event
      • Deletes the image with the specified url of an event
      • Deletes all images of an event
      • Updates the alternative text of an image
    • Contact person template images
      • Uploads an image for the contact person template.
      • Deletes the contact person template image.
      • Deletes a list of contact person template images.
    • Bookings
      • Creates a new booking (public)
      • Gets a booking by its ID
      • Gets the confirmation infos for a successful booking (public)
      • Deletes an existing booking
      • Deletes a list of bookings
      • Calculates the current cancellation rules that apply when cancelling a booking including all tickets
      • Cancels a booking and all belonging tickets
      • Cancels a booking and all belonging tickets
      • Calculates the current cancellation rules that apply when cancelling a booking including all tickets
      • Sets the booker information for a booking
      • Sends an invoice mail to the booker
      • Sets the invoice number of an external booking
      • Change the status of a payment
      • Collects the booking history statistics for an event
      • Collects the booking history actions for an event
      • Looks for data inconsistency in a booking and executes reparations.
    • Invitations
      • Gets details of an invitation (public)
      • Gets an invitation by its ID
      • Gets details of an invitation (public)
      • Deletes an existing invitation
      • Reject an Invitation. If a ticket was already bought using this invitation, the ticket is cancelled.
      • Deletes a list of invitations
      • Creates a new invitation for an event
      • Validates an invitation
      • Send an invitation e-mail to a list of persons to invite
      • Send an filtered invitation e-mail to a list of persons to invite
      • Send an invitation free e-mail to a list of persons to invite
      • Send an filtered invitation free e-mail to a list of persons to invite
      • Sets information data for the invited person
      • Imports invitations from a file
      • Generates a preview for a file import
      • Exports invitations for an event
      • Change the status of a list of participants
    • Event tickets
      • Gets an event ticket by its ID
      • Add custom integration data to an event ticket
      • Get an event ticket summary
      • Change the status of a list of participants
      • Resend event tickets to a list of participants
      • Send free mails to a list of participants
      • Send free mails to filtered participants
      • Validates an event ticket and checks it in
      • Sets participant information data
      • Exports event tickets
    • Website images
      • Uploads an image of a certain type for the website
      • Deletes the image with the specified url of a website
      • Deletes all images of a website
      • Updates the alternative text of an image
    • Websites
      • Gets a website by its ID
      • Gets an event by its ID (public)
      • Updates an existing website
      • Gets the field set for booking forms that is used by an event (public)
      • Deletes an existing website
      • Gets a portal config by its url (public)
      • Creates a new website
      • Deletes a list of websites
      • Validates a website
      • Validates a website
      • Replaces all references to existing event portal by another event portal: all events using the original portal will migrate to the replacement portal.
      • Enables or disables the publication of a website
      • Validates the publication of a website
    • Gets an event by its ID
      GET
    • Updates an existing event
      PUT
    • Deletes an existing event
      DELETE
    • Creates a new event
      POST
    • Deletes a list of events
      DELETE
    • Validates an event
      POST
    • Get event as iCal format
      GET
    • Duplicates an event
      POST
    • Updates the note of an event
      PUT
    • Updates the publication of an event
      PUT
    • Validates the publication of an event
      POST
  • Tickets
    • Get a ticket by id
    • Update an existing ticket
    • Delete a ticket
    • Create a new ticket
    • Change ticket state (New, In Progress, Done)
  • Integrations
    • Webhooks
      • Get a list of all webhook subscriptions
      • Create a new webhook subscription
      • Get a webhook subscription by ID
      • Delete a webhook subscription
      • Change a webhook subscription
      • Lists all Webhook events which can be subscribed
    • EAP
      • Connectors
        • Get all available folders of a mailbox
        • Get all available categories of a mailbox
        • Get all available user with short and display name of cobra CRM
      • RuleActions
        • Get all actions of a rule
        • Create a new action for a rule
        • Delete an action by id
        • Delete all actions for the rule
      • RuleFilters
        • Get all filters of a rule which are used to filter emails before applying actions
        • Create a new filter for a rule
        • Delete all filters of a rule
      • Rules
        • Get all rules for the current user
        • Create a new rule for the current user
        • Get a rule by id
        • Modify an existing rule
        • Delete a rule by id
      • Runs
        • Run a specific rule for automated email processing
  • TenantInfo
    • Returns general information such as the TenantId and contact details of the client currently logged in.
    • This can be used to read out the client's currently set tariff, including all available modules and their functions contained in the tariff.
    • Returns general information about the tenants subscription.
  1. Start

Tenant Context

Tenant-Based Data Isolation: A Guide to Using X-Cobra-TenantId Header#

Introduction#

At cobra, we prioritize data security and isolation, and our approach involves organizing customer data into distinct units known as “Tenants”. Each Tenant acts as an independent container, holding all Customer Relationship Management (CRM) data in isolation. Additionally, users and access management are strictly tied to each Tenant. This guide outlines the significance of our Tenant-based architecture and how to interact with our APIs using the X-Cobra-TenantId header.

Understanding Tenants#

CRM Data Isolation#

Tenants provide a clear boundary for CRM data, ensuring that information related to one customer or entity is segregated from another. This isolation enhances data privacy and security, meeting the diverse needs of our clients.

User and Access Management#

User accounts and access controls are managed at the Tenant level. This means that each Tenant has its own set of users, and permissions are granted based on the specific requirements of that Tenant. This model offers fine-grained control over who can access and modify data within a given Tenant.

Interacting with APIs Using X-Cobra-TenantId Header#

To access data of a specific Tenant through our APIs, it is essential to include the X-Cobra-TenantId header in every request. This header serves as the key identifier, allowing our system to route the request to the appropriate Tenant and enforce the associated access controls.

Example API Request#

Here's an example of how to include the X-Cobra-TenantId header in an API request:
GET /api/v1/resource
X-Cobra-TenantId: your_tenant_id
Replace your_tenant_id with the actual Tenant identifier for the specific CRM data you intend to access.

Security and Compliance#

This Tenant-based approach enhances security and compliance measures, as it ensures that data is accessed and managed in alignment with the rules and regulations governing each Tenant. It also enables auditing and tracking of activities on a per-Tenant basis.

Best Practices#

1.
Secure Handling of Tenant Identifiers: Treat Tenant identifiers with care and securely manage them to prevent unauthorized access.
2.
Consistent Usage of Headers: Ensure that the X-Cobra-TenantId header is consistently included in all API requests requiring Tenant-specific data.
3.
User Authentication per Tenant: Authenticate users within the context of the specific Tenant they are associated with to maintain the integrity of the isolation model.

Conclusion#

Our Tenant-based data isolation model, coupled with the use of the X-Cobra-TenantId header, provides a robust and secure framework for managing CRM data. This approach aligns with our commitment to data privacy, security, and compliance. If you have any questions or require assistance in working with our Tenant-based architecture, feel free to reach out to our support team. Happy coding!
Modified at 2024-01-29 17:23:46
Previous
Translated Responses
Next
Authentication
Built with