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

# Skipio API

Skipio OAuth API for SMS messaging and contact management. All API requests require a valid access_token obtained through the OAuth 2.0 Authorization Code grant flow. The API exposes 8 endpoints secured with oauth2 authentication.

## For AI agents

Programmatically request oauth authorization code, get or refresh access token. Covers 8 operations with oauth2 authentication.

## Scope

Does not handle payments, communications, or crm - use for identity and authentication only.

## Capabilities

- Request OAuth Authorization Code
- Get or Refresh Access Token
- Create Multiple Contacts
- Query and filter Skipio API records by parameters
- Monitor Skipio API operational status and events

## Use cases

### Identity and Authentication Operations

Use the Skipio API to perform identity auth operations programmatically. The API provides 8 endpoints covering core functionality including request oauth authorization code, get or refresh access token, get all custom fields.

Example prompt: Call GET `/oauth/authorize` to request oauth authorization code

### Automated Authentication Management

Automate authentication operations by combining multiple Skipio API endpoints. Agents can get or refresh access token and then get all custom fields in a single workflow.

Example prompt: Call POST `/oauth/token` to get or refresh access token, then verify the result

### AI Agent Integration via Jentic

AI agents discover and call Skipio 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 oauth2 tokens manually.

Example prompt: Search Jentic for 'request oauth authorization code', load the operation schema, and execute with Jentic-managed credentials

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | `/oauth/authorize` | Request OAuth Authorization Code |
| POST | `/oauth/token` | Get or Refresh Access Token |
| GET | `/api/v2/custom_fields` | Get All Custom Fields |
| GET | `/api/v2/contact_fields` | Get All Contact Fields |
| POST | `/api/v2/batch_contacts` | Create Multiple Contacts |
| GET | `/api/v2/contacts` | Get All Contacts |
| GET | `/api/v2/groups` | Get List of Groups |
| POST | `/api/v2/groups/{contact_group_id}/contacts` | Add Contact to Group |

## Key resources

- **Authentication** — OAuth 2.0 authentication endpoints
- **Contacts** — Contact management endpoints
- **Groups** — Contact group management endpoints
- **Custom Fields** — Custom field management endpoints
- **Contact Fields** — Contact field management endpoints

## Why Jentic

- **Setup:** Wiring Skipio by hand means implementing its OAuth 2.0 authorization code flow against app.skipio.com, exchanging the code at `/oauth/token`, and refreshing tokens yourself before calls to the contacts and groups endpoints. Through Jentic you install once, import Skipio from the API Directory, store the OAuth credentials once, and your agent calls it.
- **Permission scoping:** Skipio puts the contact group id in the URL path (`/api/v2/groups/{contact_group_id}/contacts`), so a rule can pin your agent to one contact group for that add operation. You choose the operations it may call, so if you only grant reads of contacts and custom fields, batch contact creation is not included unless you add it.
- **Credential handling:** Your Skipio OAuth credentials are stored once, encrypted, by your own Jentic One instance and injected at execution time. They never enter the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'list Skipio contacts' or 'add contacts to a group', and Jentic returns the matching Skipio operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Auth0** — Alternative identity auth API
- **Okta** — Alternative identity auth API

## FAQ

### What authentication does the Skipio API use?

The Skipio API uses OAuth 2.0 for authorization. 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 request oauth authorization code with the Skipio API?

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

### What are the rate limits for the Skipio 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 request oauth authorization code through Jentic?

Install the Jentic SDK with pip install jentic, authenticate through Jentic One, the self-hosted execution layer, then search for 'request oauth authorization code'. Jentic returns the matching Skipio API operation with its input schema. Load the schema and execute the call - credentials are injected automatically.

### How many endpoints does the Skipio API have?

The Skipio API exposes 8 endpoints covering authentication, contacts, groups operations.

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

Yes. Because Jentic One is self-hosted, your own rules decide which Skipio operations and credentials the agent may use, so you can grant read-only access to contacts and custom fields while withholding batch contact creation until you choose to add it. Since Skipio puts the contact group id in the URL path for the add-to-group operation (`/api/v2/groups/{contact_group_id}/contacts`), a rule can pin the agent to a single contact group. Any operation you do not grant, such as creating multiple contacts, stays outside what the agent can call.
