# CreateReverseSyncRegistration

Create a webhook registration for a company.

`POST /api/v2/connector-sync/companies/{companyId}/registrations`

**API:** AvaTax API
**Tag:** ItemsReverseSync
**API Version:** v2
**Base URL:** https://sandbox-rest.avatax.com/
**Content-Type:** `application/json`
**Accepts:** `application/json`
**Authentication:** API Key (`Authorization` in header) or OAuth 2.0 or Basic (username + license key)

Source: https://developer.avalara.com/products/avatax/api/methods/ItemsReverseSync/CreateReverseSyncRegistration/

## Description

Creates a webhook registration for the specified company. The registration defines a
connector, callback URL, registration type, and subscribed events.
            
The customer must pass the connector name in `connectorName`; this value is also
used as the OAuth scope for the registration.

### Security Policies

* This API requires one of the following user roles: AccountAdmin, AccountOperator, AvaTaxOnlyAccountAdmin, AvaTaxOnlyCompanyAdmin, BatchServiceAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.

## Parameters

| Name | Type | In | Required | Description |
|---|---|---|---|---|
| `companyId` | integer | path | Yes | The ID of the company for which you want to create the registration. |
| `X-Avalara-Client` | string | header | No | Identifies the software you are using to call this API.  For more information on the client header, see [Client Headers](https://developer.avalara.com/avatax/client-headers/) . |

## Request Body

**Schema:** `ItemReverseSyncRegistrationInputModel[]`

Input model used to create a Connector Data Sync (reverse sync) webhook registration.
            
A registration tells Avalara which connector should be notified when an item-related
event occurs (currently `HSCodeAssigned`), the callback URL to invoke, and the
events the connector wishes to subscribe to.

| Property | Type | Required | Description |
|---|---|---|---|
| `connectorName` | string | **Yes** | The connector name. This value is also used as the OAuth scope for the registration. Example: `big-commerce`. |
| `url` | string | **Yes** | The webhook callback URL that the connector exposes to receive notifications. Example: `https://someurl/`. |
| `typeName` | string | **Yes** | The registration delivery channel (for example, Webhook). Values: `Webhook`. Example: `Webhook`. |
| `events` | string | **Yes** | The list of events this registration subscribes to. Values: `HSCodeAssigned`. Example: `HSCodeAssigned`. |

## Responses

| Status | Description | Schema |
|---|---|---|
| 201 | Created. Returns the created webhook registration. | `ItemReverseSyncRegistrationOutputModel` |
| 400 | Bad request. The request is invalid. |  |
| 401 | Unauthorized. Authentication failed or was not provided. |  |
| 404 | Not found. The requested resource was not found. |  |

### 201 Response: `ItemReverseSyncRegistrationOutputModel`

Output model representing a Connector Data Sync (reverse sync) webhook registration.

| Property | Type | Required | Description |
|---|---|---|---|
| `registrationId` | integer | No | The unique identifier for this registration. Example: `1`. |
| `connectorName` | string | No | The connector name. This value is also used as the OAuth scope for the registration. Example: `big-commerce`. |
| `companyId` | integer | No | The Avalara company identifier that owns this registration. Example: `7755785`. |
| `url` | string | No | The webhook callback URL that the connector exposes to receive notifications. Example: `https://someurl/`. |
| `typeName` | string | No | The registration delivery channel (for example, Webhook). Values: `Webhook`. Example: `Webhook`. |
| `isActive` | boolean | No | Indicates whether this registration is currently active. Example: `true`. |
| `events` | string | No | The list of events this registration subscribes to. Values: `HSCodeAssigned`. Example: `HSCodeAssigned`. |
| `modifiedDate` | string | No | The date and time when this record was last modified. Example: `2026-07-02T04:05:13.5847944Z`. |
| `modifiedUserId` | integer | No | The user ID who last modified this record. Example: `1234`. |
| `createdDate` | string | No | The date and time when this record was created. Example: `2026-07-02T04:05:13.5848204Z`. |
| `createdUserId` | integer | No | The user ID who created this record. Example: `1234`. |

## Example Request

```bash
curl -X POST "https://sandbox-rest.avatax.com/api/v2/connector-sync/companies/{companyId}/registrations" \
  -H "Authorization: Basic <credentials>" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -d '[
  {
    "connectorName": "big-commerce",
    "url": "https://someurl/",
    "typeName": "Webhook",
    "events": [
      "HSCodeAssigned"
    ]
  }
]'
```