Skip to main content

Devin AI

Devin AI is an autonomous AI software engineer from Cognition that handles end-to-end engineering workflows — planning, coding, testing, debugging, and deployment. It operates in a secure sandbox with a terminal, editor, and browser to complete complex multi-step tasks with minimal oversight. Teams use it to automate coding at scale through repeatable playbooks.

Devin AI icon

Power end-to-end data operations for your Devin AI API with Nexla. Our bi-directional Devin AI connector is purpose-built for Devin AI, making it simple to ingest data, sync it across systems, and deliver it anywhere — all with no coding required. Nexla turns API-sourced data into ready-to-use, reusable data products and makes it easy to send data to Devin AI or any other destination. With comprehensive monitoring, lineage tracking, and access controls, Nexla keeps your Devin AI workflows fast, secure, and fully governed.

Features

Type: API

SourceDestination

  • Seamless API Integration: Connect to any endpoint as source or destination without coding, with automatic data product creation
  • Visual Composition & Chaining: Build complex integrations using visual templates, chain API calls, and compose workflows with data validation and filtering
  • API Proxy: Expose curated slices of your data securely with a secure and customizable API proxy that validates and transforms data on the fly
  • Request optimization with intelligent batching, retry, and caching to minimize API calls and costs

Prerequisites

To connect Nexla to your Devin AI organization, you will need a Devin AI API key (also called a Service User API key) and your Organization ID. Devin AI uses a service user model for programmatic API access — service users are separate identities from human users, appear independently in audit logs, and their permissions are controlled through role-based access control (RBAC).

Obtain Your Organization ID

Your Organization ID is required for all Devin AI v3 API endpoints. It identifies the specific organization whose data Nexla will access.

  1. Sign in to your Devin AI account at app.devin.ai.

  2. Navigate to Settings > Service Users in the left-hand navigation.

  3. Your Organization ID is displayed on the Service Users page. Copy and save this value — you will need it when configuring the Nexla credential.

Create a Service User and Generate an API Key

Devin AI API keys are tied to service users — dedicated machine identities used for integrations and automated workflows. Creating a dedicated service user for Nexla ensures that API activity is clearly attributed and permissions can be precisely scoped.

  1. From the Settings > Service Users page in the Devin AI web app, click Create Service User.

  2. Enter a descriptive name for the service user (e.g., nexla-integration) to make it easy to identify in audit logs.

  3. Assign a role to the service user that includes the permissions required for your integration:

    • To read sessions, playbooks, secrets, and knowledge notes, the service user needs read permissions for those resource types.

    • To create or modify sessions, playbooks, secrets, or knowledge notes, the service user needs write permissions for those resource types.

    Assign only the permissions your integration actually requires. Following the principle of least privilege reduces the risk of unintended changes to your Devin AI organization. Additional permissions can be granted later if needed.

  4. After saving the service user, click Generate API Key on the service user's detail page.

  5. Copy the generated API key immediately. The key begins with cog_ and is displayed only once — it cannot be retrieved after you leave the page. Store it securely in a password manager or secret management system.

    Important

    The API key is shown only once at the time of creation. If you lose the key, you will need to generate a new one. Never share your API key or commit it to source control.

For complete details on service user setup and permission scopes, see the Devin AI API Authentication documentation and the API Overview.

Authenticate

Credentials required

Bearer token authentication. Provide your Devin AI API key for authorized access to sessions, playbooks, and knowledge management endpoints.

FieldRequiredSecretDescription
API KeyYesYesYour Devin AI API key for authentication.
Organization IDYesNoYour Devin AI organization ID. Required for all v3 API endpoints (e.g. /v3/organizations/{organization_id}/sessions). Find it on the Settings → Service Users page in the Devin UI.

Create a credential in Nexla

  1. To create a new Devin AI credential, after selecting the data source/destination type, click the Add Credential tile to open the Add New Credential overlay.

  2. Enter a name for the credential in the Credential Name field and a short, meaningful description in the Credential Description field.

  3. Devin AI uses Bearer token authentication — Nexla sends your API key as an Authorization: Bearer header on every request to the Devin AI API. Enter your Devin AI API key (beginning with cog_) in the API Key field. This key authenticates Nexla as the service user and controls which Devin AI resources Nexla can access.

  4. Enter your Devin AI Organization ID in the Organization ID field. This value is used to construct the base URL for all v3 API calls (e.g., /v3/organizations/{organization_id}/sessions). You can find this ID on the Settings > Service Users page in the Devin AI web app.

    The Organization ID is not a secret and does not need to be stored securely, but it must be entered exactly as it appears in the Devin AI settings — typically a UUID-format string.

  5. Click the Save button at the bottom of the overlay. The newly added credential will now appear in a tile on the Authenticate screen during data source/destination creation and can be selected for use with a new data source or destination.

