Projects

The Project resource

A project is where all of the user, subscription, plan, device, and SIM information lives. Knowing your project name is crucial for set-up. Note that you will have a test and production environment.

Properties

  • Name
    object
    Type
    string
    Description

    Type of object is always project.

  • Name
    id
    Type
    string
    Description

    Globally unique identifier for the project.

    Example: gigs
  • Name
    billable
    Type
    boolean
    PREVIEW
    Description

    Whether subscriptions in this project are invoiced to your organization.

    Example: true
  • Name
    billing
    Type
    nullable object
    Description
    Configuration parameters for the project use of billing. Present when the Billing API is enabled.
    • Name
      paymentBehavior
      Type
      string
      required
      Description

      Determines how invoices are paid. It can have one of the following values:

      • manual: Invoices are not automatically paid without explicit action.
      • none: No payment is performed and invoices are marked as paid automatically.
      Allowed values: manual, none
  • Name
    consent
    Type
    nullable object
    PREVIEW
    Description
    Configuration parameters for the project's user consent collection. When absent, user consent is not checked or required.
    • Name
      deliveryMethods
      Type
      array
      Description

      List of available delivery methods for consent requests.

  • Name
    image
    Type
    nullable string
    PREVIEW
    Description

    Small-resolution project icon with an aspect ratio of 1:1.

    Example: https://a.gigscdn.net/p/gigs/icon.png
  • Name
    legal
    Type
    nullable object
    Description
    The legal address for the company that manages the project.
    • Name
      name
      Type
      string
      required
      Description

      The company's legal name.

      Example: Gigs Inc.
    • Name
      city
      Type
      string
      required
      Description

      The city/municipality of the address.

      Example: New York City
    • Name
      country
      Type
      string
      required
      Description

      The ISO 3166-1 alpha-2 country code of the address.

      Example: US
    • Name
      line1
      Type
      string
      required
      Description

      The first line of the address, e.g. street and house number.

      Example: 129 West 81st Street
    • Name
      line2
      Type
      nullable string
      required
      Description

      The second line of the address, e.g. apartment number.

      Example: Apartment 5A
    • Name
      postalCode
      Type
      string
      required
      Description

      The postal code of the address.

      Example: 10024
    • Name
      state
      Type
      nullable string
      required
      Description

      The state/province/region of the address.

      Example: NY
  • Name
    locales
    Type
    array
    Description

    List of supported locales represented as IETF language tags, ordered by preference.

    Example: en-US
  • Name
    name
    Type
    string
    Description

    A human-readable name for the project.

    Example: Gigs Connect
  • Name
    organization
    Type
    object
    Description
    • Name
      object
      Type
      string
      required
      Description

      Type of object is always organization.

    • Name
      id
      Type
      string
      required
      Description

      Unique identifier for the organization.

      Example: org_0SNlurA04kOdemVEMVZQBF
    • Name
      name
      Type
      string
      required
      Description

      Name for the organization.

      Example: Gigs
    • Name
      createdAt
      Type
      string
      required
      Description

      Time when the organization was created.

      Example: 2021-02-01T13:21:30Z
  • Name
    payments
    Type
    nullable object
    Description
    Configuration parameters for the project use of payments.
    • Name
      currency
      Type
      string
      required
      Description

      Three-letter ISO 4217 currency code representing the currency of the project. Must be a supported currency.

      Example: USD
    • Name
      mode
      Type
      string
      required
      Description

      The mode in which the payments operate.

      Allowed values: live, test
  • Name
    subscriptionOwner
    Type
    string
    Description

    Indicates which entity will be registered as the owner of the subscription with the providers. When company is selected the legal address associated with the project will be used for the registration.

    Allowed values: user, company
  • Name
    support
    Type
    nullable object
    Description
    Contact details for consumer support requests regarding the project.
    • Name
      email
      Type
      nullable string
      required
      Description

      A publicly available email address for consumer support requests regarding the project.

      Example: support@gigs.com
    • Name
      phoneNumber
      Type
      nullable string
      required
      Description

      A publicly available phone number in E.164 format for consumer support requests regarding the project.

      Example: +12345678900
  • Name
    createdAt
    Type
    string
    Description

    Time when the project was created.

    Example: 2021-01-21T19:32:13Z

Response

{
  "object": "project",
  "id": "gigs",
  "billable": true,
  "billing": {
    "paymentBehavior": "manual"
  },
  "consent": {},
  "image": "https://a.gigscdn.net/p/gigs/icon.png",
  "legal": {
    "name": "Gigs Inc.",
    "city": "New York City",
    "country": "US",
    "line1": "129 West 81st Street",
    "line2": "Apartment 5A",
    "postalCode": "10024",
    "state": "NY"
  },
  "locales": [
    "en-US"
  ],
  "name": "Gigs Connect",
  "organization": {
    "object": "organization",
    "id": "org_0SNlurA04kOdemVEMVZQBF",
    "name": "Gigs",
    "createdAt": "2021-02-01T13:21:30Z"
  },
  "payments": {
    "currency": "USD",
    "mode": "live"
  },
  "subscriptionOwner": "user",
  "support": {
    "email": "support@gigs.com",
    "phoneNumber": "+12345678900"
  },
  "createdAt": "2021-01-21T19:32:13Z"
}

