Skip to main content

Getting Started with Autohost ID Verification Integration

This guide outlines how to integrate with Autohost's Identity Verification API for verifying users without the context of a financial transactions or booking.

The API Reference documentation is available here. However, we highly recommend starting with this guide to build a foundational understanding of the integration process.

Before You Begin

Before initiating the integration process with Autohost, it's essential to create an account. Your account allows you to generate an API key and offers flexibility in customizing your account settings and user experience. This foundational step is crucial for accessing Autohost's full suite of features and tailoring them to your specific requirements.

If you don't have an account yet, click here to contact our Sales team and open an account. If you already have an account set up, this guide will help you seamlessly integrate with Autohost.

Getting Familiar with the Autohost API

How to Create an API Key

Autohost provides a self-service approach to create and manage API keys through our Dashboard. Follow these steps:

  1. Log in to Autohost Dashboard.
  2. Navigate to Settings > API.
  3. Select Create API Key.
  4. (Optional) Rename the key to an appropriate name for your control and organization.
  5. Copy the key and securely store it.

You can also explore and test the Autohost Public Postman collection here.

Authentication

All API requests require authentication using the API key generated in the previous step. Send this key in the x-api-key request header. To test your API key, call the account endpoint:

curl -X GET 'https://data.autohost.ai/v1/accounts/me' -H 'x-api-key: YOUR_API_KEY'

More details about the account endpoint can be found here.

Rate Limiting

Our API has a rate limit of 50 requests per minute to ensure equitable access and system reliability. Exceeding this limit results in a 429 Too Many Requests error. This rate limiting prevents server overloads and ensures a stable service for all users. We recommend structuring your requests to stay within this limit for uninterrupted API access.

Pagination

Autohost API supports pagination, allowing efficient data retrieval. Use the limit and from query parameters to specify the page size and starting point of your data set. For example, to fetch the first 10 records, append ?from=0&limit=10 to your query. This approach optimizes data handling and aligns with our rate-limiting strategy.

API Versioning

Understanding Versioning in Our API

Autohost employs API versioning to maintain a stable user experience. The version number is included in the endpoint URL, facilitating changes and compatibility.

Current Version

  • Our current API version is indicated as /v1 in the endpoint URL. For example, https://data.autohost.com/v1/{endpoint}.

Handling Changes

  1. Non-Breaking Changes: Minor updates and improvements within the current version that do not affect existing API contracts will not disrupt your integration.
  2. Breaking Changes: Significant changes that alter the API's fundamental behavior will be released as a new version, e.g., /v2. Your current integrations remain stable, and you can migrate to newer versions at your own pace with clear communication and documentation.

Building Your Autohost Integration

To seamlessly integrate your application with Autohost, follow these four essential steps:

  1. Create a Verification Request
  2. Send the User to the Verification Portal
  3. Review Verification Summary

1. Create a Verification Request

"Reservations" are containers for verification requests and include basic details about the applicant.

Reservations can be created asynchronously when creating many reservations at once. The API response includes a guest_portal_url link, which allows users to access the Verification Portal and complete the vetting process.

Example API request using cURL:

curl -X POST "https://data.autohost.ai/v1/reservations?sync=1" \
-H "Content-Type: application/json" \
-H "x-api-key: YOUR_API_KEY" \
-d '{
"source": "Customer Signup",
"confirmation_code": "YOUR_INTERNAL_ID",
"without_listing": true, // required for non-listing reservations
"guest": {
"first_name": "John",
"last_name": "Doe",
"email": "guest@example.com",
"phone": "+44857993444",
"birth_date": "1980-01-01", // optional if known
"location": "London, UK" // optional if known
}
}'

2. Send the User to the Verification Portal

After creating a verification request, send the user to the Verification Portal through the provided guest_portal_url link. Once the user completes the verification process, the results will be sent to you using webhooks, or you can retrieve them using the appropriate API.

3. Review Verification Summary

Retrieve all details, including Autohost verification results, from a given reservation using the appropriate API. More information can be found here.

Configuring Autohost Webhooks

Webhooks are user-defined HTTP callbacks triggered by specific events in Autohost. They provide real-time updates to your system, enhancing automation and responsiveness. Available webhooks include user data, verification status, reservation events, and account events. You can configure webhooks in two ways:

  1. Autohost Dashboard: Log in to Autohost Dashboard, go to Settings > Advanced > Webhooks, and optionally set up the HTTP Authorization header.

  2. API: Use the API endpoint /accounts/webhooks to register webhooks. Full API documentation is available here.

Get Started with Autohost SDK

The Autohost SDK seamlessly integrates Autohost's user interface components into your application. It offers an effortless way to display reservation and guest information without the need for direct API calls. The SDK key, distinct from the API key, is used for client-side operations.

Generating an SDK Key

To create and manage SDK keys, follow these steps in Autohost Dashboard:

  1. Log in to Autohost Dashboard.
  2. Go to Settings > API.
  3. Select Create SDK Key.
  4. (Optional) Rename the key for clarity.
  5. Copy and securely store the SDK key.

For details on using and implementing our client SDK, refer to our SDK documentation.