Use as a data source

To create a new data flow, navigate to the Integrate section, and click the New Data Flow button. Select the Devin AI connector tile, then select the credential that will be used to connect to the Devin AI organization, and click Next; or, create a new Devin AI credential for use in this flow.

Endpoint templates

Nexla provides pre-built templates that can be used to rapidly configure data sources to ingest data from common Devin AI endpoints. Select the endpoint from which this source will fetch data from the Endpoint pulldown menu. Available endpoint templates are listed in the expandable boxes below.

List Sessions

Returns a paginated list of all sessions in your Devin AI organization. Use this endpoint to retrieve an inventory of engineering sessions, monitor session activity at scale, or feed session metadata into dashboards and reporting pipelines.

  • No additional parameters are required for this endpoint. Nexla will automatically paginate through all available sessions using Devin AI's cursor-based pagination, fetching up to 200 sessions per page until all sessions have been retrieved.
  • Each session record includes session metadata such as status, timestamps, and identifiers. Use the Get Session endpoint to retrieve full details — including structured outputs — for a specific session.

This endpoint returns organization-scoped sessions only. Enterprise-scoped endpoints are not covered by this connector. For complete details on the response schema, see the Devin AI API reference for List Sessions.

Get Session

Retrieves full details for a specific Devin AI session by its unique ID, including the session's status, outputs, and structured results. Use this endpoint when you need the complete record for a known session — for example, to audit a completed engineering task or pull structured output data into a downstream system.

  • Enter the unique identifier of the session you want to retrieve in the Session ID field. Session IDs can be found by running the List Sessions endpoint first, or by copying the session ID from the Devin AI web app.

    • The Session ID is a required field. The source will not fetch any data if this field is left empty.
    • Each execution of this source will return the details for the single session identified by the provided ID.

For complete details on the response schema, see the Devin AI API reference for Get Session.

Get Session Insights

Returns detailed insights and analytics for a specific Devin AI session. Use this endpoint to analyze session performance, review task completion metrics, and understand how Devin approached and resolved an engineering task.

  • Enter the unique identifier of the session whose insights you want to retrieve in the Session ID field.

    • The Session ID is a required field. Session IDs can be obtained from the List Sessions endpoint or from the Devin AI web app.

For complete details on the insights response schema, see the Devin AI API reference for Get Session Insights.

List Session Messages

Returns all messages exchanged within a specific Devin AI session. Use this endpoint to retrieve the full conversation thread between Devin and the user for a given session — useful for auditing interactions, reviewing instructions given to Devin, and analyzing how tasks were steered.

  • Enter the unique identifier of the session whose messages you want to retrieve in the Session ID field.

    • The Session ID is a required field. Session IDs can be obtained from the List Sessions endpoint or from the Devin AI web app.
    • This endpoint returns all messages for the session in a single response — it is not paginated.

For complete details on the message response schema, see the Devin AI API reference for List Session Messages.

List Playbooks

Returns a paginated list of all playbooks defined in your Devin AI organization. Playbooks are reusable workflow templates that define repeatable instructions and processes for Devin. Use this endpoint to inventory your organization's playbooks, synchronize playbook metadata to external systems, or audit playbook usage over time.

  • No additional parameters are required. Nexla will automatically paginate through all available playbooks using Devin AI's cursor-based pagination, fetching up to 200 playbooks per page.
  • Each record in the response includes playbook identifiers and metadata. Use the Get Playbook endpoint to retrieve the full instructions and content for a specific playbook.

For complete details on the response schema, see the Devin AI API reference for List Playbooks.

Get Playbook