GET/projects/{project}/credentials

Retrieve the project credentials

Retrieve the credentials of an existing project.

Path Parameters

  • Name
    project
    Type
    string
    required
    Description

    The unique identifier for the project.

    Example: gigs

Response Schemas

  • Name
    object
    Type
    string
    required
    Description

    Type of object is always projectCredentials.

  • Name
    paymentsKey
    Type
    nullable string
    required
    Description

    Publishable API key for payment integration.

    Example: pk_test_XXooYYauvdEDq12NiTphI7sa

Request

GET
/projects/{project}/credentials
curl https://api.gigs.com/projects/{project}/credentials \
-X GET \
-H "Content-type: application/json" \
-H "Authorization: Bearer {token}" \
-H "Accept: application/json"

Response

{
  "object": "projectCredentials",
  "paymentsKey": "pk_test_XXooYYauvdEDq12NiTphI7sa"
}

GET/projects/{project}

Retrieve a project

Retrieves the details of an existing project accessible by the API client.

Path Parameters

  • Name
    project
    Type
    string
    required
    Description

    The unique identifier for the project.

    Example: gigs

Response Schemas

  • Name
    object
    Type
    string
    required
    Description

    Type of object is always project.

  • Name
    id
    Type
    string
    required
    Description

    Globally unique identifier for the project.

    Example: gigs
  • Name
    billable
    Type
    boolean
    PREVIEW
    required
    Description

    Whether subscriptions in this project are invoiced to your organization.

    Example: true
  • Name
    billing
    Type
    nullable object
    required
    Description
    Configuration parameters for the project use of billing. Present when the Billing API is enabled.
    • Name
      paymentBehavior
      Type
      string
      required
      Description

      Determines how invoices are paid. It can have one of the following values:

      • manual: Invoices are not automatically paid without explicit action.
      • none: No payment is performed and invoices are marked as paid automatically.
      Allowed values: manual, none
  • Name
    consent
    Type
    nullable object
    PREVIEW
    required
    Description
    Configuration parameters for the project's user consent collection. When absent, user consent is not checked or required.
    • Name
      deliveryMethods
      Type
      array
      Description

      List of available delivery methods for consent requests.

  • Name
    image
    Type
    nullable string
    PREVIEW
    required
    Description

    Small-resolution project icon with an aspect ratio of 1:1.

    Example: https://a.gigscdn.net/p/gigs/icon.png
  • Name
    legal
    Type
    nullable object
    required
    Description
    The legal address for the company that manages the project.
    • Name
      name
      Type
      string
      required
      Description

      The company's legal name.

      Example: Gigs Inc.
    • Name
      city
      Type
      string
      required
      Description

      The city/municipality of the address.

      Example: New York City
    • Name
      country
      Type
      string
      required
      Description

      The ISO 3166-1 alpha-2 country code of the address.

      Example: US
    • Name
      line1
      Type
      string
      required
      Description

      The first line of the address, e.g. street and house number.

      Example: 129 West 81st Street
    • Name
      line2
      Type
      nullable string
      required
      Description

      The second line of the address, e.g. apartment number.

      Example: Apartment 5A
    • Name
      postalCode
      Type
      string
      required
      Description

      The postal code of the address.

      Example: 10024
    • Name
      state
      Type
      nullable string
      required
      Description

      The state/province/region of the address.

      Example: NY
  • Name
    locales
    Type
    array
    required
    Description

    List of supported locales represented as IETF language tags, ordered by preference.

    Example: en-US
  • Name
    name
    Type
    string
    required
    Description

    A human-readable name for the project.

    Example: Gigs Connect
  • Name
    organization
    Type
    object
    required
    Description
    • Name
      object
      Type
      string
      required
      Description

      Type of object is always organization.

    • Name
      id
      Type
      string
      required
      Description

      Unique identifier for the organization.

      Example: org_0SNlurA04kOdemVEMVZQBF
    • Name
      name
      Type
      string
      required
      Description

      Name for the organization.

      Example: Gigs
    • Name
      createdAt
      Type
      string
      required
      Description

      Time when the organization was created.

      Example: 2021-02-01T13:21:30Z
  • Name
    payments
    Type
    nullable object
    required
    Description
    Configuration parameters for the project use of payments.
    • Name
      currency
      Type
      string
      required
      Description

      Three-letter ISO 4217 currency code representing the currency of the project. Must be a supported currency.

      Example: USD
    • Name
      mode
      Type
      string
      required
      Description

      The mode in which the payments operate.

      Allowed values: live, test
  • Name
    subscriptionOwner
    Type
    string
    required
    Description

    Indicates which entity will be registered as the owner of the subscription with the providers. When company is selected the legal address associated with the project will be used for the registration.

    Allowed values: user, company
  • Name
    support
    Type
    nullable object
    required
    Description
    Contact details for consumer support requests regarding the project.
    • Name
      email
      Type
      nullable string
      required
      Description

      A publicly available email address for consumer support requests regarding the project.

      Example: support@gigs.com
    • Name
      phoneNumber
      Type
      nullable string
      required
      Description

      A publicly available phone number in E.164 format for consumer support requests regarding the project.

      Example: +12345678900
  • Name
    createdAt
    Type
    string
    required
    Description

    Time when the project was created.

    Example: 2021-01-21T19:32:13Z

