> ## Documentation Index
> Fetch the complete documentation index at: https://docs.goshippo.com/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> Shippo is a multi-carrier shipping API. For agent integrations that execute shipping operations (rates, labels, tracking, address validation, customs), connect the hosted Shippo MCP server at https://mcp.shippo.com (per-user OAuth; setup at /guides/mcp-server). To search and read this documentation from an agent, a docs search MCP is available at https://docs.goshippo.com/mcp. Shipping workflow knowledge (agent skills and a knowledge pack) is published at https://github.com/goshippo/ai. For REST integrations start at /guides/api-quickstart; test mode uses shippo_test_ API keys.

# Get your Carrier Account Details

> Add your APG carrier account credentials to Shippo so you can generate shipping rates and create labels.

To use the carrier APG with Shippo, you must [use your own account](#use-your-own-carrier-account) and share your account details with Shippo.

## Use your own carrier account

Follow this guide to add your APG account to Shippo. After adding your account, Shippo can use your account details for generating shipping rates and creating labels.
This step requires you to have your APG account id and password.

This step should only be completed once. When you have created your carrier account, you can use the carrier `object_id` to reference your carrier.

### HTTP Method

POST

### URL

```
https://api.goshippo.com/carrier_accounts/
```

### Request Payload

| Parameter     | Description                                                                                                                                          |
| ------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |
| carrier\*     | `apg`                                                                                                                                                |
| account\_id\* | A unique identifier for the account which cannot be changed later. Used only for internal purposes. This should be a username provided by APG        |
| parameters\*  | parameters is an array of additional parameters for the account, such as password or token. Check [APG parameters](#account_params) for more details |
| active        | Set to `true` to enable account. Set to `false` to disable account.                                                                                  |
| test          | Set to `true` if you want to set the account in test mode. Using test mode you can generate test labels without incurring a charge                   |

Note: Parameters with an \* are mandatory

### <a name="account_params" /> APG Account Parameters

| Parameter     | Description                                                       |
| ------------- | ----------------------------------------------------------------- |
| account\_id\* | Key to access the API. A string value APG assigns to each client. |
| password\*    | Key to access the API. A string value APG assigns to each client. |
| sender\_code  | Code assigned by APG to to each client. Example: “sti.us.client”  |

### Response Code

201

### Example

#### Request Sample

```shell cURL theme={null}
curl --location --request POST 'https://api.goshippo.com/carrier_accounts/' \
--header 'Authorization: ShippoToken <API_TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
   "carrier": "apg",
   "object_owner": "billable-user@shippo.com",
   "account_id": "EXAMPLE_UNIQUE_ACCOUNT_ID",    
   "parameters": {
       "account_id": "ACCOUNT_ID_PROVIDED_BY_APG_SHOULD_BE_HERE",  
       "password": "PASSWORD_PROVIDED_BY_APG_SHOULD_BE_HERE", 
       "sender_code": "STI.US.EXAMPLE" 
   },
   "test": false,   //true if it is test account
   "active": true,
   "is_shippo_account": false,
   "metadata": "Metadata_example for APG Account",
   "carrier_name": "APG"
}'

```

#### Response Sample

```json theme={null}
 "carrier": "apg",
           "object_id": "2edac0dddcfc4416b2708cc10b2d11e0",
           "object_owner": "nataliya_eng@shippo.com",
           "account_id": "UNIQUE_ACCOUNT_ID_HERE",
           "parameters": {
               "password": "******",
               "account_id": "shippo",
               "sender_code": "sti.us.EXAMPLE"
           },
           "test": false,
           "active": true,
           "is_shippo_account": false,
           "metadata": "APG - Shippo Account - test",
           "carrier_name": "APG",
           "carrier_images": {
               "200": "https://dev-qa-static-shippodev-com.s3.amazonaws.com/providers/200/apg.png",
               "75": "https://dev-qa-static-shippodev-com.s3.amazonaws.com/providers/75/apg.png"
           }


```

Once you have retrieved the `object_id` for your carrier, proceed to [Step 2: Create shipment](/carriers/integration-guides/apg/create-shipment).


## Related topics

- [Get your Carrier Account Details](/carriers/integration-guides/better-trucks/create-an-account.md)
- [Using your Platform Account](/platform-accounts/platform-using-accounts.md)
- [DHL eCommerce](/carriers/dh-le-commerce.md)