Retrieves a single playbook's full content — including its instructions and metadata — by its unique ID. Use this endpoint to extract the complete definition of a specific playbook for auditing, versioning, or synchronizing playbook content with external documentation systems.

  • Enter the unique identifier of the playbook you want to retrieve in the Playbook ID field.

    • The Playbook ID is a required field. Playbook IDs can be obtained from the List Playbooks endpoint or from the Devin AI web app.

For complete details on the playbook response schema, see the Devin AI API reference for Get Playbook.

List Secrets

Returns a paginated list of all secrets stored in your Devin AI organization. Secrets are organization-level credentials and API keys that Devin sessions can access at runtime. Use this endpoint to audit which secrets exist in your organization, verify secret configurations, or synchronize secret metadata to a secrets inventory system.

  • No additional parameters are required. Nexla will automatically paginate through all available secrets using Devin AI's cursor-based pagination, fetching up to 200 secrets per page.
  • The Devin AI API returns only secret metadata (such as names and identifiers) — secret values are never exposed through the API.

For complete details on the response schema, see the Devin AI API reference for List Secrets.

List Knowledge Notes

Returns a paginated list of all knowledge notes in your Devin AI organization's knowledge base. Knowledge notes are tips, instructions, and organizational context that Devin automatically recalls as relevant when working on tasks. Use this endpoint to export and back up your organization's Devin knowledge base, synchronize knowledge notes to external documentation systems, or audit knowledge content.

  • No additional parameters are required. Nexla will automatically paginate through all available knowledge notes using Devin AI's cursor-based pagination, fetching up to 200 notes per page.
  • Use the Get Knowledge Note endpoint to retrieve the full body and metadata for a specific note.

For complete details on the response schema, see the Devin AI API reference for List Knowledge Notes.

Get Knowledge Note

Retrieves a single knowledge note by its unique ID, including its full body text and metadata. Use this endpoint to extract the complete content of a specific knowledge note for review, versioning, or synchronizing to an external documentation or knowledge management system.

  • Enter the unique identifier of the knowledge note you want to retrieve in the Note ID field.

    • The Note ID is a required field. Note IDs can be obtained from the List Knowledge Notes endpoint.

For complete details on the knowledge note response schema, see the Devin AI API reference for Get Knowledge Note.

Once the selected endpoint template has been configured, click the Test button to the right of the endpoint selection menu to retrieve a sample of the data that will be fetched. Sample data will be displayed in the Endpoint Test Result panel on the right, allowing you to verify that the source is configured correctly before saving.

Manual configuration

Devin AI data sources can also be manually configured to ingest data from any valid Devin AI v3 API endpoint not covered by the pre-built templates, including sources that use chained API calls or custom request parameters. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, endpoint URL, date/time and lookup macros, path to data, metadata, and request headers.

All Devin AI v3 organization-scoped endpoints follow the base URL pattern https://api.devin.ai/v3/organizations/{organization_id}/, where {organization_id} is replaced by your actual Organization ID — for example, .../sessions, .../playbooks, .../secrets, and .../knowledge/notes. List endpoints return records inside an items array with a next_cursor field for pagination, so set Path to Data in Response to $.items[*] to treat each item as an individual record. You do not need to include the Authorization header — it is automatically injected by Nexla using the API key configured in your Devin AI credential.

Once all of the relevant settings have been configured, click the Create button in the upper right corner of the screen to save and create the new Devin AI data source. Nexla will now begin ingesting data from the configured endpoint and will organize any data that it finds into one or more Nexsets.

Use as a destination

Click the + icon on the Nexset that will be sent to the Devin AI destination, and select the Send to Destination option from the menu. Select the Devin AI connector from the list of available destination connectors, then select the credential that will be used to connect to the Devin AI organization, and click Next; or, create a new Devin AI credential for use in this flow.

Endpoint templates

Nexla provides pre-built templates that can be used to rapidly configure destinations to send data to common Devin AI endpoints. Select the endpoint to which data will be sent from the Endpoint pulldown menu. Then, click on the template in the list below to expand it, and follow the instructions to configure additional endpoint settings.

Create Session