Request

GET
/projects/{project}
curl https://api.gigs.com/projects/{project} \
-X GET \
-H "Content-type: application/json" \
-H "Authorization: Bearer {token}" \
-H "Accept: application/json"

Responses

{
  "object": "project",
  "id": "gigs",
  "billable": true,
  "billing": {
    "paymentBehavior": "manual"
  },
  "consent": {
    "deliveryMethods": [
      "emailLink"
    ]
  },
  "image": "https://a.gigscdn.net/p/gigs/icon.png",
  "legal": {
    "name": "Gigs Inc.",
    "city": "New York City",
    "country": "US",
    "line1": "129 West 81st Street",
    "line2": "Apartment 5A",
    "postalCode": "10024",
    "state": "NY"
  },
  "locales": [
    "en-US"
  ],
  "name": "Gigs Connect",
  "organization": {
    "object": "organization",
    "id": "org_0SNlurA04kOdemVEMVZQBF",
    "name": "Gigs",
    "createdAt": "2021-02-01T13:21:30Z"
  },
  "payments": {
    "currency": "USD",
    "mode": "live"
  },
  "subscriptionOwner": "user",
  "support": {
    "email": "support@gigs.com",
    "phoneNumber": "+12345678900"
  },
  "createdAt": "2021-01-21T19:32:13Z"
}

GET/projects

List all projects

Returns a list of projects. The projects returned are sorted by creation date, with the most recently created projects appearing first.

Query Parameters

  • Name
    organization
    Type
    string
    Description

    The unique identifier for the organization to be filtered by.

    Example: org_0SNlurA04kOdemVEMVZQBF
  • Name
    after
    Type
    string
    Description

    A cursor for use in pagination. The after parameter takes an object ID that defines the position in the list, only items immediately following the item with that ID will be returned.

  • Name
    before
    Type
    string
    Description

    A cursor for use in pagination. The before parameter takes an object ID that defines the position in the list, only items immediately preceding the item with that ID will be returned.

  • Name
    limit
    Type
    integer
    Description

    The limit of items to be returned in the list, between 0 and 200.

    Default: 10
    >= 0
    <= 200

Response Schemas

  • Name
    object
    Type
    string
    required
    Description

    Type of object is always list.

  • Name
    items
    Type
    array
    required
    Description

    List of objects of type project.

  • Name
    moreItemsAfter
    Type
    nullable string
    required
    Description

    A unique identifier to be used as after pagination parameter if more items are available sorted after the current batch of items.

  • Name
    moreItemsBefore
    Type
    nullable string
    required
    Description

    A unique identifier to be used as before pagination parameter if more items are available sorted before the current batch of items.

Request

GET
/projects
curl https://api.gigs.com/projects \
-X GET \
-H "Content-type: application/json" \
-H "Authorization: Bearer {token}" \
-H "Accept: application/json"

Responses

{
  "object": "list",
  "items": [
    {
      "object": "project",
      "id": "gigs",
      "billable": true,
      "billing": {
        "paymentBehavior": "manual"
      },
      "consent": {
        "deliveryMethods": [
          "emailLink"
        ]
      },
      "image": "https://a.gigscdn.net/p/gigs/icon.png",
      "legal": {
        "name": "Gigs Inc.",
        "city": "New York City",
        "country": "US",
        "line1": "129 West 81st Street",
        "line2": "Apartment 5A",
        "postalCode": "10024",
        "state": "NY"
      },
      "locales": [
        "en-US"
      ],
      "name": "Gigs Connect",
      "organization": {
        "object": "organization",
        "id": "org_0SNlurA04kOdemVEMVZQBF",
        "name": "Gigs",
        "createdAt": "2021-02-01T13:21:30Z"
      },
      "payments": {
        "currency": "USD",
        "mode": "live"
      },
      "subscriptionOwner": "user",
      "support": {
        "email": "support@gigs.com",
        "phoneNumber": "+12345678900"
      },
      "createdAt": "2021-01-21T19:32:13Z"
    }
  ],
  "moreItemsAfter": null,
  "moreItemsBefore": null
}