canonical: https://jentic.com/apis/streak.com/streak

# Streak CRM API

Streak CRM API for managing pipelines, boxes, stages, fields, and email threads in Gmail. The API exposes 35 endpoints secured with basic authentication.

## For AI agents

Programmatically get current user, get user. Covers 35 operations with basic authentication.

## Scope

Does not handle payments, communications, or developer tools - use for crm only.

## Capabilities

- Get current user
- List teams
- Update pipeline
- Query and filter Streak CRM API records by parameters
- Monitor Streak CRM API operational status and events

## Use cases

### CRM Operations

Use the Streak CRM API to perform crm operations programmatically. The API provides 35 endpoints covering core functionality including get current user, get user, list teams.

Example prompt: Call GET `/users/me` to get current user

### Automated Boxes Management

Automate boxes operations by combining multiple Streak CRM API endpoints. Agents can get user and then list teams in a single workflow.

Example prompt: Call GET `/users/{userKey}` to get user, then verify the result

### AI Agent Integration via Jentic

AI agents discover and call Streak CRM API endpoints through Jentic without managing credentials directly. An agent searches for the required operation by intent, receives the matching endpoint schema, and executes the call with Jentic-managed authentication. This eliminates the need to read API documentation or handle basic tokens manually.

Example prompt: Search Jentic for 'get current user', load the operation schema, and execute with Jentic-managed credentials

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | `/users/me` | Get current user |
| GET | `/users/{userKey}` | Get user |
| GET | `/teams` | List teams |
| GET | `/teams/{teamKey}` | Get team |
| GET | `/pipelines` | List pipelines |
| POST | `/pipelines/{pipelineKey}` | Update pipeline |
| GET | `/pipelines/{pipelineKey}` | Get pipeline |
| DELETE | `/pipelines/{pipelineKey}` | Delete pipeline |

## Key resources

- **Boxes** — Operations related to Boxes
- **Fields** — Operations related to Fields
- **Files** — Operations related to Files
- **Newsfeed** — Operations related to Newsfeed
- **Pipelines** — Operations related to Pipelines

## AI readiness

This API is usable in Jentic One now. Its AI-readiness score against Jentic's framework shows where it stands today and where improvements would make it even easier for agents to use.

- **Score:** 41 / 100
- **Maturity:** Foundational
- **Dimensions:**
  - Foundational Compliance: 83 / 100
  - Developer Experience & Jentic Compatibility: 63 / 100
  - AI-Readiness & Agent Experience: 52 / 100
  - Agent Usability: 94 / 100
  - Security: 10 / 100
  - AI Discoverability: 100 / 100
- **View full report:** https://jentic.com/apis/streak.com/streak/scorecard
- **How the score is calculated:** https://docs.jentic.com/reference/api-readiness-framework/overview/
- **More about the dimensions:** https://docs.jentic.com/reference/api-readiness-framework/specification/#dimensional-model-overview

### Score it yourself

Every API in the directory is allowlisted, so you can re-score it with no key required.

- **Score your own API:** https://jentic.com/scorecard.md
- **Scoring CLI agent skill:** https://github.com/jentic/jentic-api-scorecard/blob/main/skills/jentic-api-scorecard/SKILL.md

```sh
npx @jentic/api-scorecard-cli score <openapi-url>
```

## Why Jentic

- **Setup:** Wiring Streak CRM by hand means setting up its HTTP basic auth with your API key as the username, then managing pagination across pipelines, boxes, and teams yourself. Through Jentic you install once, import the Streak CRM API from the API Directory, store the key once, and your agent calls it.
- **Permission scoping:** Streak puts the pipeline key in the URL path (`/pipelines/{pipelineKey}`), so a rule can pin your agent to one pipeline: it can read and update that pipeline and nothing else. You choose the operations it may call, so destructive ones like deleting a pipeline are not included unless you add them.
- **Credential handling:** Your Streak basic API key is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'get the current user' or 'list pipelines', and Jentic returns the matching Streak operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Hubspot** — Alternative crm API
- **Salesforce** — Alternative crm API
- **Pipedrive** — Complementary crm API
- **Zoho** — Complementary crm API

## FAQ

### What authentication does the Streak CRM API use?

The Streak CRM API uses HTTP Basic authentication with username and password. Through Jentic, these credentials are stored encrypted in your Jentic One instance and injected at execution time, so raw secrets never enter the agent context.

### Can I get current user with the Streak CRM API?

Yes. Use the GET `/users/me` endpoint. The API returns structured JSON responses that agents can parse and act on directly.

### What are the rate limits for the Streak CRM API?

Rate limits are not specified in the OpenAPI spec. Check the vendor documentation for current limits. Through Jentic, rate limiting is handled automatically with retry logic built into the execution layer.

### How do I get current user through Jentic?

Install the Jentic SDK with pip install jentic, authenticate through Jentic One, the self-hosted execution layer, then search for 'get current user'. Jentic returns the matching Streak CRM API operation with its input schema. Load the schema and execute the call - credentials are injected automatically.

### How many endpoints does the Streak CRM API have?

The Streak CRM API exposes 35 endpoints covering boxes, fields, files operations.

### Can I limit what my agent is allowed to do with the Streak CRM API?

Yes. Because Jentic One is self-hosted, your own rules decide which Streak operations and credentials the agent may use. Since Streak puts the pipeline key in the URL path (`/pipelines/{pipelineKey}`), you can pin the agent to a single pipeline so it only reads and updates that one and nothing else. You choose the exact operations it may call, so destructive actions like DELETE `/pipelines/{pipelineKey}` stay out of reach unless you explicitly grant them.