Launches a new Devin AI session with a prompt and optional configuration parameters. Use this endpoint to programmatically kick off Devin engineering tasks from Nexla — for example, triggering a Devin session whenever a new work item arrives in your pipeline, or automating session creation as part of a broader orchestration workflow.

  • The request body is sent as JSON. Ensure your Nexset contains the fields required by the Devin AI Create Session API, including a message field with the prompt text you want Devin to act on.
  • Optional fields supported by the Create Session endpoint include:

    • snapshot_id: A snapshot ID to use as the starting environment for the session.
    • playbook_id: A playbook ID to apply to the session, providing Devin with structured instructions.
    • idempotent_id: A unique identifier to prevent duplicate session creation if the same request is submitted more than once.
    • max_acu_limit: The maximum number of ACUs (AI Compute Units) that this session may consume before being automatically stopped.
  • After a session is successfully created, the Devin AI API returns the new session ID and its initial status. Use the Response Webhook option in the manual configuration section to capture this response automatically in a new Nexla source.

For complete request and response schema details, see the Devin AI API reference for Create Session.

Send Session Message

Sends a follow-up message or instruction to an active Devin AI session, allowing interactive steering of the agent. Use this endpoint to provide Devin with additional context, updated requirements, or corrective feedback mid-session — for example, automatically forwarding new issue comments or CI failure logs to an in-progress Devin session.

  • Enter the unique identifier of the session to which the message will be sent in the Session ID field.

    • The Session ID is a required field. It can be obtained from the response when creating a session, from the List Sessions data source endpoint, or from the Devin AI web app.
    • The session must be active (not terminated or completed) to accept new messages.
  • The message content is sent as a JSON body. Ensure your Nexset contains a message field with the text of the instruction or information you want to send to Devin.

For complete request and response schema details, see the Devin AI API reference for Send Session Message.

Terminate Session

Terminates a running or queued Devin AI session, freeing resources and stopping any work in progress. Use this endpoint to programmatically cancel sessions that are no longer needed — for example, aborting a session when a related work item is closed, a deployment is cancelled, or a time or cost limit is reached.

  • Enter the unique identifier of the session to terminate in the Session ID field.

    • The Session ID is a required field. It can be obtained from the List Sessions data source endpoint or from the Devin AI web app.
  • This operation sends a DELETE request to the Devin AI API. No request body is required.

:::warning Important Terminating a session is irreversible. Any work Devin has completed but not yet committed or saved may be lost. Confirm that the session is no longer needed before sending a terminate request. :::

For complete details on the terminate session endpoint, see the Devin AI API reference for Terminate Session.

Create Playbook

Creates a new organization-level playbook that defines repeatable Devin workflows. Playbooks provide structured instructions and context to Devin sessions, enabling consistent, reusable engineering processes. Use this endpoint to programmatically provision playbooks from external systems — for example, publishing approved workflow templates from a documentation system into Devin.

  • The request body is sent as JSON. Ensure your Nexset contains the fields required by the Devin AI Create Playbook API, including a name and the playbook's instructions content.
  • After a playbook is created, it becomes available to all sessions in your organization via the playbook_id parameter on the Create Session endpoint.

For complete request and response schema details, see the Devin AI API reference for Create Playbook.

Update Playbook

Updates an existing playbook's instructions, name, or metadata. Use this endpoint to keep playbooks current as organizational processes evolve — for example, automatically updating a playbook whenever a corresponding process document is revised in an external system.

  • Enter the unique identifier of the playbook to update in the Playbook ID field.

    • The Playbook ID is a required field. Playbook IDs can be obtained from the List Playbooks data source endpoint or from the Devin AI web app.
  • The updated playbook content is sent as a JSON body using a PUT request, which replaces the full playbook definition. Ensure your Nexset contains all required playbook fields, not just the fields you wish to change.

For complete request and response schema details, see the Devin AI API reference for Update Playbook.

Delete Playbook

Deletes an existing playbook by its unique ID. Use this endpoint to programmatically remove obsolete or retired playbooks from your Devin AI organization — for example, cleaning up playbooks that correspond to deprecated processes or archived projects.

  • Enter the unique identifier of the playbook to delete in the Playbook ID field.

    • The Playbook ID is a required field. Playbook IDs can be obtained from the List Playbooks data source endpoint or from the Devin AI web app.
  • This operation sends a DELETE request. No request body is required.

:::warning Important Deleting a playbook is permanent and cannot be undone. Verify that the playbook is no longer in use before proceeding. :::

For complete details, see the Devin AI API reference for Delete Playbook.

Create Secret

