Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
find_apisBrowse and filter every API in the catalog.
get_api_artifactsOne API's artifacts, grouped by type.
get_openapiThe primary OpenAPI for this API.
find_similar_apisAPIs that look like this one.
apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
resolveTurn a domain, URL or GitHub org into the provider it belongs to.
find_cohortsEvery scored population of providers in the catalog.
All 92 tools →
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/engineering-platform-action-createinstanceprofile-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
version: 2010-05-08
x-release: v4
title: 'APIs.io Engineering Platform AWS Identity and Access Management #Action=Create Instance Profile API'
description: <fullname>Identity and Access Management</fullname> <p>Identity and Access Management (IAM) is a web service for securely controlling access to Amazon Web Services services. With IAM, you can centrally manage users, security credentials such as access keys, and permissions that control which Amazon Web Services resources users and applications can access. For more information about IAM, see <a href="http://aws.amazon.com/iam/">Identity and Access Management (IAM)</a> and the <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/">Identity and Access Management User Guide</a>.</p>
x-logo:
url: https://api.apis.guru/v2/cache/logo/https_twitter.com_awscloud_profile_image.png
backgroundColor: '#FFFFFF'
termsOfService: https://aws.amazon.com/service-terms/
contact:
name: Mike Ralphson
email: mike.ralphson@gmail.com
url: https://github.com/mermade/aws2openapi
x-twitter: PermittedSoc
license:
name: Apache 2.0 License
url: http://www.apache.org/licenses/
x-providerName: amazonaws.com
x-serviceName: iam
x-origin:
- contentType: application/json
url: https://raw.githubusercontent.com/aws/aws-sdk-js/master/apis/iam-2010-05-08.normal.json
converter:
url: https://github.com/mermade/aws2openapi
version: 1.0.0
x-apisguru-driver: external
x-apiClientRegistration:
url: https://portal.aws.amazon.com/gp/aws/developer/registration/index.html?nc2=h_ct
x-apisguru-categories:
- cloud
x-preferred: true
servers:
- url: https://iam.amazonaws.com
variables: {}
description: The general IAM multi-region endpoint
- url: http://iam.us-gov.amazonaws.com
variables: {}
description: The general IAM endpoint for AWS GovCloud (US) and AWS GovCloud (US-East)
- url: https://iam.us-gov.amazonaws.com
variables: {}
description: The general IAM endpoint for AWS GovCloud (US) and AWS GovCloud (US-East)
- url: http://iam.cn-north-1.amazonaws.com.cn
variables: {}
description: The general IAM endpoint for China (Beijing) and China (Ningxia)
- url: https://iam.cn-north-1.amazonaws.com.cn
variables: {}
description: The general IAM endpoint for China (Beijing) and China (Ningxia)
security:
- hmac: []
tags:
- name: '#Action=CreateInstanceProfile'
paths:
/#Action=CreateInstanceProfile:
parameters:
- $ref: '#/components/parameters/X-Amz-Content-Sha256'
- $ref: '#/components/parameters/X-Amz-Date'
- $ref: '#/components/parameters/X-Amz-Algorithm'
- $ref: '#/components/parameters/X-Amz-Credential'
- $ref: '#/components/parameters/X-Amz-Security-Token'
- $ref: '#/components/parameters/X-Amz-Signature'
- $ref: '#/components/parameters/X-Amz-SignedHeaders'
get:
x-aws-operation-name: CreateInstanceProfile
operationId: GET_CreateInstanceProfile
description: <p> Creates a new instance profile. For information about instance profiles, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2.html">Using roles for applications on Amazon EC2</a> in the <i>IAM User Guide</i>, and <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html#ec2-instance-profile">Instance profiles</a> in the <i>Amazon EC2 User Guide</i>.</p> <p> For information about the number of instance profiles you can create, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html">IAM object quotas</a> in the <i>IAM User Guide</i>.</p>
responses:
'200':
description: Success
content:
text/xml:
schema:
$ref: '#/components/schemas/CreateInstanceProfileResponse'
'480':
description: EntityAlreadyExistsException
content:
text/xml:
schema:
$ref: '#/components/schemas/EntityAlreadyExistsException'
'481':
description: InvalidInputException
content:
text/xml:
schema:
$ref: '#/components/schemas/InvalidInputException'
'482':
description: LimitExceededException
content:
text/xml:
schema:
$ref: '#/components/schemas/LimitExceededException'
'483':
description: ConcurrentModificationException
content:
text/xml:
schema:
$ref: '#/components/schemas/ConcurrentModificationException'
'484':
description: ServiceFailureException
content:
text/xml:
schema:
$ref: '#/components/schemas/ServiceFailureException'
parameters:
- name: InstanceProfileName
in: query
required: true
description: '<p>The name of the instance profile to create.</p> <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-</p>'
schema:
type: string
pattern: '[\w+=,.@-]+'
minLength: 1
maxLength: 128
- name: Path
in: query
required: false
description: <p> The path to the instance profile. For more information about paths, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html">IAM Identifiers</a> in the <i>IAM User Guide</i>.</p> <p>This parameter is optional. If it is not included, it defaults to a slash (/).</p> <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (<code>\u0021</code>) through the DEL character (<code>\u007F</code>), including most punctuation characters, digits, and upper and lowercased letters.</p>
schema:
type: string
pattern: (\u002F)|(\u002F[\u0021-\u007F]+\u002F)
minLength: 1
maxLength: 512
- name: Tags
in: query
required: false
description: <p>A list of tags that you want to attach to the newly created IAM instance profile. Each tag consists of a key name and an associated value. For more information about tagging, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html">Tagging IAM resources</a> in the <i>IAM User Guide</i>.</p> <note> <p>If any one of the tags is invalid or if you exceed the allowed maximum number of tags, then the entire request fails and the resource is not created.</p> </note>
schema:
type: array
items:
$ref: '#/components/schemas/Tag'
maxItems: 50
- name: Action
in: query
required: true
schema:
type: string
enum:
- CreateInstanceProfile
- name: Version
in: query
required: true
schema:
type: string
enum:
- 2010-05-08
tags:
- '#Action=CreateInstanceProfile'
post:
x-aws-operation-name: CreateInstanceProfile
operationId: POST_CreateInstanceProfile
description: <p> Creates a new instance profile. For information about instance profiles, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2.html">Using roles for applications on Amazon EC2</a> in the <i>IAM User Guide</i>, and <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html#ec2-instance-profile">Instance profiles</a> in the <i>Amazon EC2 User Guide</i>.</p> <p> For information about the number of instance profiles you can create, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html">IAM object quotas</a> in the <i>IAM User Guide</i>.</p>
responses:
'200':
description: Success
content:
text/xml:
schema:
$ref: '#/components/schemas/CreateInstanceProfileResponse'
'480':
description: EntityAlreadyExistsException
content:
text/xml:
schema:
$ref: '#/components/schemas/EntityAlreadyExistsException'
'481':
description: InvalidInputException
content:
text/xml:
schema:
$ref: '#/components/schemas/InvalidInputException'
'482':
description: LimitExceededException
content:
text/xml:
schema:
$ref: '#/components/schemas/LimitExceededException'
'483':
description: ConcurrentModificationException
content:
text/xml:
schema:
$ref: '#/components/schemas/ConcurrentModificationException'
'484':
description: ServiceFailureException
content:
text/xml:
schema:
$ref: '#/components/schemas/ServiceFailureException'
requestBody:
content:
text/xml:
schema:
$ref: '#/components/schemas/CreateInstanceProfileRequest'
parameters:
- name: Action
in: query
required: true
schema:
type: string
enum:
- CreateInstanceProfile
- name: Version
in: query
required: true
schema:
type: string
enum:
- 2010-05-08
tags:
- '#Action=CreateInstanceProfile'
components:
schemas:
CreateInstanceProfileResponse:
type: object
required:
- InstanceProfile
example:
InstanceProfile:
Arn: arn:aws:iam::123456789012:instance-profile/Webserver
CreateDate: 2015-03-09 20:33:19.626000+00:00
InstanceProfileId: AIPAJMBYC7DLSPEXAMPLE
InstanceProfileName: Webserver
Path: /
Roles: []
properties:
InstanceProfile:
allOf:
- $ref: '#/components/schemas/InstanceProfile'
- description: A structure containing details about the new instance profile.
description: 'Contains the response to a successful <a>CreateInstanceProfile</a> request. '
tagValueType:
type: string
pattern: '[\p{L}\p{Z}\p{N}_.:/=+\-@]*'
minLength: 0
maxLength: 256
ConcurrentModificationException: {}
ServiceFailureException: {}
tagListType:
type: array
items:
$ref: '#/components/schemas/Tag'
maxItems: 50
Tag:
type: object
required:
- Key
- Value
properties:
Key:
allOf:
- $ref: '#/components/schemas/tagKeyType'
- description: The key name that can be used to look up or retrieve the associated value. For example, <code>Department</code> or <code>Cost Center</code> are common choices.
Value:
allOf:
- $ref: '#/components/schemas/tagValueType'
- description: <p>The value associated with this tag. For example, tags with a key name of <code>Department</code> could have values such as <code>Human Resources</code>, <code>Accounting</code>, and <code>Support</code>. Tags with a key name of <code>Cost Center</code> might have values that consist of the number associated with the different cost centers in your company. Typically, many resources have tags with the same key name but with different values.</p> <note> <p>Amazon Web Services always interprets the tag <code>Value</code> as a single string. If you need to store an array, you can store comma-separated values in the string. However, you must interpret the value in your code.</p> </note>
description: A structure that represents user-provided metadata that can be associated with an IAM resource. For more information about tagging, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html">Tagging IAM resources</a> in the <i>IAM User Guide</i>.
idType:
type: string
pattern: '[\w]+'
minLength: 16
maxLength: 128
AttachedPermissionsBoundary:
type: object
properties:
PermissionsBoundaryType:
allOf:
- $ref: '#/components/schemas/PermissionsBoundaryAttachmentType'
- description: ' The permissions boundary usage type that indicates what type of IAM resource is used as the permissions boundary for an entity. This data type can only have a value of <code>Policy</code>.'
PermissionsBoundaryArn:
allOf:
- $ref: '#/components/schemas/arnType'
- description: ' The ARN of the policy used to set the permissions boundary for the user or role.'
description: <p>Contains information about an attached permissions boundary.</p> <p>An attached permissions boundary is a managed policy that has been attached to a user or role to set the permissions boundary.</p> <p>For more information about permissions boundaries, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html">Permissions boundaries for IAM identities </a> in the <i>IAM User Guide</i>.</p>
InvalidInputException: {}
tagKeyType:
type: string
pattern: '[\p{L}\p{Z}\p{N}_.:/=+\-@]+'
minLength: 1
maxLength: 128
EntityAlreadyExistsException: {}
arnType:
type: string
description: <p>The Amazon Resource Name (ARN). ARNs are unique identifiers for Amazon Web Services resources.</p> <p>For more information about ARNs, go to <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html">Amazon Resource Names (ARNs)</a> in the <i>Amazon Web Services General Reference</i>. </p>
minLength: 20
maxLength: 2048
LimitExceededException: {}
dateType:
type: string
format: date-time
roleListType:
type: array
description: <p>Contains a list of IAM roles.</p> <p>This data type is used as a response element in the <a>ListRoles</a> operation.</p>
items:
$ref: '#/components/schemas/Role'
instanceProfileNameType:
type: string
pattern: '[\w+=,.@-]+'
minLength: 1
maxLength: 128
roleDescriptionType:
type: string
pattern: '[\p{L}\p{M}\p{Z}\p{S}\p{N}\p{P}]*'
maxLength: 1000
roleMaxSessionDurationType:
type: integer
minimum: 3600
maximum: 43200
PermissionsBoundaryAttachmentType:
type: string
enum:
- PermissionsBoundaryPolicy
policyDocumentType:
type: string
pattern: '[\u0009\u000A\u000D\u0020-\u00FF]+'
minLength: 1
maxLength: 131072
stringType:
type: string
RoleLastUsed:
type: object
properties:
LastUsedDate:
allOf:
- $ref: '#/components/schemas/dateType'
- description: <p>The date and time, in <a href="http://www.iso.org/iso/iso8601">ISO 8601 date-time format</a> that the role was last used.</p> <p>This field is null if the role has not been used within the IAM tracking period. For more information about the tracking period, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#access-advisor_tracking-period">Regions where data is tracked</a> in the <i>IAM User Guide</i>. </p>
Region:
allOf:
- $ref: '#/components/schemas/stringType'
- description: The name of the Amazon Web Services Region in which the role was last used.
description: <p>Contains information about the last time that an IAM role was used. This includes the date and time and the Region in which the role was last used. Activity is only reported for the trailing 400 days. This period can be shorter if your Region began supporting these features within the last year. The role might have been used more than 400 days ago. For more information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#access-advisor_tracking-period">Regions where data is tracked</a> in the <i>IAM user Guide</i>.</p> <p>This data type is returned as a response element in the <a>GetRole</a> and <a>GetAccountAuthorizationDetails</a> operations.</p>
roleNameType:
type: string
pattern: '[\w+=,.@-]+'
minLength: 1
maxLength: 64
pathType:
type: string
pattern: (\u002F)|(\u002F[\u0021-\u007F]+\u002F)
minLength: 1
maxLength: 512
CreateInstanceProfileRequest:
type: object
required:
- InstanceProfileName
title: CreateInstanceProfileRequest
properties:
InstanceProfileName:
allOf:
- $ref: '#/components/schemas/instanceProfileNameType'
- description: '<p>The name of the instance profile to create.</p> <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-</p>'
Path:
allOf:
- $ref: '#/components/schemas/pathType'
- description: <p> The path to the instance profile. For more information about paths, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html">IAM Identifiers</a> in the <i>IAM User Guide</i>.</p> <p>This parameter is optional. If it is not included, it defaults to a slash (/).</p> <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (<code>\u0021</code>) through the DEL character (<code>\u007F</code>), including most punctuation characters, digits, and upper and lowercased letters.</p>
Tags:
allOf:
- $ref: '#/components/schemas/tagListType'
- description: <p>A list of tags that you want to attach to the newly created IAM instance profile. Each tag consists of a key name and an associated value. For more information about tagging, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html">Tagging IAM resources</a> in the <i>IAM User Guide</i>.</p> <note> <p>If any one of the tags is invalid or if you exceed the allowed maximum number of tags, then the entire request fails and the resource is not created.</p> </note>
Role:
type: object
required:
- Path
- RoleName
- RoleId
- Arn
- CreateDate
properties:
Path:
allOf:
- $ref: '#/components/schemas/pathType'
- description: ' The path to the role. For more information about paths, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html">IAM identifiers</a> in the <i>IAM User Guide</i>. '
RoleName:
allOf:
- $ref: '#/components/schemas/roleNameType'
- description: The friendly name that identifies the role.
RoleId:
allOf:
- $ref: '#/components/schemas/idType'
- description: ' The stable and unique string identifying the role. For more information about IDs, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html">IAM identifiers</a> in the <i>IAM User Guide</i>. '
Arn:
allOf:
- $ref: '#/components/schemas/arnType'
- description: ' The Amazon Resource Name (ARN) specifying the role. For more information about ARNs and how to use them in policies, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html">IAM identifiers</a> in the <i>IAM User Guide</i> guide. '
CreateDate:
allOf:
- $ref: '#/components/schemas/dateType'
- description: The date and time, in <a href="http://www.iso.org/iso/iso8601">ISO 8601 date-time format</a>, when the role was created.
AssumeRolePolicyDocument:
allOf:
- $ref: '#/components/schemas/policyDocumentType'
- description: The policy that grants an entity permission to assume the role.
Description:
allOf:
- $ref: '#/components/schemas/roleDescriptionType'
- description: A description of the role that you provide.
MaxSessionDuration:
allOf:
- $ref: '#/components/schemas/roleMaxSessionDurationType'
- description: The maximum session duration (in seconds) for the specified role. Anyone who uses the CLI, or API to assume the role can specify the duration using the optional <code>DurationSeconds</code> API parameter or <code>duration-seconds</code> CLI parameter.
PermissionsBoundary:
allOf:
- $ref: '#/components/schemas/AttachedPermissionsBoundary'
- description: <p>The ARN of the policy used to set the permissions boundary for the role.</p> <p>For more information about permissions boundaries, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html">Permissions boundaries for IAM identities </a> in the <i>IAM User Guide</i>.</p>
Tags:
allOf:
- $ref: '#/components/schemas/tagListType'
- description: A list of tags that are attached to the role. For more information about tagging, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html">Tagging IAM resources</a> in the <i>IAM User Guide</i>.
RoleLastUsed:
allOf:
- $ref: '#/components/schemas/RoleLastUsed'
- description: Contains information about the last time that an IAM role was used. This includes the date and time and the Region in which the role was last used. Activity is only reported for the trailing 400 days. This period can be shorter if your Region began supporting these features within the last year. The role might have been used more than 400 days ago. For more information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#access-advisor_tracking-period">Regions where data is tracked</a> in the <i>IAM user Guide</i>.
description: Contains information about an IAM role. This structure is returned as a response element in several API operations that interact with roles.
InstanceProfile:
type: object
required:
- Path
- InstanceProfileName
- InstanceProfileId
- Arn
- CreateDate
- Roles
properties:
Path:
allOf:
- $ref: '#/components/schemas/pathType'
- description: ' The path to the instance profile. For more information about paths, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html">IAM identifiers</a> in the <i>IAM User Guide</i>. '
InstanceProfileName:
allOf:
- $ref: '#/components/schemas/instanceProfileNameType'
- description: The name identifying the instance profile.
InstanceProfileId:
allOf:
- $ref: '#/components/schemas/idType'
- description: ' The stable and unique string identifying the instance profile. For more information about IDs, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html">IAM identifiers</a> in the <i>IAM User Guide</i>. '
Arn:
allOf:
- $ref: '#/components/schemas/arnType'
- description: ' The Amazon Resource Name (ARN) specifying the instance profile. For more information about ARNs and how to use them in policies, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html">IAM identifiers</a> in the <i>IAM User Guide</i>. '
CreateDate:
allOf:
- $ref: '#/components/schemas/dateType'
- description: The date when the instance profile was created.
Roles:
allOf:
- $ref: '#/components/schemas/roleListType'
- description: The role associated with the instance profile.
Tags:
allOf:
- $ref: '#/components/schemas/tagListType'
- description: A list of tags that are attached to the instance profile. For more information about tagging, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html">Tagging IAM resources</a> in the <i>IAM User Guide</i>.
description: <p>Contains information about an instance profile.</p> <p>This data type is used as a response element in the following operations:</p> <ul> <li> <p> <a>CreateInstanceProfile</a> </p> </li> <li> <p> <a>GetInstanceProfile</a> </p> </li> <li> <p> <a>ListInstanceProfiles</a> </p> </li> <li> <p> <a>ListInstanceProfilesForRole</a> </p> </li> </ul>
parameters:
X-Amz-Security-Token:
name: X-Amz-Security-Token
in: header
schema:
type: string
required: false
X-Amz-SignedHeaders:
name: X-Amz-SignedHeaders
in: header
schema:
type: string
required: false
X-Amz-Credential:
name: X-Amz-Credential
in: header
schema:
type: string
required: false
X-Amz-Date:
name: X-Amz-Date
in: header
schema:
type: string
required: false
X-Amz-Algorithm:
name: X-Amz-Algorithm
in: header
schema:
type: string
required: false
X-Amz-Signature:
name: X-Amz-Signature
in: header
schema:
type: string
required: false
X-Amz-Content-Sha256:
name: X-Amz-Content-Sha256
in: header
schema:
type: string
required: false
securitySchemes:
hmac:
type: apiKey
name: Authorization
in: header
description: Amazon Signature authorization v4
x-amazon-apigateway-authtype: awsSigv4
externalDocs:
description: Amazon Web Services documentation
url: https://docs.aws.amazon.com/iam/
x-hasEquivalentPaths: true