---
title: "Create integration"
method: POST
path: "/integrations"
tags: ["Integration"]
---

# Create integration

`POST /integrations`

## Request

- Base URL: `https://r38.coupadev.com/api`
- URL: `https://r38.coupadev.com/api/integrations`
- Auth: one of:
  - OAuth 2
    - Authorization code: `https://r38.coupadev.com/oauth2/authorizations/new`
    - Token URL: `https://r38.coupadev.com/oauth2/token`
  - OAuth 2
    - Client credentials
    - Token URL: `https://r38.coupadev.com/oauth2/access_tokens`
- TypeScript: <https://skmtc.dev/coupa/apis/coupa-api-4/docs/integrations/post.ts> (a function with typed inputs; its response is checked against the schema)

Create integration

## Query parameters

- `return_object` 'limited' | 'shallow' | 'none'
- `filter` string

## Request body

- Integration
  - `business-object` string, string(255), required: Business Object
  - `code` string, string(255), required: Unique Integration Code
  - `created-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
  - `created-by` UserSimple
    - `avatar-thumb-url` string, string: Avatar url
    - `created-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
    - `email` string, string(255), required: email
    - `employee-number` string, string(255): employee number
    - `firstname` string, string(40), required: first name
    - `fullname` string, string(255): full name
    - `id` integer: Coupa unique identifier
    - `lastname` string, string(40), required: last name
    - `login` string, string(255), required: login
    - `salesforce-id` string, string(255), required: salesforce_id
    - `updated-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
  - `direction` 'to_coupa' | 'from_coupa', string(255), required: Direction
  - `end-system` string, string(255), required: End System
  - `end-system-type` 'payroll' | 'erp' | 'hr' | 'third_party_partner' | 'third_party_vendor' | 'other' | 'internal', string(255), required: End System Type
  - `id` integer: Coupa unique identifier
  - `integration-type` 'flat_file' | 'api' | 'corporate_credit_card_file' | 'json' | 'xml' | 'original_format', string(255): Type of integration
  - `name` string, string(255), required: Integration Name
  - `standard` boolean: Standard
  - `updated-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
  - `updated-by` UserSimple
    - `avatar-thumb-url` string, string: Avatar url
    - `created-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
    - `email` string, string(255), required: email
    - `employee-number` string, string(255): employee number
    - `firstname` string, string(40), required: first name
    - `fullname` string, string(255): full name
    - `id` integer: Coupa unique identifier
    - `lastname` string, string(40), required: last name
    - `login` string, string(255), required: login
    - `salesforce-id` string, string(255), required: salesforce_id
    - `updated-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ

## Response `201`

Created

- Integration
  - `business-object` string, string(255), required: Business Object
  - `code` string, string(255), required: Unique Integration Code
  - `created-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
  - `created-by` UserSimple
    - `avatar-thumb-url` string, string: Avatar url
    - `created-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
    - `email` string, string(255), required: email
    - `employee-number` string, string(255): employee number
    - `firstname` string, string(40), required: first name
    - `fullname` string, string(255): full name
    - `id` integer: Coupa unique identifier
    - `lastname` string, string(40), required: last name
    - `login` string, string(255), required: login
    - `salesforce-id` string, string(255), required: salesforce_id
    - `updated-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
  - `direction` 'to_coupa' | 'from_coupa', string(255), required: Direction
  - `end-system` string, string(255), required: End System
  - `end-system-type` 'payroll' | 'erp' | 'hr' | 'third_party_partner' | 'third_party_vendor' | 'other' | 'internal', string(255), required: End System Type
  - `id` integer: Coupa unique identifier
  - `integration-type` 'flat_file' | 'api' | 'corporate_credit_card_file' | 'json' | 'xml' | 'original_format', string(255): Type of integration
  - `name` string, string(255), required: Integration Name
  - `standard` boolean: Standard
  - `updated-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
  - `updated-by` UserSimple
    - `avatar-thumb-url` string, string: Avatar url
    - `created-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
    - `email` string, string(255), required: email
    - `employee-number` string, string(255): employee number
    - `firstname` string, string(40), required: first name
    - `fullname` string, string(255): full name
    - `id` integer: Coupa unique identifier
    - `lastname` string, string(40), required: last name
    - `login` string, string(255), required: login
    - `salesforce-id` string, string(255), required: salesforce_id
    - `updated-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ

## Other responses

- `400`: Bad Request

---

[API](https://skmtc.dev/coupa/apis/coupa-api-4.md) - [All operations](https://skmtc.dev/coupa/apis/coupa-api-4/llms.txt) - [OpenAPI document](https://skmtc.dev/coupa/apis/coupa-api-4/revisions/adc09cabd758?raw)