Stores a new organization-level secret — such as an API key or credential — that Devin sessions can access at runtime. Use this endpoint to programmatically provision secrets in Devin AI from a secrets management pipeline or onboarding workflow.

  • The request body is sent as JSON. Ensure your Nexset contains the required fields for the Devin AI Create Secret API, including the secret's name and value.
  • Secrets stored in Devin AI are available to all sessions in your organization at runtime. Secret values are write-only — they cannot be retrieved through the API after creation.

:::warning Important Secret values passed through this destination will be transmitted to the Devin AI API over HTTPS. Ensure that your Nexset does not expose sensitive values in logs or sample payloads. Review your Nexla data flow access controls before sending secrets through this endpoint. :::

For complete request and response schema details, see the Devin AI API reference for Create Secret.

Delete Secret

Deletes an organization-level secret by its unique ID. Use this endpoint to remove secrets that are no longer needed, have been rotated, or correspond to revoked credentials.

  • Enter the unique identifier of the secret to delete in the Secret ID field.

    • The Secret ID is a required field. Secret IDs can be obtained from the List Secrets data source endpoint.
  • This operation sends a DELETE request. No request body is required.

:::warning Important Deleting a secret is permanent. Any Devin sessions that reference this secret will lose access to it immediately. :::

For complete details, see the Devin AI API reference for Delete Secret.

Create Knowledge Note

Creates a new organization-level knowledge note so Devin can learn organization-specific context. Knowledge notes are tips, instructions, and background information that Devin automatically recalls as relevant when working on tasks. Use this endpoint to programmatically populate Devin's knowledge base from external documentation systems, wikis, or knowledge management platforms.

  • The request body is sent as JSON. Ensure your Nexset contains the required fields for the Devin AI Create Knowledge Note API, including the note's title and body content.
  • Knowledge notes created through this endpoint are immediately available to all sessions in your organization.

For complete request and response schema details, see the Devin AI API reference for Create Knowledge Note.

Update Knowledge Note

Updates an existing knowledge note's title, body, or metadata. Use this endpoint to keep Devin's knowledge base current as organizational processes, codebases, or conventions evolve — for example, automatically updating knowledge notes whenever corresponding documentation is revised in an external system.

  • Enter the unique identifier of the knowledge note to update in the Note ID field.

    • The Note ID is a required field. Note IDs can be obtained from the List Knowledge Notes data source endpoint.
  • The updated note content is sent as a JSON body using a PUT request, which replaces the full note definition. Ensure your Nexset contains all required note fields, not just the fields you wish to change.

For complete request and response schema details, see the Devin AI API reference for Update Knowledge Note.

Delete Knowledge Note

Deletes a stale or incorrect knowledge note by its unique ID. Use this endpoint to remove outdated information from Devin's knowledge base, ensuring that Devin is not influenced by incorrect or obsolete context.

  • Enter the unique identifier of the knowledge note to delete in the Note ID field.

    • The Note ID is a required field. Note IDs can be obtained from the List Knowledge Notes data source endpoint.
  • This operation sends a DELETE request. No request body is required.

:::warning Important Deleting a knowledge note is permanent. Devin will no longer have access to this knowledge in future sessions. :::

Manual configuration

Devin AI destinations can also be manually configured to send data to any valid Devin AI v3 API endpoint not covered by the pre-built templates. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, data format, endpoint URL, request headers, attribute exclusions, record batching, and response webhooks.

All Devin AI v3 organization-scoped endpoints follow the base URL pattern https://api.devin.ai/v3/organizations/{organization_id}/ — append the resource ID for operations on a specific resource (e.g., https://api.devin.ai/v3/organizations/{organization_id}/sessions/{session_id}). Devin AI API endpoints accept JSON format (application/json). Most endpoints accept a single resource per request, so record batching is appropriate only for custom or bulk endpoints that accept arrays — review the Devin AI API documentation to confirm whether your target endpoint supports batching before enabling it. Nexla can also send the API response after each call to a new Nexla webhook data source, which is useful for capturing the session ID returned when creating a session.

Save & activate

Once all endpoint settings have been configured, click the Done button in the upper right corner of the screen to save and create the destination. To begin sending data to the configured Devin AI endpoint, open the destination resource menu, and select Activate.

The Nexset data will not be sent to the Devin AI API until the destination is activated. Destinations can be activated immediately or at a later time, providing full control over data movement.