0
# Configuration and Connection
1
2
This section covers connector configuration, authentication, and connection testing for the Airbyte Source Pipedrive connector.
3
4
## Connection Specification
5
6
The connector requires specific configuration parameters to connect to Pipedrive's API.
7
8
```yaml { .api }
9
spec:
10
type: Spec
11
connection_specification:
12
type: object
13
$schema: http://json-schema.org/draft-07/schema#
14
required:
15
- api_token
16
- replication_start_date
17
properties:
18
api_token:
19
type: string
20
description: The Pipedrive API Token
21
title: API Token
22
airbyte_secret: true
23
order: 0
24
replication_start_date:
25
type: string
26
description: UTC date and time in the format 2017-01-25T00:00:00Z. Any data before this date will not be replicated. When specified and not None, then stream will behave as incremental
27
title: Start Date
28
examples:
29
- "2017-01-25 00:00:00Z"
30
order: 1
31
additionalProperties: true
32
```
33
34
## Configuration Usage
35
36
### Basic Configuration
37
38
```json
39
{
40
"api_token": "your_pipedrive_api_token",
41
"replication_start_date": "2017-01-25 00:00:00Z"
42
}
43
```
44
45
### Authentication
46
47
The connector uses API token authentication with Pipedrive's REST API:
48
49
- **Authentication Method**: API Token
50
- **Token Location**: Request parameter `api_token`
51
- **API Base URL**: `https://api.pipedrive.com/`
52
53
### Connection Testing
54
55
```yaml { .api }
56
check:
57
type: CheckStream
58
stream_names:
59
- deals
60
```
61
62
The connector validates the connection by attempting to access the `deals` stream, which requires valid API credentials.
63
64
## Base Request Configuration
65
66
All API requests use a common base configuration:
67
68
```yaml { .api }
69
base_requester:
70
type: HttpRequester
71
url_base: https://api.pipedrive.com/
72
authenticator:
73
type: NoAuth
74
error_handler:
75
type: DefaultErrorHandler
76
```
77
78
## Docker Commands
79
80
### Get Specification
81
```bash
82
docker run --rm airbyte/source-pipedrive:2.4.0 spec
83
```
84
85
### Test Connection
86
```bash
87
docker run --rm -v $(pwd)/secrets:/secrets airbyte/source-pipedrive:2.4.0 check --config /secrets/config.json
88
```
89
90
### Discover Streams
91
```bash
92
docker run --rm -v $(pwd)/secrets:/secrets airbyte/source-pipedrive:2.4.0 discover --config /secrets/config.json
93
```
94
95
### Extract Data
96
```bash
97
docker run --rm -v $(pwd)/secrets:/secrets -v $(pwd)/integration_tests:/integration_tests airbyte/source-pipedrive:2.4.0 read --config /secrets/config.json --catalog /integration_tests/configured_catalog.json
98
```
99
100
## Configuration Validation
101
102
The connector validates:
103
- **API Token**: Must be a valid Pipedrive API token with appropriate permissions
104
- **Start Date**: Must be in ISO 8601 format (YYYY-MM-DD HH:MM:SSZ)
105
- **API Access**: Checks connectivity to Pipedrive API endpoints
106
107
## Error Handling
108
109
Common configuration errors:
110
- **Invalid API Token**: Returns authentication error
111
- **Malformed Date**: Returns validation error for incorrect date format
112
- **Network Issues**: Returns connection timeout or network errors
113
- **API Rate Limits**: Handles Pipedrive's API rate limiting automatically